Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
CI/CD: Integrate with Travis CI & semantic-release (#12)
* Initial configuration of Travis CI It's time to get with the program and start using CI processes with this project. It would have helped avoid some silly mistakes that I have made thus far in regards to believing I'm ready to publish our project/package. This commit provides the initial configuration for the Travis CI integration/hook. Note that Travis CI has already been enabled for this repo. I'm sure moving forward we will evolve our Travis CI configuration/process. new file: .travis.yml * Build before we run tests in the 'prepublish' script Per NPM docs the 'prepublish' script is ran after a local install. See: https://docs.npmjs.com/misc/scripts. We modify our 'prepublish' script to build before we run tests. Prior, if someone cloned our repo, would fail the linting part of our tests as imports from 'dist' made by our demo wouldn't resolve as the 'dist' folder wouldn't have been built yet. Note that the 'prepublish' script will still fail after someone cloned our repo if they don't have a Google API key set as an environment variable. But our CI does! :) We also have changed the CI build lifecycle to not run the 'prepublish' script during dependency install. This ought to help reduce the build time by not duplicating script runs during different parts of the CI build lifecycle. modified: .travis.yml modified: package.json * Add Travis CI build badge to README.md Because badges! w00t! My first badge. :) modified: README.md * Use latest Node 8 release with Travis CI build Previously I used the latest Node 6 release with the Travis CI build as this was what I had running locally. I realized that what we would deploy would run on the latest Node so I upgrade locally to the latest Node which is 8. Also 8 is the most recent Node version to be under LTS. As a result I've now changed the Travis CI build to use Node 8 as well to match what we will deploy under and what we ought to be using locally for development. modified: .travis.yml * Build: Setup CI/CD to automate package publishing with semantic-release This commit sets up our CI/CD pipeline to automate our package publishing with the `semantic-release` package. We have configured `semantic-release` to use the ESLint rules for writing commit messages as they seem simpler than the default Angular rules. Docs for writing ESLint commit messages can be found here: https://eslint.org/docs/developer-guide/contributing/pull-requests#step-2-make-your-changes modified: .travis.yml modified: package.json modified: yarn.lock
- Loading branch information