Learn about our RFC process, Open RFC meetings & more.Join in the discussion! »

release-sns

1.0.0 • Public • Published

Build Status Coverage Status semantic-release

release-sns

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:

{
  "version": "v1.0.0",
  "changelog": "The changelog generated by whatever plugin(s) came before release-sns."
}

Installation

  1. Require this package and release-multiple-note-generators.

    yarn add --dev release-sns release-multiple-note-generators

    or

    npm i --save-dev release-sns release-multiple-note-generators

  2. Configure your package.json.

    Ensure your package.json file has the following configuration for the "release" property.

    {
      "release": {
        "generateNotes": {
          "path": "release-multiple-note-generators",
          "plugins": [
            {
              "path": "@semantic-release/release-notes-generator"
            },
            {
              "path": "release-sns",
              "targetArn": "[The ARN associated with your topic or endpoint]",
              "region": "[The region in which your ARN exists]"
            }
          ]
        }
      }
    }

    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 targetArn property is required. If region is not provided, release-sns will default to "us-east-1".

  3. Add AWS authentication environment variables to your CI builds.

    release-sns makes us of the AWS_ACCESS_KEY and AWS_SECRET_KEY environment variables in order to authenticate with AWS. You can create and view access keys by following these directions from Amazon.

Install

npm i release-sns

DownloadsWeekly Downloads

8

Version

1.0.0

License

MIT

Last publish

Collaborators

  • avatar