dist: trusty
sudo: required

services: docker

language: bash

install:
  - git clone https://github.com/docker-library/official-images.git ~/official-images

before_script:
  - env | sort
  - image="nextcloud:${VERSION}${VARIANT:+-$VARIANT}"
  - if [[ "$ARCH" == 'i386' ]]; then sed -i -e 's/FROM php/FROM i386\/php/g' "${VERSION}/${VARIANT}/Dockerfile"; fi

script:
  - travis_retry docker build -t "$image" "${VERSION}/${VARIANT}"
  - ~/official-images/test/run.sh "$image"

after_script:
  - docker images

jobs:
  include:
    - &test-scripts
      stage: test scripts
      env: SCRIPT=update.sh
      sudo: false
      services: []
      install: skip
      before_script: skip
      script:
        - hash_before=$(git write-tree)
        - ./update.sh
        - bash -c "[[ $hash_before = $(git add -A && git write-tree) ]]"
      after_script: skip

    - <<: *test-scripts
      env: SCRIPT=generate-stackbrew-library.sh
      script: 
        - ./generate-stackbrew-library.sh

    - stage: test images
      env: VERSION=10.0 VARIANT=fpm ARCH=amd64
    - env: VERSION=10.0 VARIANT=fpm ARCH=i386
    - env: VERSION=10.0 VARIANT=apache ARCH=amd64
    - env: VERSION=10.0 VARIANT=apache ARCH=i386
    - env: VERSION=11.0 VARIANT=fpm ARCH=amd64
    - env: VERSION=11.0 VARIANT=fpm ARCH=i386
    - env: VERSION=11.0 VARIANT=apache ARCH=amd64
    - env: VERSION=11.0 VARIANT=apache ARCH=i386
    - env: VERSION=12.0 VARIANT=fpm ARCH=amd64
    - env: VERSION=12.0 VARIANT=fpm ARCH=i386
    - env: VERSION=12.0 VARIANT=apache ARCH=amd64
    - env: VERSION=12.0 VARIANT=apache ARCH=i386