Commit graph

296 commits

Author SHA1 Message Date
55083f2a59
docs: guide for extra-files (#74) 2024-09-25 12:09:27 +02:00
08505a55cd
ci(mirror): fix missing lfs files on push (#73) 2024-09-25 09:35:59 +00:00
1a370c39dc
docs: GitLab tutorial and CI/CD component reference (#72) 2024-09-25 11:23:04 +02:00
2621c48d75
feat(changelog): omit version heading in forge release notes
The forge ui usually shows the release name right above the description,
so this removes an unecessary duplicate bit of information.

In addition this also cleans up the changelog interface a bit and moves
functionality where it belongs. Prepares a bit for custom changelogs in
the future.

Closes #32
2024-09-22 14:00:30 +02:00
renovate[bot]
997b6492de
deps: update dependency golangci/golangci-lint to v1.61.0 (#70)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-21 11:44:03 +00:00
renovate[bot]
937b885696
deps: update module github.com/google/go-github/v63 to v65 (#69)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-21 13:40:15 +02:00
renovate[bot]
4402612538
deps: update actions/configure-pages action to v5 (#68)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-21 13:37:03 +02:00
renovate[bot]
6a2f536650
deps: pin dependencies (#66)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-21 13:35:27 +02:00
renovate[bot]
90685994d7
deps: update module google.golang.org/protobuf to v1.33.0 [security] (#65)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-21 11:33:15 +00:00
7bd752c2f5
chore: setup renovate (#64) 2024-09-21 13:29:26 +02:00
dc1903c4b4
chore(main): release v0.4.0-beta.1 (#56)
Co-authored-by: releaser-pleaser <>
2024-09-15 21:00:06 +02:00
2567293368
fix: multiple extra-files are not evaluated properly (#61)
Quoting issues caused multiple extra-files to be ignored.
2024-09-15 20:59:17 +02:00
7a3d46eac7
ci: update version reference in gitlab ci/cd component (#60) 2024-09-15 18:58:38 +02:00
8d7b1c9580
feat(gitlab): add CI/CD component (#55)
This adds a GitLab CI/CD component that can be `included` in users
GitLab CI configuration to integrate releaser-pleaser.

Unlike the GitHub Action, this can not easily run whenever a merge
request description is changed, only when changes are pushed to main.
2024-09-15 18:54:38 +02:00
61cf12a052
feat: add shell to container image (#59)
Images used in GitLab CI need to have a shell included, otherwise the
job could not be started.

This replaces the default `cgr.dev/chainguard/static` base image with
`cgr.dev/chainguard/busybox`. Busybox is the smallest image that
includes a functional shell.

Needed for #55.
2024-09-15 18:46:45 +02:00
7b49e8ea0c
ci: job name may not contain dot (#58) 2024-09-15 18:43:16 +02:00
da0c07497b
ci: push all changes to gitlab.com mirror (#57)
GitLab only considers repos on the current instance for its CI/CD
catalog. We want to publish a GitLab CI/CD component for #4.
2024-09-15 18:41:32 +02:00
84d4dd9d26
chore(main): release v0.4.0-beta.0 (#50)
Co-authored-by: releaser-pleaser <>
2024-09-15 17:18:24 +02:00
ee83cec049
fix(gitlab): use project path wherever possible (#54)
Turns out that all we need is the path, and not the project id. The path
is way more user friendly, and we can easily get it from a CI variable
or combine it from the namespace & project name.
2024-09-08 21:07:03 +02:00
634eac3b76
fix(parser): invalid handling of empty lines (#53)
GitLab generates commit messages of the pattern "scope: message\n" if no
body is present. This throws up the conventional commits parser we use,
and results in the error message "missing a blank line".

We now `strings.TrimSpace()` the commit message to avoid this problem.
2024-09-08 21:05:18 +02:00
ee5c7aa142
fix(cli): command name in help output (#52) 2024-09-08 21:01:46 +02:00
2fba5414e5
fix(gitlab): hardcoded project id (#51)
The GitLab project ID was still hardcoded to my playground project on
GitLab.com.

This commit instead reads from the predefined GitLab CI/CD variable for
the projects ID (`CI_PROJECT_ID`).
2024-09-08 20:03:19 +02:00
48d9ede0a2
feat: add support for GitLab repositories (#49) 2024-09-07 21:54:25 +02:00
5ea41654a7
fix(parser): continue on unparsable commit message (#48)
We should not fail the whole process if a single commit message is
unparsable.

Instead we now log the issue and ignore the commit.
2024-09-07 21:51:15 +02:00
2010ac1143
refactor(github): add pagination helper (#47) 2024-09-07 21:36:17 +02:00
af505c94c6
refactor: labels as structs with descriptions (#46) 2024-09-07 21:33:28 +02:00
0a199e693f
chore(main): release v0.3.0 (#38)
Co-authored-by: releaser-pleaser <>
2024-09-06 23:46:04 +02:00
b9dd0f986c
feat(cli): show release PR url in log messages (#44)
Makes navigating to the PR way easier when looking at the logs.

This requires a new `Forge.PullRequestURL()` method that needs to be
implemented for all forges.
2024-09-06 23:27:48 +02:00
2effe5e72d
feat: edit commit message after merging through PR (#43)
Closes #5
2024-09-06 23:17:06 +02:00
36a0b90bcd
refactor: releasepr markdown handling (#42) 2024-09-01 14:19:13 +02:00
0750bd6b46
feat: format markdown in changelog entry (#41) 2024-08-31 22:23:01 +02:00
4cb22eae10
refactor: replace markdown renderer (#40)
The new renderer is actually published as a module and can be extended
through the usual goldmark extensions.
2024-08-31 16:49:07 +02:00
a0a064d387
refactor: move things to packages (#39) 2024-08-31 15:23:21 +02:00
44184a77f9 refactor: remove unwanted log 2024-08-30 19:47:12 +02:00
971b6e6ef7
feat: less repetitive entries for for prerelease changelogs (#37)
Right now we always show all new releasable commits since the last
_stable_ release.

If a project publishes multiple pre-releases in a row, they all repeat
the same lines with a few new additions.

On the other hand, when we cut a stable release, we do want to show all
changes since the last stable release, as we can not expect users to
read the changelog of pre-releases.

As a compromise, the code now looks at the type of release that is being
created, and decides based on that if we will look at STABLE..HEAD
(stable release) or LATEST..HEAD (pre-release).

Close #33
2024-08-30 19:44:51 +02:00
693ca21e32
refactor: load existing release pr earlier (#36)
We need information from the release pr for the following steps, as the
user can override various behaviours by commenting/labeling the release
pr.
2024-08-30 19:27:42 +02:00
1f39df03c5
chore(main): release v0.2.0 (#24)
Co-authored-by: releaser-pleaser <>
2024-08-25 23:01:48 +02:00
57a1d80600 docs: add link to github repo 2024-08-25 22:31:39 +02:00
499f127b9e
docs: add all current features (#34) 2024-08-25 22:13:56 +02:00
2567f0ae8b
ci: run on pr updates from main branch (#30)
With `pull_request`, we run in the context of the pull request branch.

- This means we run with the code from the PR branch, possibly breaking
  the current release PR for this repo with in-progress, unreviewed changes.
- This means that the secret is not available on Pull Requests from
  forks.

Switching to `pull_request_target` means we always run in the scope of
the original repository. The secret is available and the code is checked
out from our main branch.

`pull_request_target` has security considerations, but they do not apply
here as we do not check out or run code from the (external, malicious) PR.
2024-08-25 17:16:43 +02:00
2cd73a8679
ci: use current code for releaser-pleaser action (#28)
The previous job always used the last release version of
releaser-pleaser. This caused two issues:

- if new flags were added to `action.yml` since the last release, the
  program errored because the flags are unknown.
- right after merging a release pr, the image reference was already
  updated, but no new container image was built yet.

This fixes both issues, by using a locally built version of
releaser-pleaser, which is always up-to-date and available.
2024-08-25 13:54:21 +02:00
1ede0bef10
feat(cli): add --version flag (#29) 2024-08-25 13:47:55 +02:00
a67b510284
docs: setup mdbook (#27) 2024-08-24 16:23:42 +02:00
3e51dd8495
chore: update version in action.yml (#26) 2024-08-24 15:44:28 +02:00
a841447063
fix(action): invalid quoting for extra-files arg (#25) 2024-08-24 15:39:55 +02:00
0f8d3cca3c
chore(main): release v0.2.0-beta.2 (#22)
Co-authored-by: releaser-pleaser <>
2024-08-24 15:27:27 +02:00
04748a710f
fix(ci): ko pipeline permissions (#23) 2024-08-24 15:26:54 +02:00
e96e5107e5
chore(main): release v0.2.0-beta.1 (#19)
Co-authored-by: releaser-pleaser <>
2024-08-24 15:15:18 +02:00
60b73b6dd9
fix(ci): building release image fails (#21) 2024-08-24 15:14:27 +02:00
9aec0ea7da
chore(main): release v0.2.0-beta.0 (#17) 2024-08-24 15:06:59 +02:00