Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ci(release): get rid of broken semantic-release PR dependency (#577)
The semantic-release plugin "semantic-release-github-pullrequest" allowing the GitHub PR creation is broken (https://github.com/asbiin/semantic-release-github-pullrequest). The following PR need to be merged, but it seems like the repository is no longer actively maintained: asbiin/semantic-release-github-pullrequest#148. The motivation for maintaining a `CHANGELOG` file is well-explained here: asbiin/semantic-release-github-pullrequest#40 (comment). So here comes this change aiming to replace this broken dependency. For that, we rely on the GitHub CLI for creating PRs (https://cli.github.com/manual/gh_pr_create). Since it can be not trivial to clearly understand the `CHANGELOG` file generation, committing and pushing process, here is a summary: 1. The changelog file is generated/updated by the `@semantic-release/changelog` plugin when executing the `semantic-release` CLI. No Git action is performed by the plugin, meaning additional steps are required, hence the followings. 2. Create a branch from the current release one (e.g. "main") and switch on it since it will be used at PR creation time. *NOTE: the `github.ref_name` context value point to the branch against which the workflow has been dispatched. While the "main" branch is considered as a release one, that's not the only one (cf. `branches` option from the `release.config.js` file). This means we must be able ensure that the behavior will work in a generic way (e.g. creating a PR against the "alpha" branch).* 3. Commit the changes made specifically to the `CHANGELOG` file 4. Push the changelog branch to the remote 5. Create a GitHub PR The Git configuration has been adapted in order to state explicitly that the committer is a GitHub bot (i.e. the "[bot]" suffix in the name follow convention + is interpreted by the GitHub UI in the end). The current bot email has been selected so that a beautiful GitHub logo is displayed when checking the author associated to a given commit (e.g. 30dd7ae) and when checking the contributors (https://github.com/Djaytan/mc-jobs-reborn-patch-place-break/graphs/contributors). You can find explanation here: https://github.com/orgs/community/discussions/26560#discussioncomment-3252339.
- Loading branch information