run.sh 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. #!/bin/bash
  2. set -eo pipefail
  3. dir="$(dirname "$(readlink -f "$BASH_SOURCE")")"
  4. postgresImage='postgres:11-alpine'
  5. serverImage="$1"
  6. dbPass="test-$RANDOM-password-$RANDOM-$$"
  7. dbName="test-$RANDOM-db"
  8. dbUsr="test-$RANDOM-db"
  9. # Create an instance of the container-under-test
  10. # Static username due https://github.com/nextcloud/docker/issues/345
  11. postgresCid="$(docker run -d \
  12. -e POSTGRES_USER="oc_postgres" \
  13. -e POSTGRES_PASSWORD="$dbPass" \
  14. -e POSTGRES_DB="$dbName" \
  15. "$postgresImage")"
  16. trap "docker rm -vf $postgresCid > /dev/null" EXIT
  17. cid="$(docker run -d --link "$postgresCid":postgres \
  18. -e POSTGRES_HOST="postgres" \
  19. -e POSTGRES_USER="oc_postgres" \
  20. -e POSTGRES_PASSWORD="$dbPass" \
  21. -e POSTGRES_DB="$dbName" \
  22. -e NEXTCLOUD_ADMIN_USER="postgres" \
  23. -e NEXTCLOUD_ADMIN_PASSWORD="test-$RANDOM-password" \
  24. "$serverImage")"
  25. trap "docker rm -vf $cid $postgresCid > /dev/null" EXIT
  26. _occ() {
  27. docker exec -u www-data $cid php occ $1
  28. }
  29. # Give some time to install
  30. . "$dir/../../retry.sh" --tries 30 '_occ app:list' > /dev/null
  31. # Check if NextCloud is installed
  32. _occ status | grep -iq "installed: true"
  33. _occ check