sudo: false # Only care about running tests against latest node language: node_js node_js: - node # Keep node_modules around, it speeds up builds & they don't change often cache: directories: - node_modules # Custom install step so the travis-only stuff doesn't need to be in package.json install: - npm install - npm install @alrra/travis-scripts@^3.0.1 gh-pages@^0.12.0 # Bundle before running tests so the bundle is always up-to-date before_script: npm run build # This is the default, but leaving so it is obvious # script: npm test # After a successful build commit changes back to repo after_success: - | # Set up SSH environment $(npm bin)/set-up-ssh \ --key "$encrypted_8b86e0359d64_key" \ --iv "$encrypted_8b86e0359d64_iv" \ --path-encrypted-key "./.deploy.enc" # Commit bundle changes generated in before_script step # --commands is a weird no-op but required for commit-changes to run # --branch arg is to ensure this only runs against the `next` branch $(npm bin)/commit-changes \ --commands "echo committing" \ --commit-message "Bundled output for commit $TRAVIS_COMMIT [skip ci]" \ --branch "next" # Only want to commit docs when building pushes on master & # this doesn't have the built-in branch protection like commit-changes if [ "$TRAVIS_EVENT_TYPE" == "push" ] && \ [ "$TRAVIS_BRANCH" == "master" ] && \ [ "$TRAVIS_REPO_SLUG" == "lhorie/mithril.js" ] then # Generate docs $(npm-bin) run gendocs # Commit docs to gh-pages branch # Using --add to ensure that archived versions aren't lost # Using --repo to force it to go over SSH so the saved keys are used (tschaub/gh-pages#160) $(npm bin)/gh-pages --dist ./dist --add --repo "git@github.com:lhorie/mithril.js.git" else echo "Not submitting documentation updates" fi # Environment configuration env: global: # Set up GH_USER_EMAIL & GH_USER_NAME env variables used by travis-scripts package - secure: Xvqvm3+PvJu/rs3jl/NNn0RWLkkLkIoPHiL0GCfVRaywgjCYVN02g54NVvIDaOfybqPmu9E6PJFVs92vhF34NMFQHf4EWskynusIGV271R2BV0i+OJBfLMuLgiwm6zRn7/Zw4JvWIUGEwcnlz0qxbqdHsS0SOR3fIkFzePickW0= - secure: Rf/ldEO9d4vItJhe6EmqWpFAyCARzoCb422nHnjr1hYJknnwIXpgyZ1C/7On/9o7rWPPf+8WcHC/rgjK2rthKCldzdG5I60LfWSNzap9lk3Aa4TpSCoDBuEp7JVvDr5tc3rKnBXVT71hOay7RSx1StWzXiJs9mjaeVMJzYzRT78= # Deploy to npm and github pages on tagged commits that successfully build deploy: - provider: releases api_key: secure: PauFuz+pn7oRpHn2JTl4k3+iWjOofyBYBvavPQVNdXgKws9mGj0i2n5k2oIDU09VD7NeyEkwP6tdLCUFNaR8uwTJH/TBXMZE95oxUEaliFreA0nOiI3WkG4NCW0GwUoIIn1yL14y6+9oEBinWUia8DIn9kZNS11DNDgQpIPnoQQ= file: - "mithril.js" - "mithril.min.js" skip_cleanup: true on: tags: true repo: lhorie/mithril.js branch: master - provider: npm skip_cleanup: true email: npm@patcavit.com api_key: secure: ADElvD1oxn9GfEG7dDOggX96b36A/cGEybovAc0221CCKzv5kWCavMrtxneiJYI6N/n24abSlbM90vMfU84FEzH0Ev28dGVokRP4ad6VRkISszKlYVEP8Lds4QxfKh78jZlUxmxM0B3vmQ1kYJbTBqp3ICtaJ5ptEQHWhrLtxnc= on: tags: true repo: lhorie/mithril.js branch: master