Description
Original Spike: #109
After spike investigation, the following tool focused on monorepos wwill be a good fit: https://github.com/changesets/changesets
Motivation
Establish a simple, consistent process for delivering the package to npm, ensuring changes are tracked, versioned, and communicated clearly.
Proposed Implementation
Based on findings: use 2 GH Actions and create release branches to allow us to fix previous releases when required.
Release strategy steps
GHA: Prepare Release
- Triggered manually via
workflow_dispatch.
- Creates a release branch
- Runs
changesets/action without publishing.
- Updates package versions.
- Updates package-level
CHANGELOG.md files.
- Creates a release PR targeting the release branch, i.e. `1.0`
Manual review and merge
- People review the changes and merge the release PR into the release branch
GHA: Publish Release
- Automatically runs only when the release PR is merged into the official release branch.
- Check that the merged PR is a release PR by checking:
- release branch name
- authored by
github-actions[bot] or similar
release-pr or similar on PR title.
- Checks out the release branch
- Runs `pnpm install` and
build:prod together with the tests
- Runs
changeset publish through changesets/action.
- Creates release tags through Changesets.
- Creates GitHub Releases through
changesets/action.
- Publishes npm packages, ideally via npm Trusted Publishing/OIDC similarly to serverlessworkflow/sdk-typescript.
Definition of Done
Description
Original Spike: #109
After spike investigation, the following tool focused on monorepos wwill be a good fit: https://github.com/changesets/changesets
Motivation
Establish a simple, consistent process for delivering the package to npm, ensuring changes are tracked, versioned, and communicated clearly.
Proposed Implementation
Based on findings: use 2 GH Actions and create release branches to allow us to fix previous releases when required.
Release strategy steps
GHA: Prepare Release
workflow_dispatch.changesets/actionwithout publishing.CHANGELOG.mdfiles.Manual review and merge
GHA: Publish Release
github-actions[bot]or similarrelease-pror similar on PR title.build:prodtogether with the testschangeset publishthroughchangesets/action.changesets/action.Definition of Done