semantic-release-config
Shareable configurations for semantic-release with CNCSC's conventions for branching strategy and release note generation.
Usage
Install the NPM package in your project:
npm install --save-dev @cncsc/semantic-release-config
Then, in your .releaserc.json
, remove any redundant configuration and replace it with:
{
"extends": "@cncsc/semantic-release-config/base"
}
npm shared configuration
The base
shared configuration can be used for all applications that do not publish their artifact(s) to NPM or GitHub. For
projects that do publish their artifacts to NPM, choose the npm
submodule instead:
{
"extends": "@cncsc/semantic-release-config/npm"
}
assets shared configuration
For projects that do not publish to npm but do publish artifacts with GitHub releases, choose the assets
submodule instead:
{
"extends": "@cncsc/semantic-release-config/assets"
}
When using the assets shared configuration you will need to define what assets you would like published as GitHub release artifacts.
Add a key of "assets"
with an array value into your package.json
.
The array will contain the list of assets. The only required field is
path
. Globbing is not supported with this functionality – a file or directory must exist at the defined path.
"assets": [
{"path": "dist/assets"},
{"path": "dist/asset.min.js", "label": "JS distribution"},
{"path": "dist/asset.js", "label": "JS distribution", "name": "asset.min.js"}
]