# For deploy to work, you must https://travis-ci.org/$USER/verible/settings and
# add the following environment values;
# OCTOKIT_ACCESS_TOKEN - Personal access token from https://github.com/settings/tokens
# OCTOKIT_LOGIN - Your Github username
# OCTOKIT_PASSWORD - Same as OCTOKIT_ACCESS_TOKEN above

os: linux
dist: xenial
language: cpp

# Don't build auto-generated tags
if: NOT tag =~ /v[0-9.]*-.*/

services:
  - docker

addons:
  apt:
    sources:
    - ubuntu-toolchain-r-test
    packages:
    - g++-9
    - gcc-9
    - pandoc
    - python-gflags

git:
  depth: false

jobs:
  include:
   - stage: Check
     name: "Compile & Test"
     env:
      - MODE=compile-n-test
     deploy:
      - provider: pages
        cleanup: true
        keep_history: true
        strategy: git
        token: $OCTOKIT_ACCESS_TOKEN
        local_dir: /tmp/pages
        on:
          branch: master

   # Build and release binaries
   - stage: Deploy
     name: "Ubuntu Trusty (14.04 LTS)"
     env:
      - MODE=bin OS=ubuntu OS_VERSION=trusty
   - name: "Ubuntu Xenial (16.04 LTS)"
     env:
      - MODE=bin OS=ubuntu OS_VERSION=xenial
   - name: "Ubuntu Bionic (18.04 LTS)"
     env:
      - MODE=bin OS=ubuntu OS_VERSION=bionic
   - name: "Ubuntu Eoan (19.10 latest)"
     env:
      - MODE=bin OS=ubuntu OS_VERSION=eoan
   - name: "Ubuntu Focal (20.04 LTS)"
     env:
      - MODE=bin OS=ubuntu OS_VERSION=focal
   - name: "Centos 6"
     env:
      - MODE=bin OS=centos OS_VERSION=6
   - name: "Centos 7"
     env:
      - MODE=bin OS=centos OS_VERSION=7
   - name: "Centos 8"
     env:
      - MODE=bin OS=centos OS_VERSION=8

before_install:
  - ./.github/travis/install.sh

script:
  - ./.github/travis/script.sh

after_success:
  - ./.github/travis/success.sh

deploy:
 - provider: releases
   file_glob: true
   username: $OCTOKIT_LOGIN
   password: $OCTOKIT_PASSWORD
   file:
    - /tmp/releases/verible-*.tar.gz
   overwrite: true
   cleanup: true
   on:
     condition: $MODE = "bin"
