Merge pull request #663 from omacom/ci/sync-pr-churn

Keep sync PRs building across bot pushes
This commit is contained in:
Ryan Hughes authored and GitHub committed 2026-09-27 20:07:45 -04:00
commit 31b10abd75
8 files changed
+363 -9

No files matched your search

+16
View File
@@ -901,6 +901,22 @@ build-and-publish chain, so the tracker requires this secret before it runs.
The reviewed sync workflows continue to use `GITHUB_TOKEN` and require
maintainer approval as before. See [setup instructions](docs/upstream-sources.md#enable-unattended-branch-updates).
Scheduled runs regenerate one shared PR (`auto/sync-upstream`, `auto/sync-rebuilds`)
from master. A manual run with the `packages` input only regenerates those
packages, so it opens its own PR on `auto/sync-upstream-<packages>` (or
`auto/sync-rebuilds-<packages>`) rather than replacing the shared PR's other
pending updates. The next scheduled run still picks the same update up in the
shared PR if it has not merged by then; identical package trees reuse the same
build artifacts.
Sync PRs are pushed with `GITHUB_TOKEN`, so GitHub holds their build and test
runs for approval on every push and starts no `pull_request_target` workflow
for them. Once **`build-approved`** is on a sync PR, the sync workflow's own
`approve` job releases the held runs for each commit it pushes. A push to an
`auto/sync-*` branch does not cancel the PR's in-flight build: the new build
waits for it and then reuses its artifacts, so a long aarch64 build is not
restarted by every sync.
To approve builds for an unvouched contributor's PR, apply **`build-approved`**.
Until approval, the PR shows **Awaiting build approval** and its required
`result` check stays pending, keeping the PR blocked from merging without