language: go required: sudo go: - '1.13' services: - docker - ntp - xvfb addons: chrome: stable apt: sources: - google-chrome packages: - libgif-dev - google-chrome-stable install: # Install ChromeDriver (64bits; replace 64 with 32 for 32bits). - wget -N https://chromedriver.storage.googleapis.com/78.0.3904.70/chromedriver_linux64.zip -P ~/ - unzip ~/chromedriver_linux64.zip -d ~/ - rm ~/chromedriver_linux64.zip - sudo mv -f ~/chromedriver /usr/local/share/ - sudo chmod +x /usr/local/share/chromedriver - sudo ln -s /usr/local/share/chromedriver /usr/bin/chromedriver before_script: - export PATH=./cmd/authelia-scripts/:/tmp:$PATH - curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash - nvm install v11 && nvm use v11 && npm i - source bootstrap.sh jobs: include: - stage: test script: - authelia-scripts --log-level debug ci - &build-images stage: build images env: - ARCH=amd64 install: skip script: - while sleep 9m; do echo '===== Prevent build from terminating ====='; done & - authelia-scripts docker build --arch=$ARCH - kill %1 after_success: - authelia-scripts docker push-image --arch=$ARCH - if [[ $TRAVIS_TAG ]]; then docker create --name authelia-binary clems4ever/authelia:$TRAVIS_TAG-$ARCH && docker cp authelia-binary:/usr/app/authelia ./authelia-linux-$ARCH && docker cp authelia-binary:/usr/app/public_html ./ && tar -czf authelia-linux-$ARCH.tar.gz authelia-linux-$ARCH public_html; fi before_deploy: - echo Deploying Authelia $TRAVIS_TAG-$ARCH to GitHub Releases deploy: provider: releases api_key: '$GITHUB_API_KEY' file_glob: true file: 'authelia-linux-$ARCH.tar.gz' skip_cleanup: true on: tags: true - <<: *build-images env: - ARCH=arm32v7 - <<: *build-images env: - ARCH=arm64v8 - stage: deploy manifests env: - DOCKER_CLI_EXPERIMENTAL=enabled install: skip script: - authelia-scripts docker push-manifest notifications: email: recipients: - clement.michaud34@gmail.com on_success: change on_failure: always