Repository navigation
Conversation
✅ All Checks Passed — Ready for Review
📖 Need help? See the Policy FAQ for details on every check and how to fix failures. |
|
🎉 All checks passed! This PR is ready for review. |
|
This will prevent introduction of any compiler promotion related build failures also like LCOMPILER-2794 |
|
Addressed the remaining review feedback in commit 0eeb302. Thank you! |
| Sanitizer labels do not override GPU test gating. GPU sanity checks and | ||
| component tests remain subject to trigger and runner restrictions. CPU tests | ||
| may still run. `ci:skip` still skips CI. |
There was a problem hiding this comment.
Unnecessary/confusing detail here (often seen with "low effort level" AI written docs). Please trim. This whole paragraph could just be deleted.
- The section is talking about submodule update pull requests. Why is
ci:skipmentioned at all here? - What is "CPU tests may still run" adding? That seems better suited for a section on GPU test labels, separate from automated submodule update PRs.
| # ASAN variant selection: | ||
| # 1. ci:asan label -> asan (explicit full ASAN, highest priority) | ||
| # 2. ci:host-asan label -> host-asan (explicit) | ||
| # 3. push/pull_request events -> host-asan (default for pre/postsubmit) | ||
| # 4. schedule/workflow_dispatch -> asan (nightly/manual get full ASAN) | ||
| # 1. ci:asan-debug label -> asan-debug (full ASAN with debug info) | ||
| # 2. ci:asan label -> asan (explicit full ASAN) | ||
| # 3. ci:host-asan-debug label -> host-asan-debug (host-only ASAN with debug info) | ||
| # 4. ci:host-asan label -> host-asan (explicit) |
There was a problem hiding this comment.
I just merged #9018 which validates that some known labels conflicts are not present. Let's make it so only one ci:*asan label at a time can be added and if multiple are seen the CI fails. Then we won't need this priority list.
| git = cm.GitContext( | ||
| changed_files=["CMakeLists.txt", "build_tools/script.py"], | ||
| ) | ||
| self.assertTrue(cm.should_skip_ci(inputs, git)) | ||
| for changed_files in ( | ||
| ["CMakeLists.txt", "build_tools/script.py"], | ||
| ["compiler/amd-llvm"], | ||
| ): | ||
| with self.subTest(changed_files=changed_files): | ||
| git = cm.GitContext( | ||
| changed_files=changed_files, submodule_paths=["compiler/amd-llvm"] | ||
| ) | ||
| self.assertTrue(cm.should_skip_ci(inputs, git)) |
There was a problem hiding this comment.
Subtest is not useful here. All that matters is that CI is skipped when there are code changes and no asan label. We don't need to separately check CMakeLists.txt and build_tools/script.py as different types of code changes for that testing.
geomin12
left a comment
There was a problem hiding this comment.
lgtm. we can roll back if needed
Motivation
Validate library and system submodule bumps with host-ASan builds, and let LLVM promotion PRs opt into full ASan builds with debug information.
ISSUE ID: #6624
Technical Details
ci:host-asanto library and system bump PRs.ci:asan-debugto select the existinglinux-release-asan-debugpreset for LLVM promotions or any other PR.ci:asan-debug, thenci:asan, thenci:host-asan. Removing sanitizer labels opts out;ci:skipstill skips CI.Test Plan
Check label selection, precedence, opt-out, and disabled GPU testing using CI configuration tests. Run bump automation tests and repository lint checks.
Test Result
Submission Checklist