Tone.js/.travis.yml
Yotam Mann 8f757a9ab2 adding build conditions
moving scripts into travis
2018-05-19 10:53:34 -04:00

94 lines
2.3 KiB
YAML

sudo: false
dist: trusty
language: node_js
node_js:
- '9'
install:
- npm i -g npm@latest
- npm ci
- git config --global user.email "travis@travis-ci.org"
- git config --global user.name "Travis CI"
script: npm run test:travis
after_success:
- npm run coveralls
before_deploy:
- cd gulp
- npm install -g jsdoc
# commit the build
- sh push_build.sh
# update the site
- sh update_site.sh
- node increment_version.js
- cd ../
jobs:
include:
- stage: test
env : BROWSER=chrome
os: linux
addons:
chrome: stable
# - stage: test
# env : BROWSER=chrome
# os: linux
# addons:
# chrome: beta
# - stage: test
# env : BROWSER=firefox
# os: linux
# addons:
# firefox: latest
# - stage: test
# env : BROWSER=firefox
# os: linux
# addons:
- stage: test
before_script:
# needs an audio output device to run
- HOMEBREW_NO_AUTO_UPDATE=1 brew install Caskroom/cask/soundflower
env : BROWSER=safari
os: osx
# - stage: test
# before_script:
# # needs an audio output device to run
# - HOMEBREW_NO_AUTO_UPDATE=1 brew install Caskroom/cask/soundflower
# env : BROWSER=safari
# os: osx
# # test on an older safari
# osx_image: xcode6.4
- stage: deploy
os: linux
script: npm run build
deploy:
- provider: npm
skip_cleanup: true
email: yotammann@gmail.com
api_key: $NPM_TOKEN
tag: next
on:
repo: Tonejs/Tone.js
branch: dev
# don't publish on cron or PRs
condition: $TRAVIS_EVENT_TYPE != cron && $TRAVIS_EVENT_TYPE != pull_request
# publish without @next when pushing on master
- provider: npm
skip_cleanup: true
email: yotammann@gmail.com
api_key: $NPM_TOKEN
on:
repo: Tonejs/Tone.js
branch: master
# don't publish on cron or PRs
condition: $TRAVIS_EVENT_TYPE != cron && $TRAVIS_EVENT_TYPE != pull_request
# publish build files for releases
- provider: releases
api-key: $GH_TOKEN
file_glob: true
file: build/*
skip_cleanup: true
on:
tags: true
# cache node_modules to speed up build
cache:
directories:
- node_modules
- $HOME/Library/Caches/Homebrew