This pattern shows how to integrate semantic-release into your project to automate the entire package release workflow of determining the next version number, generating release notes, and publishing the package to AWS CodeArtifact.
In this example, we will be using GitHub with semantic-release to automate the release workflow of an npm package.
- An active AWS account.
- An AWS CodeArtifact repository.
- A GitHub repository.
- Node.js v14.x or later on developer machines.
- The semantic-release-coderatifact plugin currently only supports npm at the time of writing.
The diagram shows the following workflow:
-
Developers commit changes to the GitHub repository following a standardized commit message format (enforced by commitizen).
-
The GitHub Action release workflow assumes the IAM role for publishing to CodeArtifact.
-
The npm package is published to the CodeArtifact repository.
- AWS CodeArtifact - Fully managed artifact repository service.
- GitHub Actions - Runs release workflow.
- semantic-release - Used to automate the package release workflow.
- semantic-release-codeartifact - Plugin for AWS CodeArtifact.
- commitizen - Command line utility to help standardize commit messages.
- husky - Adds git hooks we use for automatically running commitizen on commit.
See CONTRIBUTING for more information.
This library is licensed under the MIT-0 License. See the LICENSE file.