Skip to content

ci: do not cancel jobs for main or tags#3778

Merged
chrisgacsal merged 1 commit intomainfrom
ci/concurrency
Jan 14, 2026
Merged

ci: do not cancel jobs for main or tags#3778
chrisgacsal merged 1 commit intomainfrom
ci/concurrency

Conversation

@chrisgacsal
Copy link
Collaborator

@chrisgacsal chrisgacsal commented Jan 14, 2026

Overview

Do not cancel CI jobs for main branch or tags.

Summary by CodeRabbit

  • Chores
    • Updated CI workflow concurrency handling to preserve in-progress runs on main branch and tag releases, ensuring uninterrupted deployments and release processes, while other branches continue cancelling overlapping runs for efficiency.

✏️ Tip: You can customize this high-level summary in your review settings.

@chrisgacsal chrisgacsal self-assigned this Jan 14, 2026
@chrisgacsal chrisgacsal requested a review from a team as a code owner January 14, 2026 13:27
@chrisgacsal chrisgacsal added the release-note/ignore Ignore this change when generating release notes label Jan 14, 2026
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 14, 2026

📝 Walkthrough

Walkthrough

The GitHub Actions CI workflow's concurrency cancellation policy was adjusted to be conditional. In-progress runs now cancel only when the ref is neither main nor a tag, allowing main branch and tag pushes to run without cancelling prior runs.

Changes

Cohort / File(s) Summary
CI Workflow Configuration
.github/workflows/ci.yaml
Modified concurrency cancellation logic from always-cancel to conditional cancellation that preserves in-progress runs on main branch and tag pushes

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly and clearly summarizes the main change: preventing CI job cancellation for main branch and tag builds, which matches the core objective of the pull request.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch ci/concurrency

🧹 Recent nitpick comments
.github/workflows/ci.yaml (1)

14-16: Consider using exact matching for the main branch check.

The logic works, but using contains() for the main branch could unintentionally match branches like main-feature or my-main-branch. An exact equality check would be safer. Also, startsWith() is more semantically appropriate than contains() for the tag prefix:

 concurrency:
   group: ${{ github.workflow }}-${{ github.ref }}
-  cancel-in-progress: ${{ !contains(github.ref, 'refs/heads/main') && !contains(github.ref, 'refs/tags/') }}
+  cancel-in-progress: ${{ github.ref != 'refs/heads/main' && !startsWith(github.ref, 'refs/tags/') }}

Also worth noting: the current workflow triggers (lines 4-6) don't include tag pushes, so the tag condition won't actually fire with the existing config. If this is future-proofing for when tag triggers get added, that's totally fine—just wanted to flag it in case it was unintentional.


📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between eca79ea and 92f7472.

📒 Files selected for processing (1)
  • .github/workflows/ci.yaml
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (4)
  • GitHub Check: Quickstart
  • GitHub Check: E2E
  • GitHub Check: Code Generators
  • GitHub Check: Analyze (go)

✏️ Tip: You can disable this entire section by setting review_details to false in your review settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@chrisgacsal chrisgacsal merged commit 856ce4d into main Jan 14, 2026
25 of 26 checks passed
@chrisgacsal chrisgacsal deleted the ci/concurrency branch January 14, 2026 13:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release-note/ignore Ignore this change when generating release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants