From 0989865fdb8ea397830b05c01c199bf01229ee3f Mon Sep 17 00:00:00 2001 From: Martin Riedl Date: Tue, 25 Feb 2025 19:48:54 +0100 Subject: [PATCH] ci: new semantic release workflow --- .forgejo/workflows/release.yml | 20 ++++++++++ .releaserc | 72 ++++++++++++++++++++++++++++++++++ 2 files changed, 92 insertions(+) create mode 100644 .forgejo/workflows/release.yml create mode 100644 .releaserc diff --git a/.forgejo/workflows/release.yml b/.forgejo/workflows/release.yml new file mode 100644 index 0000000..d393a3e --- /dev/null +++ b/.forgejo/workflows/release.yml @@ -0,0 +1,20 @@ +name: Release + +on: + push: + branches: + - main + - beta + +jobs: + release: + name: Semantic Release + runs-on: docker + steps: + - name: Checkout repository + uses: actions/checkout@v4 + - name: Semantic Release + shell: bash + run: | + npm install -g semantic-release@23 conventional-changelog-conventionalcommits@7 + semantic-release diff --git a/.releaserc b/.releaserc new file mode 100644 index 0000000..c35a8d5 --- /dev/null +++ b/.releaserc @@ -0,0 +1,72 @@ +{ + "branches": [ + "main", + { + "name": "beta", + "prerelease": true + } + ], + "plugins": [ + [ + "@semantic-release/commit-analyzer", + { + "preset": "conventionalcommits", + "releaseRules": [ + { + "type": "chore", + "release": "patch" + }, + { + "type": "build", + "release": "patch" + }, + { + "type": "ci", + "release": "patch" + } + ] + } + ], + [ + "@semantic-release/release-notes-generator", + { + "preset": "conventionalcommits", + "presetConfig": { + "types": [ + { + "type": "feat", + "section": "Features" + }, + { + "type": "feature", + "section": "Features" + }, + { + "type": "fix", + "section": "Bug Fixes" + }, + { + "type": "perf", + "section": "Performance Improvements" + }, + { + "type": "revert", + "section": "Reverts" + }, + { + "type": "chore", + "section": "Miscellaneous Chores" + } + ] + } + } + ], + [ + "@semantic-release/github", + { + "successCommentCondition": false, + "failTitle": false + } + ] + ] +} \ No newline at end of file