language: cpp
sudo: required
dist: trusty

notifications:
  webhooks:
    urls:
    - https://scalar.vector.im/api/neb/services/hooks/dHJhdmlzLWNpLyU0MHJlZF9za3klM0FuaGVrby5pbS8lMjFVYkNtSWxHVEhOSWdJUlpjcHQlM0FuaGVrby5pbQ
    on_success: always
    on_failure: always
    on_start: never
  email: false

matrix:
    include:
        - os: osx
          compiler: clang
          osx_image: xcode9.2
          env:
              - DEPLOYMENT=1
              - USE_BUNDLED_BOOST=0
              - USE_BUNDLED_CMARK=0
              - USE_BUNDLED_JSON=0
              - MTX_STATIC=1
        - os: linux
          compiler: gcc
          env:
              - CXX_COMPILER=g++-5
              - C_COMPILER=gcc-5
              - QT_VERSION="-5.10.1"
              - QT_PKG=510
              - DEPLOYMENT=1
              - USE_BUNDLED_BOOST=1
              - USE_BUNDLED_CMARK=1
              - USE_BUNDLED_JSON=1
          addons:
              apt:
                  sources: ["ubuntu-toolchain-r-test"]
                  packages: ["g++-5", "ninja-build"]
        - os: linux
          compiler: gcc
          env:
              - CXX_COMPILER=g++-8
              - C_COMPILER=gcc-8
              - QT_VERSION=58
              - QT_PKG=58
              - USE_BUNDLED_BOOST=1
              - USE_BUNDLED_CMARK=1
              - USE_BUNDLED_JSON=1
          addons:
              apt:
                  sources: ["ubuntu-toolchain-r-test"]
                  packages: ["g++-8", "ninja-build"]
        - os: linux
          compiler: clang
          env:
              - CXX_COMPILER=clang++-5.0
              - C_COMPILER=clang-5.0
              - QT_VERSION=592
              - QT_PKG=59
              - USE_BUNDLED_BOOST=1
              - USE_BUNDLED_CMARK=1
              - USE_BUNDLED_JSON=1
          addons:
              apt:
                  sources: ["ubuntu-toolchain-r-test", "llvm-toolchain-trusty-5.0"]
                  packages: ["clang-5.0", "g++-7", "ninja-build"]

before_install:
    - export CXX=${CXX_COMPILER}
    - export CC=${C_COMPILER}
    # Use TRAVIS_TAG if defined, or the short commit SHA otherwise
    - export VERSION=${TRAVIS_TAG:-$(git rev-parse --short HEAD)}
install:
    - ./.ci/install.sh
    - export PATH=/usr/local/bin:${PATH}

script:
    - ./.ci/script.sh
    - sed -i -e "s/VERSION_NAME_VALUE/${VERSION}/g" ./.ci/bintray-release.json || true
    - cp ./.ci/bintray-release.json .
deploy:
- provider: s3
  access_key_id: $ARTIFACTS_KEY
  secret_access_key: $ARTIFACTS_SECRET
  bucket: $ARTIFACTS_BUCKET
  region: $AWS_DEFAULT_REGION
  detect_encoding: true
  cache_control: "max-age=31536000"
  skip_cleanup: true
  acl: public_read
  local_dir: artifacts
  on:
    condition: "$DEPLOYMENT == 1"
    repo: Nheko-Reborn/nheko
    tags: false
    all_branches: true
- provider: bintray
  user: "redsky17"
  key:
    secure: "2C+ESOClZdNCDzfUfE8Rcdn9+BM3/5x1lebGS0qRxICMAuylx50C8RAxlqKIFNI1J+IMnj5xhK+1oWsLg6wUdo8B3JocvM6P1NbC/WwfY5UJVwtSmzcqvEC+IjM90Bng8OoM5f6ED3IAUyYPBgo8J14+2l5Oruvr99t0mrpniLXDf66TJrI9u/+05JYa2pm0EWlQkDVaziI+96zAt1pMIX9Z/ToTmUbq2OAlHaN8H4hR5aBRmYuF11FQVyARK64eqRsBV4RXKJ9DjW7BR+pQV008hQUoXrCxK8xIf/Qph9h1fz63961NJxfru62LeuZ4Z8MUcV9L+p0HYZzkhNdn5Z3QFf3SXbrVCYs6LK6+uKHpmYS7vB5XwjDx9SWc2szsd5OVKJg3YEdBcC4KUSL3VEbBHDSQ3GFsVKoBsZvopwHkyCmPotY47HtEiPBLdEcsOvcVyeU5Gfq9EOp9dB+nJbNrujBgav1l13CorkBG2rgD+NRivV1otclXnPsIj85ySrc6xk0VDN3zogLAdLw0f+fNOaK17N8GmhPbCu/iX2Vjem/fdjh4NPC4pSNDei2MoWUfqGBmoTxuQEsZeywigwV2c51W9RZuwo8X810N3ehVcBmmNyLjbKmYT+8Kp+dJbaf/ErFnvdZl06mX2bgyxFakv5iQY3dwX4WYHvl77c4="
  skip_cleanup: true
  overwrite: true
  file: bintray-release.json
  on:
    condition: "$DEPLOYMENT == 1"
    repo: Nheko-Reborn/nheko
    tags: false
    all_branches: true
    deploy: 
