language: bash services: docker branches: only: - master # preload images to avoid timeouts in tests before_install: - docker pull mariadb:10 - docker pull postgres:11-alpine install: - git clone https://github.com/docker-library/official-images.git ~/official-images before_script: - env | sort - wget -qO- 'https://github.com/tianon/pgp-happy-eyeballs/raw/master/hack-my-builds.sh' | bash - image="nextcloud:${VERSION}${VARIANT:+-$VARIANT}" - if [[ "$ARCH" == 'i386' ]]; then sed -i -e 's/FROM php/FROM i386\/php/g' "${VERSION}/${VARIANT}/Dockerfile"; fi script: - | ( set -Eeuo pipefail set -x travis_retry docker build -t "$image" "${VERSION}/${VARIANT}" travis_retry ~/official-images/test/run.sh "$image" .travis/test-example-dockerfiles.sh "$image" ) after_script: - docker images jobs: # https://github.com/docker-library/php/issues/822 allow_failures: - env: VERSION=15.0 VARIANT=apache ARCH=i386 - env: VERSION=16.0 VARIANT=apache ARCH=i386 - env: VERSION=17.0 VARIANT=apache ARCH=i386 - env: VERSION=18.0 VARIANT=apache ARCH=i386 - env: VERSION=15.0-rc VARIANT=apache ARCH=i386 - env: VERSION=16.0-rc VARIANT=apache ARCH=i386 - env: VERSION=17.0-rc VARIANT=apache ARCH=i386 - env: VERSION=18.0-rc VARIANT=apache ARCH=i386 - env: VERSION=17.0-beta VARIANT=apache ARCH=i386 - env: VERSION=18.0-beta VARIANT=apache ARCH=i386 include: - &test-scripts stage: test scripts env: SCRIPT=update.sh services: [] install: skip before_script: skip script: - hash_before=$(git write-tree) - travis_retry ./update.sh - bash -c "[[ $hash_before = $(git add -A && git write-tree) ]]" after_script: skip - <<: *test-scripts env: SCRIPT=generate-stackbrew-library.sh install: - wget -O "$HOME/bin/bashbrew" https://doi-janky.infosiftr.net/job/bashbrew/lastSuccessfulBuild/artifact/bin/bashbrew-amd64 - chmod +x "$HOME/bin/bashbrew" script: - travis_retry ./generate-stackbrew-library.sh - stage: test images env: VERSION=16.0-rc VARIANT=fpm-alpine ARCH=amd64 - env: VERSION=16.0-rc VARIANT=fpm-alpine ARCH=i386 - env: VERSION=16.0-rc VARIANT=fpm ARCH=amd64 - env: VERSION=16.0-rc VARIANT=fpm ARCH=i386 - env: VERSION=16.0-rc VARIANT=apache ARCH=amd64 - env: VERSION=16.0-rc VARIANT=apache ARCH=i386 - env: VERSION=17.0-rc VARIANT=fpm-alpine ARCH=amd64 - env: VERSION=17.0-rc VARIANT=fpm-alpine ARCH=i386 - env: VERSION=17.0-rc VARIANT=fpm ARCH=amd64 - env: VERSION=17.0-rc VARIANT=fpm ARCH=i386 - env: VERSION=17.0-rc VARIANT=apache ARCH=amd64 - env: VERSION=17.0-rc VARIANT=apache ARCH=i386 - env: VERSION=18.0-rc VARIANT=fpm-alpine ARCH=amd64 - env: VERSION=18.0-rc VARIANT=fpm-alpine ARCH=i386 - env: VERSION=18.0-rc VARIANT=fpm ARCH=amd64 - env: VERSION=18.0-rc VARIANT=fpm ARCH=i386 - env: VERSION=18.0-rc VARIANT=apache ARCH=amd64 - env: VERSION=18.0-rc VARIANT=apache ARCH=i386 - env: VERSION=16.0 VARIANT=fpm-alpine ARCH=amd64 - env: VERSION=16.0 VARIANT=fpm-alpine ARCH=i386 - env: VERSION=16.0 VARIANT=fpm ARCH=amd64 - env: VERSION=16.0 VARIANT=fpm ARCH=i386 - env: VERSION=16.0 VARIANT=apache ARCH=amd64 - env: VERSION=16.0 VARIANT=apache ARCH=i386 - env: VERSION=17.0 VARIANT=fpm-alpine ARCH=amd64 - env: VERSION=17.0 VARIANT=fpm-alpine ARCH=i386 - env: VERSION=17.0 VARIANT=fpm ARCH=amd64 - env: VERSION=17.0 VARIANT=fpm ARCH=i386 - env: VERSION=17.0 VARIANT=apache ARCH=amd64 - env: VERSION=17.0 VARIANT=apache ARCH=i386 - env: VERSION=18.0 VARIANT=fpm-alpine ARCH=amd64 - env: VERSION=18.0 VARIANT=fpm-alpine ARCH=i386 - env: VERSION=18.0 VARIANT=fpm ARCH=amd64 - env: VERSION=18.0 VARIANT=fpm ARCH=i386 - env: VERSION=18.0 VARIANT=apache ARCH=amd64 - env: VERSION=18.0 VARIANT=apache ARCH=i386