language: node_js
node_js:
- '6'
- '8'
- '9'
- '10'
- '11'
- '12'

env:
  matrix:
  - CXX=g++-4.8
  global:
  - secure: jczVFyYpDneWRFonk5M1eu8nQ6D/Mmc97zq72a+vxyZGOlS5mw0iShJgTJ0gRqmolx3/wSWEEyTJEiDKcXRg/NmpFnSevD+pA3pYQVYxlk7aYrJUGDSF5l/0QsCxhvc7rou61z8biTx2575zzyqokB18KTJeLh7qxGXFe6b/FQQ=
  - secure: XjkMU0jsr20zPanIGr10syio9KMmO1HO6JAAEv7d8sP7y+W20GZZ+fKSvZaTZetdgVxzZcwjeoKGVBSZb/4XDZr9JgtmDAoR8UPsZIzMUv1/+b7VprzBypt36T2bcOfsOEtiRj+Sg+fAzpsBixr/1x4gJSbrOAqtc9/abbz+PRE=
  - secure: j/QpC1XWcZSTqFHpnptJY0X3jPrZsqkqikaSo/eo4brxie/8CFLez1oQ6suvXq0wTozF+ivx3ZCCWeGyN0rfNpsCuD+E0hTSUXLeab1CZNCKOqlMnNcr6Gs4IV5giWbGPVUiL/dvKNje7gEWFTPPjUB0OVZ/1EiKqkvsh58HkSg=

addons:
  apt:
    sources:
    - ubuntu-toolchain-r-test
    packages:
    - g++-4.8

before_install:
- if echo "$TRAVIS_COMMIT_MESSAGE" | grep -F -q "[skip travis]" ; then echo "[skip
  travis] has been found, exiting" && exit 0 ; else echo "[skip travis] has not been
  found, continuing" ; fi
- if test "${TRAVIS_COMMIT_MESSAGE#*'[publish binary]'}" != "$TRAVIS_COMMIT_MESSAGE"; then PUBLISH_BINARY=true; fi;
- export PATH=./node_modules/.bin/:$PATH

install:
- npm install --build-from-source
- npm test

before_script:
- if [[ $PUBLISH_BINARY == true ]]; then node-pre-gyp package publish; fi;
- node-pre-gyp clean

script:
- INSTALL_RESULT=0
- if [[ $PUBLISH_BINARY == true ]]; then INSTALL_RESULT=$(npm install --fallback-to-build=false > /dev/null)$? || true; fi;
- if [[ $INSTALL_RESULT != 0 ]]; then echo "returned $INSTALL_RESULT";node-pre-gyp unpublish;false; fi
- node-pre-gyp clean

after_success:
- node-pre-gyp info

jobs:
  include:
  - stage: npm release
    node_js: '8'
    script: echo "Deploying to NPM"
    deploy:
      provider: npm
      skip_cleanup: true
      email: dainis@tillers.lv
      api_key: "$NPM_API_KEY"
      on:
        repo: dainis/node-gcstats
        branch: master
        condition: ${TRAVIS_COMMIT_MESSAGE#*'[publish npm]'}" != "$TRAVIS_COMMIT_MESSAGE