- skip_cleanup: true
  overwrite: true
  provider: releases
  api_key:
    secure: "rDFG4DIwIG+A9R8seQ3SIXfWOWhJgJHlNQHtAsnfRrPOSIpI7kMebHLDO5sBPNaJ+9MH9acVTJZOabVLf0DdPqRsDUw/PN28aiiqbaH9+zAGOTxahaQ222Gz/ROf/iXvDoTDUnUzURqQUA0YlHy89Z1CnO7TKwlsYhA5A8n0biG7d8i7vQayvwYXfxlk7CouK+Y86ana4r54j1emGRg97p7BOhORibg54ZD520hN0Iif7EJM2hQDTWKZzTDdBt3mF1kBr7cBbuBHWuvE+eIFO3F3yi+u7ggHzw5FaAv245N4fhkpYUl/mSbhLrQG2NOnkglFCpQ2lLd6mWdXHwUNrxN/j+UPewmLg7CymY25zkiL43deDsT8KmpzYalmdaevCqEaX2VehuBzblmH4Re8wnXqBrab14fq0TNDfPqC+NKxy75mdxszbKBC55nTlTB+hsox43dvfvyXDSON4qAzwe9Q/tfp8mL2mehcM868vhw5cbNIskKT8SrhMwmA+sxoqnqLsmAjNVJVTgg6ppbMhjNMOBTndblRHfH6bxsgpTXPtnzC17o9Mw1WgF63eOWNYBEj2wW5ZvWX95Gvg5YzvsF178ipHZDqZfA62ShB3b89fcqN5SOxBsE8UYoHjQIHxQdWeKv23iFwmT8fWAOD8sKDcRyz0WCgidZ1/RjLqsU="
  file_glob: true
  file:
  - nheko-${VERSION}-x86_64.AppImage
  on:
    condition: "$TRAVIS_OS_NAME == linux && $DEPLOYMENT == 1"
    repo: Nheko-Reborn/nheko
    tags: true
- skip_cleanup: true
  overwrite: true
  provider: releases
  api_key:
    secure: "rDFG4DIwIG+A9R8seQ3SIXfWOWhJgJHlNQHtAsnfRrPOSIpI7kMebHLDO5sBPNaJ+9MH9acVTJZOabVLf0DdPqRsDUw/PN28aiiqbaH9+zAGOTxahaQ222Gz/ROf/iXvDoTDUnUzURqQUA0YlHy89Z1CnO7TKwlsYhA5A8n0biG7d8i7vQayvwYXfxlk7CouK+Y86ana4r54j1emGRg97p7BOhORibg54ZD520hN0Iif7EJM2hQDTWKZzTDdBt3mF1kBr7cBbuBHWuvE+eIFO3F3yi+u7ggHzw5FaAv245N4fhkpYUl/mSbhLrQG2NOnkglFCpQ2lLd6mWdXHwUNrxN/j+UPewmLg7CymY25zkiL43deDsT8KmpzYalmdaevCqEaX2VehuBzblmH4Re8wnXqBrab14fq0TNDfPqC+NKxy75mdxszbKBC55nTlTB+hsox43dvfvyXDSON4qAzwe9Q/tfp8mL2mehcM868vhw5cbNIskKT8SrhMwmA+sxoqnqLsmAjNVJVTgg6ppbMhjNMOBTndblRHfH6bxsgpTXPtnzC17o9Mw1WgF63eOWNYBEj2wW5ZvWX95Gvg5YzvsF178ipHZDqZfA62ShB3b89fcqN5SOxBsE8UYoHjQIHxQdWeKv23iFwmT8fWAOD8sKDcRyz0WCgidZ1/RjLqsU="
  file: nheko-${VERSION}.dmg
  on:
    condition: "$TRAVIS_OS_NAME == osx && $DEPLOYMENT == 1"
    repo: Nheko-Reborn/nheko
    tags: true
