ci: hand build→aggregate kernel artifacts via workflow artifacts#50
Open
lacraig2 wants to merge 1 commit into
Open
ci: hand build→aggregate kernel artifacts via workflow artifacts#50lacraig2 wants to merge 1 commit into
lacraig2 wants to merge 1 commit into
Conversation
The build matrix wrote per-target kernel tarballs to a shared hostPath (/home/runner/_shared/runs/$GITHUB_RUN_ID) and the aggregate job read them back. That only works while all rehosting-arc runners are pinned to one node. Pass the tarballs through actions/upload-artifact + download-artifact instead, removing the cross-node dependency so rehosting CI can run across both cluster nodes. Combine/merge/release logic is unchanged.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The kernel build pipeline (
buildmatrix →aggregate) passed per-targettarballs between jobs through a shared hostPath
(
/home/runner/_shared/runs/$GITHUB_RUN_ID/build-output):buildwrote them,aggregateread them back. This only works because allrehosting-arcrunnersare currently pinned to a single node.
This PR switches that handoff to GitHub workflow artifacts:
builduploadskernels-<target>viaactions/upload-artifactaggregatepulls them withactions/download-artifact(merge-multiple) intoa workspace-local
build-output/, then combines/releases exactly as before.The obsolete per-run
runs/cleanup step is removed (artifacts expire on theirown retention; the workspace dir is ephemeral). Combine/merge/release logic is
otherwise unchanged.
Why
It removes the last cross-node dependency in rehosting CI. Today
rehosting-arcis pinned (
nodeSelector: rehosting.shared-node) to the control-plane node sothis handoff stays on one node — which also confines all rehosting CI to that
one (disk-pressured) node and leaves the second 100-core worker unusable by
rehosting. With this handoff node-agnostic, the scale set can spread across both
nodes.
Note: the
aggregatejob only runs on tag/workflow_dispatch(release) builds,so normal PR/push builds were already node-agnostic; this fixes the release path.
Test plan
workflow_dispatch) produceskernels-latest.tar.gzand
kernel-devel-all.tar.gzidentical in contents to before.