@sovtech/semantic-release-config
SovTech's shareable semantic-release configuration
Plugins
This shareable configuration uses the following plugins:
@semantic-release/commit-analyzer
@semantic-release/release-notes-generator
@semantic-release/npm
@semantic-release/git
semantic-release-slack-bot
Summary
- Provides an informative git commit message for the release commit that does not trigger continuous integration and conforms to the conventional commits specification (e.g., "chore(release): 1.2.3 [skip ci]\n\nnotes").
- Commits the version change in
package.json
. - Creates or updates a changelog file.
- Posts updates from above changelog to a slack channel.
Install
With Yarn
$ yarn add -D semantic-release @sovtech/semantic-release-config
With NPM
$ npm install --save-dev semantic-release @sovtech/semantic-release-config
Usage
The shareable config can be configured in the semantic-release configuration file:
Via release
key in the project's package.json
file:
{
"release": {
"extends": "@sovtech/semantic-release-config"
}
}
Via .releaserc
file:
{
"extends": "@sovtech/semantic-release-config"
}
Configuration
Setup the Semantic Release slackbot integration on your Slack's workspace. Setup Guide
Ensure that your CI configuration has the following secret environment variables set:
-
SLACK_WEBHOOK
: Slack webhook created when adding app to workspace. -
SEMANTIC_RELEASE_PACKAGE
: Override or add package name instead of npm package name.
See each plugins documentation for required installation and configuration steps.