Skip to content

Limit Renovate concurrent branches to 20#27128

Merged
ErisDS merged 1 commit into
mainfrom
fix/renovate-branch-limit
Apr 5, 2026
Merged

Limit Renovate concurrent branches to 20#27128
ErisDS merged 1 commit into
mainfrom
fix/renovate-branch-limit

Conversation

@ErisDS
Copy link
Copy Markdown
Member

@ErisDS ErisDS commented Apr 5, 2026

Summary

  • Add branchConcurrentLimit: 20 to Ghost's local Renovate config
  • Overrides the shared preset's :disableRateLimiting which allows unlimited branches

Why

After restoring rebaseWhen=automerging in #27096, Renovate started rebasing all stale branches on every run. With 150+ accumulated branches from 5 months of broken automerge, each run hit the 30-minute Mend timeout before completing. Capping at 20 branches keeps runs well within the time limit and lets Renovate work through updates incrementally as it merges existing ones.

ref #27096

After restoring rebaseWhen=automerging, Renovate began rebasing all
stale branches on every run. With 150+ open branches accumulated over
5 months of broken automerge, each run hit the 30-minute Mend timeout
before it could finish processing, let alone merge anything.

The shared preset includes :disableRateLimiting which removes all PR
and branch limits. That works for repos with a healthy automerge cycle
where branches are short-lived, but Ghost's backlog made it untenable.

Setting branchConcurrentLimit to 20 caps the number of branches
Renovate will maintain at once. At roughly 20 seconds per branch for
rebasing and artifact updates, 20 branches takes about 7 minutes,
leaving plenty of headroom within the 30-minute limit for package
discovery, PR updates, and automerge evaluation. As Renovate merges
existing branches it will create new ones up to the limit, working
through the available updates incrementally.
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 5, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: bf4fe391-19e5-4501-9bcb-ab55ae0dda57

📥 Commits

Reviewing files that changed from the base of the PR and between 143a42e and b267471.

📒 Files selected for processing (1)
  • .github/renovate.json5

Walkthrough

The pull request introduces a configuration change to .github/renovate.json5 by adding the branchConcurrentLimit setting with a value of 20. This setting limits the number of concurrent Renovate branches or updates that can be processed simultaneously. The modification adds 5 lines to the configuration file with no deletions. No other functional configuration values were modified.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately and concisely summarizes the main change: adding a concurrent branch limit of 20 to Renovate configuration.
Description check ✅ Passed The description is directly related to the changeset, explaining the rationale behind the configuration change and referencing the specific setting being added.
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
  • Commit unit tests in branch fix/renovate-branch-limit

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

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented Apr 5, 2026

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 5, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 73.19%. Comparing base (143a42e) to head (b267471).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #27128      +/-   ##
==========================================
- Coverage   73.20%   73.19%   -0.01%     
==========================================
  Files        1531     1531              
  Lines      121805   121805              
  Branches    14699    14696       -3     
==========================================
- Hits        89166    89157       -9     
- Misses      31645    31654       +9     
  Partials      994      994              
Flag Coverage Δ
admin-tests 54.42% <ø> (+<0.01%) ⬆️
e2e-tests 73.19% <ø> (-0.01%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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.

1 participant