Skip to content

chore(ci): add release-please for automated version + changelog management#2

Merged
NWarila merged 1 commit into
mainfrom
chore/add-release-please
May 4, 2026
Merged

chore(ci): add release-please for automated version + changelog management#2
NWarila merged 1 commit into
mainfrom
chore/add-release-please

Conversation

@NWarila
Copy link
Copy Markdown
Contributor

@NWarila NWarila commented May 4, 2026

Summary

Add release-please to standardize version + changelog management across the three repos in the secure Packer toolchain (proxmox-packer-framework, secure-rockylinux9-template, and now this one).

What this adds

  • .github/workflows/release-please.yaml — runs release-please on push to main.
  • release-please-config.jsonsimple release-type, conventional-commit changelog sections matching the framework + consumer repos.
  • .release-please-manifest.json — baseline at 1.0.0 (the existing tag).
  • .gitignore allowlist updated for the three new files.

How the chain works after this

  1. Conventional commits land on main (feat: / fix: / etc.).
  2. release-please opens or updates a release PR titled chore: release X.Y.Z that regenerates CHANGELOG.md and bumps the manifest.
  3. Merging that PR creates the corresponding vX.Y.Z tag.
  4. The existing Release Artifact workflow (already wired on push: tags: v*) builds the bundle, attests provenance, and publishes the GitHub release with the assets the downstream consumer pin script consumes.

Why no release PR will open immediately

The only commit on main since v1.0.0 is chore(codeowners): sync CODEOWNERS via terraform, which is hidden from the changelog and doesn't bump versions. So the workflow runs cleanly but produces no PR until a feat: or fix: lands.

Test plan

  • Merge this PR.
  • Confirm release-please workflow runs successfully and reports "no release necessary" or similar.
  • On the next non-chore commit to main, confirm a release PR opens with a sensible bumped version.

🤖 Generated with Claude Code

Add the release-please workflow + config + manifest, mirroring the same
pattern used in nwarila-platform/proxmox-packer-framework and the
nwarila-platform/secure-rockylinux9-template consumer repo. Update the
allowlist-style .gitignore so the new files are tracked.

How it works:
- On push to main, the release-please action scans new conventional
  commits since the last tagged release.
- For feat: / fix: / security: / refactor: / ci: / docs: it opens or
  updates a release PR titled "chore: release X.Y.Z" that bumps the
  manifest, regenerates CHANGELOG.md, and proposes the next version.
- Merging that release PR creates the corresponding tag (with v prefix
  per include-v-in-tag), which in turn triggers Release Artifact
  (already wired on push: tags: v*) to build, attest, and publish the
  GitHub release with the bundle assets.

Manifest baseline is 1.0.0 -- the existing tag. Next release is
computed from conventional commits merged after the v1.0.0 tag (only
chore(codeowners) right now, which is hidden from the changelog and
does not bump versions, so no release PR will open until a feat/fix
lands).

This standardizes release management across all three repos in the
secure Packer / Proxmox toolchain (framework, bootstrapper, consumer
template).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@NWarila NWarila merged commit 1aa4176 into main May 4, 2026
5 checks passed
@NWarila NWarila deleted the chore/add-release-please branch May 4, 2026 19:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant