base.sh 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. #!/bin/sh
  2. ctr=$(buildah from alpine:latest)
  3. mnt=$(buildah mount "$ctr")
  4. mkdir -p "$mnt/tmp/tcms"
  5. cp Makefile.PL "$mnt/tmp/tcms/"
  6. buildah run -- $ctr sh <<EOF
  7. apk update
  8. apk add perl perl-xml-libxml perl-moose perl-datetime perl-dbi perl-dbd-sqlite perl-capture-tiny perl-date-format
  9. # needed for install
  10. apk add curl make musl-dev perl-dev gcc mlocate perl-app-cpanminus
  11. cpanm -n --no-wget --curl --installdeps /tmp/tcms/
  12. apk del curl make musl-dev perl-dev gcc mlocate perl-app-cpanminus
  13. EOF
  14. rm -rf \
  15. "$mnt/tmp/tcms" \
  16. "$mnt/var/cache" \
  17. "$mnt/root/.cpanm" \
  18. "$mnt/usr/share/man/" \
  19. "$mnt/usr/local/share/man"
  20. find "$mnt/usr/lib/perl5" -name '*.pod' -delete
  21. mkdir -p "$mnt/srv/tcms"
  22. cp -R bin/ config/ data/ www/ lib "$mnt/srv/tcms";
  23. buildah config \
  24. --workingdir "/srv/tcms/" \
  25. --entrypoint '["/usr/local/bin/starman"]' \
  26. --cmd "/srv/tcms/www/server.psgi" \
  27. --port 5000 \
  28. --label "Name=tCMS" \
  29. --author "George Baugh" \
  30. "$ctr"
  31. buildah commit --rm "$ctr" tcms