Skip to content

ci: add scheduled cache-warm workflow for BST remote cache - #785

Closed
castrojo wants to merge 7 commits into
mainfrom
ci/phase7-cache-warm
Closed

ci: add scheduled cache-warm workflow for BST remote cache#785
castrojo wants to merge 7 commits into
mainfrom
ci/phase7-cache-warm

Conversation

@castrojo

Copy link
Copy Markdown
Contributor

Summary

Automation audit Phase 7: scheduled workflow to keep the BuildStream remote cache hot.

Addresses ND1 (cold-start timeout non-determinism) from the automation audit.

Problem: Dakota BST builds have a 360-min timeout. When cache misses after junction ref bumps or gbm upstream rebuilds, the full GNOME stack must rebuild from scratch — which can exceed 6h.

Solution: Schedule a cache-warm build Mon/Thu at 06:00 UTC to keep artifacts fresh before typical work-hour PR merge windows.

Behavior:

  • Runs on schedule: Monday and Thursday 06:00 UTC
  • Also available via workflow_dispatch for manual warm
  • Uses cancel-in-progress: false — cache warm should complete even if a newer one starts
  • Build failure is non-fatal (|| true) — this is warming, not gating

Assisted-by: Claude Sonnet 4.5 via pi

castrojo and others added 6 commits June 9, 2026 10:00
* docs(skills): add ci.md lessons from PR 751 testing fast-forward and next stream (#752)

- Document GitHub API 422 idempotent fast-forward pattern
- Document merge-queue head_branch never equals 'main'
- Document :next/:btw as fully automated rolling stream (no human gate)

Assisted-by: Claude Sonnet 4.6 via GitHub Copilot

* chore(deps): update common: v2026.06-169 -> v2026.06-186

* ci: trigger Build Bluefin dakota on testing branch [skip build]

PR base changed to testing — re-trigger CI so renovate-automerge fires.

Assisted-by: Claude Sonnet 4.6 via pi

* ci: re-trigger CI (build.yml now includes testing branch)

Assisted-by: Claude Sonnet 4.6 via pi

---------

Co-authored-by: Jorge O. Castro <jorge.castro@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Match bluefin-lts behavior — every Renovate/track-bst merge to testing
fires a build so testing images stay current.

Assisted-by: Claude Sonnet 4.6 via pi
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Runs Mon/Thu at 06:00 UTC to keep the BuildStream remote cache hot
and prevent cold-start timeouts (ND1 from automation audit).

BST builds have a 360-min timeout; full GNOME stack rebuild from
scratch can exceed 6h on cache miss after junction ref bumps.

Closes automation-audit ND1 (cold-start timeout non-determinism).

Assisted-by: Claude Sonnet 4.5 via pi
@castrojo
castrojo requested review from p5 and tulilirockz as code owners June 10, 2026 23:32
@coderabbitai

coderabbitai Bot commented Jun 10, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@castrojo, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 12 minutes and 15 seconds. Learn how PR review limits work.

Your organization has run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 2b336735-bb9b-4e97-9d64-403fc85ac52e

📥 Commits

Reviewing files that changed from the base of the PR and between 5377a93 and d08bc7c.

📒 Files selected for processing (5)
  • .github/workflows/build.yml
  • .github/workflows/cache-warm.yml
  • .github/workflows/renovate-automerge.yml
  • docs/skills/ci.md
  • elements/bluefin/common.bst
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ci/phase7-cache-warm

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.

@github-actions

Copy link
Copy Markdown
Contributor

This PR targets testing instead of main. Please retarget it to main — the testing branch is managed by the promotion pipeline and must not receive direct PRs.

@castrojo
castrojo changed the base branch from testing to main June 10, 2026 23:38
…ments/layers/top.bst

The initial version referenced a non-existent path. Correct target
per build.yml and Justfile is `oci/bluefin.bst`. Also bump timeout
from 360 to 420 min to match the build job timeout.

Assisted-by: Claude Sonnet 4.5 via pi
@castrojo

Copy link
Copy Markdown
Contributor Author

Superseded by clean branch from main.

@castrojo castrojo closed this Jun 10, 2026
@castrojo
castrojo deleted the ci/phase7-cache-warm branch June 23, 2026 23:46
@castrojo castrojo added 4-review A pull request is awaiting review. and removed pr/needs-review labels Jul 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

4-review A pull request is awaiting review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant