From ffad7e3eb71a0e266d7b7d76815ed6b88c4f7739 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 6 Jul 2026 17:22:37 +0000 Subject: [PATCH] ci: replace release-that action with semantic-release - Update workflow triggers to support scheduled daily releases at UTC midnight - Add workflow_dispatch for manual release triggering - Add conditional logic to only run release on main branch pushes, schedules, or manual triggers - Replace rlespinasse/release-that@v1 with cycjimmy/semantic-release-action@v4 - Switch from custom GH_TOKEN to standard GITHUB_TOKEN - Create .releaserc.json with minimal semantic-release configuration - Automatically analyzes conventional commits and generates releases - Enables once-daily release cadence with unpublished commit detection --- .github/workflows/v5-tests-and-release.yml | 21 ++++++++++++++++++--- .releaserc.json | 8 ++++++++ 2 files changed, 26 insertions(+), 3 deletions(-) create mode 100644 .releaserc.json diff --git a/.github/workflows/v5-tests-and-release.yml b/.github/workflows/v5-tests-and-release.yml index f319166..f7e906d 100644 --- a/.github/workflows/v5-tests-and-release.yml +++ b/.github/workflows/v5-tests-and-release.yml @@ -1,5 +1,12 @@ name: "[v5] Test and Release" -on: [push, pull_request] +on: + push: + branches: + - main + pull_request: + schedule: + - cron: '0 0 * * *' + workflow_dispatch: permissions: read-all jobs: check-v4-compatibility: @@ -381,10 +388,15 @@ jobs: shell: bash release: + if: | + github.event_name == 'schedule' || + github.event_name == 'workflow_dispatch' || + (github.event_name == 'push' && github.ref == 'refs/heads/main') runs-on: ubuntu-latest permissions: contents: write issues: write + pull-requests: write id-token: write packages: write concurrency: @@ -397,6 +409,9 @@ jobs: - name: Checkout uses: actions/checkout@v7 - name: Release this GitHub Action - uses: rlespinasse/release-that@v1 + uses: cycjimmy/semantic-release-action@v4 with: - github-token: ${{ secrets.GH_TOKEN }} + semantic_version: 21 + branches: main + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.releaserc.json b/.releaserc.json new file mode 100644 index 0000000..7bf05ec --- /dev/null +++ b/.releaserc.json @@ -0,0 +1,8 @@ +{ + "branches": ["main"], + "plugins": [ + "@semantic-release/commit-analyzer", + "@semantic-release/release-notes-generator", + "@semantic-release/github" + ] +}