Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a Prepare Release GitHub Actions workflow #1506

Merged
merged 1 commit into from
Nov 6, 2023

Conversation

edmorley
Copy link
Member

@edmorley edmorley commented Nov 6, 2023

Add a GitHub Actions workflow for preparing a new buildpack release, similar to that used for CNBs and libcnb.rs releases:
https://github.com/heroku/languages-github-actions/blob/main/.github/workflows/_buildpacks-prepare-release.yml
https://github.com/heroku/libcnb.rs/blob/main/.github/workflows/prepare-release.yml

The changelog format has been updated in this PR to more closely match the https://keepachangelog.com format (which allows reusing the regexes from our other automation), however, to reduce churn I've not adopted the change categories headings for now.

For now this is not being implemented as a shared workflow, since the classic buildpacks (unlike the CNBs):

  • do not have standardised changelog formats
  • have differing approaches to versioning (some have the changelog version match the buildpack registry version, others do not)
  • in some cases (eg Ruby) require additional edits for releases beyond just the changelog (such as updating version constants elsewhere in the codebase).

As such, it makes more sense to get something working for one buildpack first, and if there is interest about adding this to other classic buildpacks, we can discuss how we might standardise/implement generic automation.

GUS-W-14437037.

@edmorley edmorley self-assigned this Nov 6, 2023
@edmorley edmorley marked this pull request as ready for review November 6, 2023 14:01
@edmorley edmorley requested a review from a team as a code owner November 6, 2023 14:01
@edmorley edmorley enabled auto-merge (squash) November 6, 2023 14:02
@edmorley edmorley enabled auto-merge (squash) November 6, 2023 14:09
Add a GitHub Actions workflow for preparing a new buildpack release,
similar to that used for CNBs and `libcnb.rs` releases:
https://github.com/heroku/languages-github-actions/blob/main/.github/workflows/_buildpacks-prepare-release.yml
https://github.com/heroku/libcnb.rs/blob/main/.github/workflows/prepare-release.yml

The changelog format has been updated in this PR to more closely match the
https://keepachangelog.com format (which allows reusing the regexes from
our other automation), however, to reduce churn I've not adopted the change
categories headings for now.

For now this is not being implemented as a shared workflow, since the
classic buildpacks (unlike the CNBs):
- do not have standardised changelog formats
- have differing approaches to versioning (some have the changelog version
  match the buildpack registry version, others do not)
- in some cases (eg Ruby) require additional edits for releases beyond just the
  changelog (such as updating version constants elsewhere in the codebase).

As such, it makes more sense to get something working for one buildpack first,
and if there is interest about adding this to other classic buildpacks, we can
discuss how we might standardise/implement generic automation.

GUS-W-14437037.
@edmorley edmorley merged commit d26c3a8 into main Nov 6, 2023
5 checks passed
@edmorley edmorley deleted the prepare-release-workflow branch November 6, 2023 14:49
colincasey added a commit to heroku/languages-github-actions that referenced this pull request Jan 24, 2024
Add a GitHub Actions workflow for preparing a new "classic" buildpack release. This is based on the workflow that @edmorley added for python (heroku/heroku-buildpack-python#1506).

> [NOTE]
> This workflow may not be compatible with all of our classic buildpacks such as Ruby or PHP which do not follow the conventions being automated here.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants