Skip to content

feat/semantic release#259

Open
behnamrhp wants to merge 6 commits into
crossplane-contrib:pre-releasefrom
behnamrhp:feat/semantic-release
Open

feat/semantic release#259
behnamrhp wants to merge 6 commits into
crossplane-contrib:pre-releasefrom
behnamrhp:feat/semantic-release

Conversation

@behnamrhp

Copy link
Copy Markdown

Problem / motivation

Fixes #207

Release versioning was not standardized and lacks proper control, inconsistent and manual. There was no single automated path that aligned semantic versioning, CHANGELOG, package.json, and Git tags.

What this PR changes

  • Adds semantic-release with release.config.cjs: conventional commits analysis, @semantic-release/changelog for CHANGELOG.md, @semantic-release/npm (npmPublish: false) so package.json / package-lock.json match the release version, @semantic-release/git to commit and push changelogs and bumped package.json version.
  • Introduces a dedicated .github/workflows/semantic-release.yml workflow for automated bumps (e.g. workflow_dispatch and push to main / master), separate from Build and Release.
  • Declares semantic-release and plugin packages in package.json devDependencies with an updated package-lock.json so npm ci installs plugins (fixes missing @semantic-release/changelog in CI).
  • Sets Node 22 in workflows (and engines in package.json) so semantic-release v25’s Node requirement is satisfied.
  • Ignores .semantic-release-version in .gitignore.

Alternatives considered

  • Bump version inside Build and Release — It's would be possible to bump version on build and release but preferred to put dedicated workflow on push codes to main or master bump versioning and not touching build and release pipeline.

Additional context

  • GH_TOKEN / GITHUB_TOKEN: workflow uses secrets.SEMANTIC_RELEASE_GITHUB_TOKEN when set, else secrets.GITHUB_TOKEN, with contents: write where push is required.

  • ** Example of semantic release workflow result**

image

@behnamrhp behnamrhp force-pushed the feat/semantic-release branch from 7ddbff3 to b5093b6 Compare May 2, 2026 21:14
@MoeidHeidari

Copy link
Copy Markdown
Collaborator

@behnamrhp please change the target branch to pre-release

@behnamrhp behnamrhp changed the base branch from main to pre-release May 9, 2026 16:00
@behnamrhp behnamrhp changed the title Feat/semantic release feat/semantic release May 9, 2026
Behnamrhp74 added 6 commits May 17, 2026 20:13
…lease pipeline

Signed-off-by: Behnamrhp74 <behnam.rahimpoor@beatstream.com>
Signed-off-by: Behnamrhp74 <behnam.rahimpoor@beatstream.com>
Signed-off-by: Behnamrhp74 <behnam.rahimpoor@beatstream.com>
Signed-off-by: Behnamrhp74 <behnam.rahimpoor@beatstream.com>
Signed-off-by: Behnamrhp74 <behnam.rahimpoor@beatstream.com>
Signed-off-by: Behnamrhp74 <behnam.rahimpoor@beatstream.com>
@behnamrhp behnamrhp force-pushed the feat/semantic-release branch from 9a19334 to 72b663a Compare May 17, 2026 17:14
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.

[DEVOPS] Missing Semantic Versioning Control

2 participants