ci: Fix docs-only detection in compute-ci-level - #2394
Open
gursewak1997 wants to merge 4 commits into
Open
Conversation
gursewak1997
force-pushed
the
ci-skip-md-docs-v2
branch
from
August 19, 2026 19:27
728da27 to
5879e2e
Compare
There was a problem hiding this comment.
Pull request overview
Fixes docs-only CI detection so diff failures no longer silently skip heavy tests.
Changes:
- Adds sparse checkout for pull request events.
- Separates diff retrieval from classification and rejects empty output.
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
The previous attempt (merged in bootc-dev#2391) failed silently because compute-ci-level had no checkout step, so gh pr diff could not infer the repository and produced empty output. The pipe into grep swallowed the error, setting docs_only=true for all PRs. Fix by adding a sparse checkout for PR events, separating the gh pr diff fetch from the grep so failures abort via set -euo pipefail, and guarding empty output explicitly. Assisted-by: AI Signed-off-by: gursewak1997 <gursmangat@gmail.com>
gursewak1997
force-pushed
the
ci-skip-md-docs-v2
branch
from
August 19, 2026 19:41
5879e2e to
5d19d32
Compare
cgwalters
previously approved these changes
Aug 19, 2026
Collaborator
|
Hmm.. Test Install still failing |
Johan-Liebert1
force-pushed
the
ci-skip-md-docs-v2
branch
from
August 20, 2026 09:39
bf754e8 to
65bc1a5
Compare
`priv-integration.sh` was hanging at the chunkah step where we mount an entire image inside a podman container. In the logs I can see `overlay.mount_program=/usr/local/bin/fuse-overlayfs` which might be causing the test to timeout since fuse-overlayfs is pretty slow and the image has tons of layers. Switch to native overlay diff which hopefully fixes the issue Also, skip networking for chunkah container as I see podman hanging at ``` time="2026-08-20T07:45:34Z" level=debug msg="Adding mount /dev" time="2026-08-20T07:45:34Z" level=debug msg="Adding mount /dev/pts" time="2026-08-20T07:45:34Z" level=debug msg="Adding mount /dev/mqueue" time="2026-08-20T07:45:34Z" level=debug msg="Adding mount /sys" time="2026-08-20T07:45:34Z" level=debug msg="Adding mount /sys/fs/cgroup" time="2026-08-20T07:45:34Z" level=debug msg="Successfully loaded 1 networks" ``` Convert the image to an oci dir instead of trying to mount the entire image Signed-off-by: Pragyan Poudyal <pragyanpoudyal41999@gmail.com>
Johan-Liebert1
force-pushed
the
ci-skip-md-docs-v2
branch
from
August 20, 2026 10:35
65bc1a5 to
8712cce
Compare
Collaborator
|
My offhand guess around the install test is that some package got updated. I have an agent looking at this. For now, I'd vote to just make it non-gating. |
Collaborator
|
Yeah, sgtm. Every |
Collaborator
|
OK, I'll take this |
This job has been hanging in the chunkah/podman step for hours even after the native-overlay fix in the previous commit, likely blocking this PR and others behind unrelated CI infrastructure flakiness. Disable it for now via if: false (same pattern used for test-coreos) so it reports as skipped rather than pending/failed, and doesn't block required-checks-heavy. Re-enable once the hang is root-caused. Assisted-by: AI Signed-off-by: Colin Walters <walters@verbum.org>
CentOS 10 UKI CI jobs fail "bootc container export --format=tar" with "No label found in policy ... for /var/tmp/rhc". rhc's post-install scriptlet drops runtime state under /var/tmp during image build (same rhc-1:0.3.12-1.el10 build in both passing and failing CI runs, so this isn't a version regression in rhc itself), and the SELinux targeted policy simply has no file-context entry for it. This only reproduces reliably on the composefs+uki matrix legs, likely because that build path takes long enough for the scriptlet's async write to land before the image layer is committed - the file can be present or absent on other legs depending on timing. Rather than trying to tolerate arbitrary unlabeled paths anywhere in the tree (which risks silently exporting genuinely mislabeled files), extend the existing SKIP_PATHS list to always exclude /tmp and /var/tmp. These are meant to hold only ephemeral, runtime-created content - ostree-ext::commit's FORCE_CLEAN_PATHS already treats the same two paths (plus /run and /var/cache) this way for regular ostree commits, so tar export dropping them is consistent with how bootc already treats the real /var as not being part of the shippable content. Add a unit test exercising export_filesystem_walk() directly (with SELinux labeling disabled) against a synthetic root, verifying /tmp and /var/tmp content is dropped while everything else is kept. Assisted-by: AI Signed-off-by: Colin Walters <walters@verbum.org>
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.
The previous attempt (merged in #2391) failed silently because compute-ci-level had no checkout step, so gh pr diff could not infer the repository and produced empty output. The pipe into grep swallowed the error, setting docs_only=true for all PRs.
Fix by adding a sparse checkout for PR events, separating the gh pr diff fetch from the grep so failures abort via set -euo pipefail, and guarding empty output explicitly.