language: node_js node_js: - 6 - node sudo: false cache: directories: - node_modules install: - npm install - npm update after_script: - | # RELEASE_BRANCHES and NPM_TOKEN defined in Travis settings panel declare exitCode $(npm bin)/travis-after-all exitCode=$? if [[ # Execute after all jobs finish successfully $exitCode = 0 && # Only release on release branches $RELEASE_BRANCHES =~ $TRAVIS_BRANCH && # Don't release on PR builds $TRAVIS_PULL_REQUEST = "false" ]]; then # Authenticate NPM echo "//registry.npmjs.org/:_authToken=\${NPM_TOKEN}" > .npmrc # Set version to timestamp npm --no-git-tag-version version $($(npm bin)/json -f package.json version)-prerelease.$(date +%s) npm publish # Publish to gh-pages as most recent committer git config --global user.email $(git log --pretty=format:"%ae" -n1) git config --global user.name $(git log --pretty=format:"%an" -n1) npm run --silent deploy -- -x -r $GH_PAGES_REPO fi