Commit Graph

30 Commits

Author SHA1 Message Date
argoyle 581ccba72e fix: make release PR creation robust against race conditions
Two fixes:
- Use BASE_BRANCH (with fallback) instead of DEFAULT_BRANCH for the
  PR base field, preventing empty base causing 404
- Replace fixed sleep with branch readiness poll (up to 10 attempts)
  and add retry loop for PR creation (up to 5 attempts), fixing
  intermittent 404 when Gitea hasn't indexed the branch yet

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 16:51:47 +01:00
argoyle 068c6ef686 Merge pull request 'fix(release): add retry and delay for PR creation to handle Gitea API race condition' (#18) from fix-release-pr-race-condition into main
Reviewed-on: #18
2026-02-23 13:13:23 +00:00
argoyle d5623bdf9c fix(release): add retry and delay for PR creation to handle Gitea API race condition
The PR creation curl immediately follows branch creation via the Contents
API, but Gitea may not have fully indexed the new branch for pull request
operations yet. This causes intermittent HTTP errors on the first run.

- Add sleep 3 before PR creation to allow Gitea to process the new branch
- Use --retry-all-errors so curl retries on HTTP 4xx/5xx (not just
  connection failures)
- Capture and display the actual HTTP error code and response body on
  failure for easier debugging

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 14:12:43 +01:00
argoyle e3f1ba4e0a Merge pull request 'fix(release): replace rebase with branch recreation to prevent PR merge conflicts' (#17) from fix-release-pr-conflicts into main
Reviewed-on: #17
2026-02-12 11:02:43 +00:00
argoyle 4688810928 fix(release): replace rebase with branch recreation to prevent PR merge conflicts
Delete and recreate the next-release branch from base on each run instead of
rebasing, which caused 409 conflicts on CHANGELOG.md. Add concurrency group
to prevent parallel workflow runs.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-12 12:02:01 +01:00
renovate 646d0e4e0c chore(deps): update dependency orhun/git-cliff to v2.12.0 (#16) 2026-01-20 17:38:12 +00:00
argoyle c564063d20 Merge pull request 'fix(release): add retry logic to curl API calls' (#15) from fix-curl-retry into main
Reviewed-on: #15
2026-01-14 14:14:24 +00:00
argoyle a9458d03dd fix(release): add retry logic to curl API calls
Add --retry 3 --retry-delay 2 --retry-connrefused to all Gitea API
curl calls to handle transient connection failures. This addresses
intermittent exit code 7 (connection refused) errors when the K8s
internal service briefly drops connections.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-14 15:08:17 +01:00
argoyle 7802e99a9c Merge pull request 'feat(release): rebase PR branch before updating changelog' (#14) from feat-rebase-pr into main
Reviewed-on: #14
2026-01-09 20:10:09 +00:00
argoyle dafe37343f feat(release): rebase PR branch before updating changelog
When updating an existing release PR, the workflow now rebases
the next-release branch onto the base branch using Gitea's PR
update API with style=rebase. This keeps the PR up to date with
main without force-pushing or deleting the branch.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-09 21:09:21 +01:00
argoyle 33b839e26e Merge pull request 'feat(release): enhance release workflow with improvements' (#13) from fix-workflow-gitea-compat into main
Reviewed-on: #13
2026-01-09 06:39:11 +00:00
argoyle 4b25f5864d feat(release): enhance release workflow with improvements
Adds fallback to main branch if DEFAULT_BRANCH is empty and updates 
the way CHANGELOG.md and .version files are handled in the release 
process. Refactors checks for existing branches and includes 
detailed logging for transparency. This improves the robustness of 
the release workflow and ensures relevant files are created or 
updated correctly.
2026-01-09 07:38:33 +01:00
argoyle 91f60440e8 Merge pull request 'chore(deps): update dependency orhun/git-cliff to v2.11.0' (#10) from renovate/orhun-git-cliff-2.x into main
Reviewed-on: #10
2026-01-09 06:09:49 +00:00
argoyle 4f7694d9e1 Merge pull request 'fix: use DEFAULT_BRANCH as source when creating next-release branch' (#12) from fix-workflow-gitea-compat into main
Reviewed-on: #12
2026-01-09 04:29:32 +00:00
argoyle 2b2dba8c2b fix: use DEFAULT_BRANCH as source when creating next-release branch 2026-01-09 05:28:29 +01:00
argoyle 8b0d478f72 Merge pull request 'fix: use internal Gitea URL for API calls' (#11) from fix-workflow-gitea-compat into main
Reviewed-on: #11
2026-01-09 04:22:49 +00:00
argoyle 5c4e1828de fix: use internal Gitea URL for API calls
Runner is inside K8s cluster and cannot reach external URL
2026-01-09 05:22:08 +01:00
renovate ce44701d56 chore(deps): update dependency orhun/git-cliff to v2.11.0 2026-01-09 04:13:22 +00:00
argoyle 0beb7b8490 Merge pull request 'fix: remove containers and artifacts for Gitea compatibility' (#9) from fix-workflow-gitea-compat into main
Reviewed-on: #9
2026-01-09 04:09:51 +00:00
argoyle 4ba5d96d75 fix: remove containers and artifacts for Gitea compatibility
- Run directly on ubuntu-latest instead of custom containers
- Download git-cliff binary from GitHub releases
- Merge changelog and handle-pr into single job
- Make create-release and create-tag self-contained
- Remove upload-artifact and download-artifact (not supported on GHES/Gitea)
- Add Renovate custom manager for automatic git-cliff updates
2026-01-09 05:08:10 +01:00
argoyle a195ff5a36 Merge pull request 'chore(deps): update actions/checkout action to v6' (#5) from renovate/actions-checkout-6.x into main
Reviewed-on: #5
2026-01-09 03:51:42 +00:00
argoyle f39240e9ff Merge pull request 'fix: remove containers from workflow to fix Node.js compatibility' (#8) from fix-workflow-containers into main
Reviewed-on: #8
2026-01-09 03:49:11 +00:00
argoyle db1f4c1563 fix: remove containers from workflow to fix Node.js compatibility
- Run directly on ubuntu-latest instead of custom containers
- Download git-cliff binary from GitHub releases
- Add Renovate custom manager for automatic git-cliff updates
2026-01-09 04:48:47 +01:00
argoyle 1e799eccc0 Merge pull request 'docs: add CLAUDE.md for Claude Code guidance' (#7) from add-claude-md into main
Reviewed-on: #7
2026-01-09 03:48:29 +00:00
renovate 2977a1b0c4 chore(deps): update actions/checkout action to v6 2026-01-08 21:25:29 +00:00
argoyle 1502bb6b05 docs: add CLAUDE.md for Claude Code guidance 2026-01-08 21:59:06 +01:00
argoyle ca333a2500 feat: use file-based release token instead of secret 2026-01-08 21:48:17 +01:00
renovate f79decdcea Add renovate.json 2026-01-08 19:17:04 +00:00
argoyle 615b16e8f3 feat: add Release workflow for automated releases 2026-01-08 19:06:52 +01:00
argoyle 1bfb2e0229 Initial commit 2026-01-08 18:01:48 +00:00