mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-24 11:25:50 -06:00
ci: pipeline canonical main runs across two concurrency slots (#123135)
Measured canonical-main first-start delay: median 180s, average 209s; 10 of the last 30 runs waited more than 300s. Approved tradeoff: up to ~+30 concurrent Blacksmith VMs during merge storms. Scope is canonical main pushes only; pull requests, manual runs, non-main refs, and forks keep their existing semantics. Bump the canonical-main concurrency group from v7 to v8 so in-flight old-group runs cannot mix with the two-slot pipeline.
This commit is contained in:
committed by
GitHub
parent
88a412b0d9
commit
fa18d8d273
@@ -2804,12 +2804,12 @@ NODE
|
||||
expect(nativeResourcesSetup.with).toMatchObject({ "install-bun": "false" });
|
||||
});
|
||||
|
||||
it("runs canonical main CI single-flight while coalescing the pending tip", () => {
|
||||
it("pipelines canonical main CI across two non-canceling slots", () => {
|
||||
const workflow = readCiWorkflow();
|
||||
|
||||
// GitHub concurrency keeps one running and one pending run by default.
|
||||
// Replacing only the pending run preserves a complete integration cycle
|
||||
// while coalescing merge bursts to the newest main tip.
|
||||
expect(workflow.concurrency.group).toBe(
|
||||
"${{ github.event_name == 'workflow_dispatch' && format('{0}-manual-v1-{1}', github.workflow, github.run_id) || (github.event_name == 'pull_request' && format('{0}-v7-{1}', github.workflow, github.event.pull_request.number) || (github.repository == 'openclaw/openclaw' && github.event_name == 'push' && github.ref == 'refs/heads/main' && format('{0}-v8-{1}-{2}', github.workflow, github.ref, (endsWith(format('{0}', github.run_number), '0') || endsWith(format('{0}', github.run_number), '2') || endsWith(format('{0}', github.run_number), '4') || endsWith(format('{0}', github.run_number), '6') || endsWith(format('{0}', github.run_number), '8')) && 'a' || 'b') || (github.repository == 'openclaw/openclaw' && format('{0}-v7-{1}', github.workflow, github.ref) || format('{0}-v7-{1}-{2}', github.workflow, github.ref, github.sha)))) }}",
|
||||
);
|
||||
expect(workflow.concurrency["cancel-in-progress"]).toBe(
|
||||
"${{ github.event_name == 'pull_request' }}",
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user