Skip to content

ADR-031: Automated releases with release-please

Category: development Provenance: human

Decision

Automate release process using release-please. Releases are triggered by conventional commits and create GitHub releases, changelogs, and version bumps automatically.

Rationale

release-please eliminates manual release toil (changelog writing, version bumping, tag creation). Conventional commits provide machine-readable history for automatic version determination. Changelogs generated from commits stay accurate and complete. Separate versioning for operator and each Helm chart (via commit scopes). Release PRs provide review opportunity before publishing. Consistent release process reduces errors.

Agent Instructions

Follow conventional commit format (covered in decision 011). release-please analyzes commits to determine version bumps (major/minor/patch). Never manually create releases or update version numbers. Let release-please handle changelog generation from commit messages. Review and merge release PRs created by release-please to trigger releases.

Rejected Alternatives

Manual releases with hand-written changelogs

Error-prone, time-consuming, changelogs drift from actual changes. Inconsistent versioning.

Semantic-release or other tools

release-please better supports monorepo with multiple versioned components (operator + 3 charts).