Nextcloud-Docker/.travis.yml

106 lines
3.9 KiB
YAML

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