release-sns is a semantic-release plugin which sends an AWS SNS message to a configured topic when a new version of your package is released. It does not produce nor mutate a release changelog so it is most useful when paired with other generateNotes plugins using the release-multiple-note-generators plugin.
The SNS message
The SNS message published by release-sns will have the following format:
Require this package and release-multiple-note-generators.
yarn add --dev release-sns release-multiple-note-generators
npm i --save-dev release-sns release-multiple-note-generators
Configure your package.json.
Ensure your package.json file has the following configuration for the "release" property.
Here we are using release-multiple-note-generators to specify multiple generateNotes plugins. First we invoke semantic-release's default release-notes-generator plugin which will preserve the release note generation which occurs by default. Then we specify release-sns which receives the changelog from the previous plugin and publishes it in an SNS message. The
targetArnproperty is required. If
regionis not provided, release-sns will default to "us-east-1".
Add AWS authentication environment variables to your CI builds.
release-sns makes us of the
AWS_SECRET_KEYenvironment variables in order to authenticate with AWS. You can create and view access keys by following these directions from Amazon.