Zendesk developed node publisher, a tool for building Node.js packages with one command.
Often when building a package, developers forget one step or another, test the wrong version, or forget to run tests at all. As a result, packs with errors are added to the Node.js repository. It is noted that node-publisher will build packages automatically, without missing a single step. This allows, among other things, correct dependency management.
Site-publisher combines five consecutive steps:
- Preparation: check against the working tree and the current version N.
- Testing: running a code analyzer and tests.
- Build (optional): code verification with Babel.
- Post publication: creating a change log.
node-publisher works with several project elements. In particular, it uses a specific git workflow, checks for the presence of a .nvmrc file, and specifies the script names in package.json. When launched, a .release.yml file is created in the project root folder. In this case, the tool will perform only those steps and commands that are present in the configuration file:
rollback: true prepare: - git diff-index --quiet HEAD -- - git checkout master - git pull --rebase - '[[ -f .nvmrc ]] && ./node_modules/.bin/check-node-version --node $(cat .nvmrc)' - yarn install test: - yarn travis build: - yarn build - git diff --staged --quiet || git commit -am "Update build file" after_publish: - git push --follow-tags origin master:master changelog: - ./node_modules/.bin/offline-github-changelog > CHANGELOG.md - git add CHANGELOG.md - git commit --allow-empty -m "Update changelog" - git push origin master:master