feat: Add changelogger
What does this MR do?
Attempt at integrating https://docs.gitlab.com/ee/api/repositories.html#add-changelog-data-to-a-changelog-file
Unfortunately, this isn't super easy to test... you can see with this job that the changelog gets pulled in DRYRUN mode but the entries will be blank unless the branch is correct. Once on master it should find any diff between latest tags to generate an entry.
This also limits git upsert tag
to only run if CHANGELOG.md
has been modified which should prevent unnecessary releases.
Proposed workflow:
- Open MRs with descriptive changelog trailers
- Note that the semver type is determined by changelog entry; i.e.
added
=> minor - Merge without changing
CHANGELOG.md
- CI will diff HEAD and latest tag to generate
-
git upsert tag
will release a tag becauseCHANGELOG.md
was modified
What are the relevant issue numbers?
Does this MR meet the acceptance criteria?
-
Changelog entry added -
Documentation created/updated for GitLab EE, if necessary -
Documentation created/updated for this project, if necessary -
Documentation reviewed by technical writer or follow-up review issue created -
Tests updated/added for this feature/bug -
Job definition updated, if necessary -
Conforms to the code review guidelines -
Conforms to the Go guidelines -
Security reports checked/validated by reviewer