run.sh 1011 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #!/bin/bash
  2. set -eo pipefail
  3. dir="$(dirname "$(readlink -f "$BASH_SOURCE")")"
  4. image="$1"
  5. PLONE_TEST_SLEEP=3
  6. PLONE_TEST_TRIES=5
  7. cname="plone-container-$RANDOM-$RANDOM"
  8. cid="$(docker run -d --name "$cname" "$image")"
  9. trap "docker rm -vf $cid > /dev/null" EXIT
  10. get() {
  11. docker run --rm -i \
  12. --link "$cname":plone \
  13. --entrypoint python \
  14. "$image" \
  15. -c "import urllib2; con = urllib2.urlopen('$1'); print con.read()"
  16. }
  17. get_auth() {
  18. docker run --rm -i \
  19. --link "$cname":plone \
  20. --entrypoint python \
  21. "$image" \
  22. -c "import urllib2; request = urllib2.Request('$1'); request.add_header('Authorization', 'Basic $2'); print urllib2.urlopen(request).read()"
  23. }
  24. . "$dir/../../retry.sh" --tries "$PLONE_TEST_TRIES" --sleep "$PLONE_TEST_SLEEP" get "http://plone:8080"
  25. # Plone is up and running
  26. [[ "$(get 'http://plone:8080')" == *"Plone is up and running"* ]]
  27. # Create a Plone site
  28. [[ "$(get_auth 'http://plone:8080/@@plone-addsite' "$(echo -n 'admin:admin' | base64)")" == *"Create a Plone site"* ]]