language: node_js
node_js:
- '4.2'
- 'stable'
cache:
  directories:
  - node_modules
env:
  global:
  - BASE_PATH=/scratch-gui/
before_install:
- rm -rf node_modules/scratch-*
after_script:
- |
  # RELEASE_BRANCHES and NPM_TOKEN defined in Travis settings panel
  if [[
    # For now only release on the Node 4 environment
    $TRAVIS_NODE_VERSION = "4.2" &&
    # Only release on release branches
    $RELEASE_BRANCHES =~ $TRAVIS_BRANCH &&
    # Don't release on PR builds
    $TRAVIS_PULL_REQUEST = "false"
  ]]; then
    # Publish to gh-pages as most recent committer
    git config --global user.email $(git log --pretty=format:"%ce" -n1)
    git config --global user.name $(git log --pretty=format:"%cn" -n1)
    ./node_modules/.bin/gh-pages -x -r https://${GH_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git -d build -m "Build for $(git log --pretty=format:%H)"
  fi