POC to use Google's release-please github action to create releases.
-
It is highly recommended that you use squash-merges when merging pull requests.
-
release-please requires a GitHub token to access the GitHub API.
You can create your own token with at least Read and Write access to
code
andpull requests
.But you can also use the built-in
Allow GitHub actions to create and approve pull requestsGITHUB_TOKEN
secret and configure your repository to allow GitHub actions to create and approve pull requests. Read this to know how to do it. -
Commits must follow the Conventional Commits convention. You can enforce this by using tools such as commitlint and husky.
But apart from the commits, what is really important is that the pull request title follows the convention. This is because release-please uses the pull request title to determine the release type. You can use this GitHub action to ensure it. You can find an example in this same repository. Take a look at the ./.github/workflows/lint-pull-request.yml file.
-
Follow the steps described in the official documentation of the release-please action.
-
Remember that you can customize the GitHub action by using different configuration parameters.
The most important ones are
token
,release-type
andpackage-name
.
-
By default the PR doesn't include all the suported commit types, only the most important ones such as
feat
orfix
.If you want to customize this, you can use the
changelog-types
input parameter as described here. -
Release Please allows you to represent multiple changes in a single commit using footers, as described here.
With a few additions, the Release Please action can be made to publish to npm when a Release PR is merged, as described here.
You can find an example in this same repository. Take a look at the .github/workflows/release-please.yml file.
-
release please related documentation:
-
GitHub related documentation:
-
Conventional Commits related documentation: