# ThirdFlow: Travis Continous Integration # # Testing is only done in a very simplistic manner by running a TiddlyWiki # under Node.js which in turns loads all stuff. If that succeeds, the test # is considered to be good. # # Building runs the --release command on this TiddlyWiki, which then uses # ThirdFlow's automated release mechnism to generate the release files. # # Deploying does three things: # 1. Uploading the release files to the GitHub Pages for this GitHub project. # 2. Publishing the package on NPM. # 3. Drafting a new GitHub release and attaching the release files to it. language: node_js node_js: 'node' # latest stable Node.js release branches: only: - /^\d+\.\d+\.\d+*$/ env: global: - OUTPUT_DIR=editions/release/output - GH_PAGES_DIR=gh-pages - GH_PAGES_OUTPUT_DIR=$GH_PAGES_DIR/output cache: directories: - "node_modules" before_install: # As we only want to update the release files in our GitHub Pages, we # need to get the gh-pages branch first. Later, after updating the release # files, the deployment will check in the complete gh-pages branch again # -- including the updated release files. - git clone --branch gh-pages --single-branch --depth 1 https://github.com/$TRAVIS_REPO_SLUG gh-pages script: - npm test - npm run release # Copy release files to our GitHub Pages for this project. - cp $OUTPUT_DIR/thirdflow.tid $GH_PAGES_OUTPUT_DIR - cp $OUTPUT_DIR/thirdflow.html $GH_PAGES_OUTPUT_DIR deploy: # Uploads new release files to GitHub pages... - provider: pages github-token: secure: QZ/we+b/HK9d2IYGmDgpTbei8QhucbDZaTd4i/5XVFR5KzGuTbGP+gUh/7d2qeoc5emQHYKgSfxVN3/uyRd8rHp5MpCx1rJr+K6RmeuI6378HlM6v/3NK7gCN3OvTmNvKE9m2pNV/9sKAN8zhgamcFhaiWN9gBewENxeQqAhlBMfM+vIlTKhitne5CWUGKsFywOKIJa6O/CInDUTA4/MFBPPRmZgDkSmjCsbfeWcakEWaF3p5m4WO9K7HaseGZJdgj+QMlsJQeE1gTAPT4J5pSLq47jWzFoX/3Qf0aF7ZsHgvzq3nJWvRjeSWQ9SAxFbLqi2BVsQZUKvKbYo4bVyG+JyxuRRGbgps/QngZ5ci6oam25M/oNl0hzRPP7gbQcLGmJXwsbXSAJuS/unuPQUZ4V9nFV/A3S1dBNCoHYYUD/Urhp9xpoGERDRRDN9Nvflok5qETZlFWqxIfmT19Tym2YksPsngYXpp9euL9CGhcksc7PSfYx9Ic2Ezvz8VQENo/S0sAuzsQIhwjXyv+kJVPq7411B+QFke7lNjX9tA7BGgIW5gztME222QUpv5XYHxQCJq0/ax4WcjrQdNCDWbmDZqNZsohil67hyB0o5/UPjoIIh784NpWKoKjKuEZKi6vvIuiaU6Yacmo/55K0tT95NfaUAKS8Q/CdWsB7plQY= skip_cleanup: true keep-history: true on: repo: $TRAVIS_REPO_SLUG tags: true local-dir: $GH_PAGES_DIR # Publish new release on NPM registry - provider: npm email: thediveo@gmx.eu api_key: secure: JZydpRbQXF0+M6GjvX5L5LGKXEaBNfRHh/ggvSjcikIdOdG3EqYjNrDagsts1gDWz16CuTsR3PW3YF0Hkb8SVKBjbQEX2ZtUaaEVz0GGaKAVKxrPSHU+BrnapZfIu58/l+x/BDSKt4r3F4+azYxbDxeruaLsmZa76HsrwKKlGT9TqDbsW/jHsgoza/lCB8tUB7SUOt0JJ6kX5cBCWnm7xNfHVi/1nop6aZjp39VsFneh1Uxjl3dpia1BuQ5+wOZ9aXRiSBtOOeaOxibfzY5BsZwZHmVGHcLO+8WWXF8bpQgpoBATsKlthc7T6uQqnR3DFjFL7nLfd+XB+iUgZ5laIap9z4rxCbCq5YcezvF3Vy0pgOv1NoK0ysjAwFNG5lsQH2bbx92005c1uCaxLiWrLZA1JziDFkF4FL6axV4V4g8Ul6qa7PtOlgR9qsjxbempMRSpQWvIKL+Ib869nLnnPjIUPXaZvQO/Cuk9c7Tpkj4is9GNJC9LdGRkxCTymkfpzR3bm37RXlkXYW7AuyF0f8fFqSJZhRK2u8usvS4IACSw8YDkebE/KQ+l4bBlAhVTTk35V7M1V+XIrik/OSnr9XQ0Q9cqpu0nB22vxpTWRXA1/TLeNSXEZSDb+hRNfvZWYU3bxfaJuomzGlwOyGGClaV6VJzMw4izGL+FM2n/ygY= skip_cleanup: true on: repo: $TRAVIS_REPO_SLUG tags: true # Drafts a new release and attaches the release files... - provider: releases api_key: secure: QZ/we+b/HK9d2IYGmDgpTbei8QhucbDZaTd4i/5XVFR5KzGuTbGP+gUh/7d2qeoc5emQHYKgSfxVN3/uyRd8rHp5MpCx1rJr+K6RmeuI6378HlM6v/3NK7gCN3OvTmNvKE9m2pNV/9sKAN8zhgamcFhaiWN9gBewENxeQqAhlBMfM+vIlTKhitne5CWUGKsFywOKIJa6O/CInDUTA4/MFBPPRmZgDkSmjCsbfeWcakEWaF3p5m4WO9K7HaseGZJdgj+QMlsJQeE1gTAPT4J5pSLq47jWzFoX/3Qf0aF7ZsHgvzq3nJWvRjeSWQ9SAxFbLqi2BVsQZUKvKbYo4bVyG+JyxuRRGbgps/QngZ5ci6oam25M/oNl0hzRPP7gbQcLGmJXwsbXSAJuS/unuPQUZ4V9nFV/A3S1dBNCoHYYUD/Urhp9xpoGERDRRDN9Nvflok5qETZlFWqxIfmT19Tym2YksPsngYXpp9euL9CGhcksc7PSfYx9Ic2Ezvz8VQENo/S0sAuzsQIhwjXyv+kJVPq7411B+QFke7lNjX9tA7BGgIW5gztME222QUpv5XYHxQCJq0/ax4WcjrQdNCDWbmDZqNZsohil67hyB0o5/UPjoIIh784NpWKoKjKuEZKi6vvIuiaU6Yacmo/55K0tT95NfaUAKS8Q/CdWsB7plQY= skip_cleanup: true target_commitish: $TRAVIS_COMMIT tag_name: $TRAVIS_TAG overwrite: true # overwrite existing release files file: - $OUTPUT_DIR/thirdflow.html - $OUTPUT_DIR/thirdflow.tid on: repo: $TRAVIS_REPO_SLUG tags: true name: ThirdFlow plugin release $TRAVIS_TAG body: 'see plugin history tiddler' draft: true