Skip to content

feat(ci): add asan_presubmit input for automatic ASAN presubmit gating - #7633

Closed
raramakr wants to merge 1 commit into
mainfrom
users/raramakr/asan-presubmit
Closed

raramakr wants to merge 1 commit into
mainfrom
users/raramakr/asan-presubmit

Conversation

@raramakr

Copy link
Copy Markdown
Contributor

Callers that set asan_presubmit=true can run ASAN builds and tests as
a first-class presubmit gate without requiring 'ci:asan'/'ci:host-asan'
PR labels.

When enabled:

  • ASAN CI runs on push/pull_request without opt-in labels
  • Sandbox test runners are allocated for ASAN tests on all triggers

Intended for workflows that narrow the build via build_stages to keep
ASAN presubmit costs manageable.

ISSUE ID: #7202

@raramakr
raramakr requested a review from ScottTodd as a code owner August 25, 2026 16:06
@raramakr
raramakr marked this pull request as draft August 25, 2026 16:07
@therock-pr-bot

therock-pr-bot Bot commented Aug 25, 2026 •

Copy link
Copy Markdown

✅ All Checks Passed — Ready for Review

Check Status Details
📝 PR Description ✅ Pass —
⛔ Forbidden Files ✅ Pass —
🧪 Unit Test ✅ Pass —
🔎 pre-commit ✅ Pass —
🚫 Draft PR 🔜 To Be Enabled —
🚩 Feature Flag 🔜 To Be Enabled —
📊 Code Coverage 🔜 To Be Enabled —
🤖 therock-pr-bot ✅ Pass —

🎉 All checks passed! This PR is ready for review.

📖 Need help? See the Policy FAQ for details on every check and how to fix failures.

🙋 Wish to Override Policy?

@raramakr
raramakr force-pushed the users/raramakr/asan-presubmit branch from 1364de0 to f2d4c87 Compare August 25, 2026 16:29
@raramakr
raramakr marked this pull request as ready for review August 25, 2026 16:29
@raramakr
raramakr requested review from geomin12 and nunnikri August 25, 2026 16:29
@therock-pr-bot

Copy link
Copy Markdown

🎉 All checks passed! This PR is ready for review.

@geomin12 geomin12 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please just use labels for presubmit for now. we are slowly rolling out postsubmit then presubmit for ASAN / host-ASAN

https://github.com/ROCm/TheRock/blob/main/docs/development/ci_behavior_manipulation.md#pull-request

  Callers that set asan_presubmit=true can run ASAN builds and tests as
  a first-class presubmit gate without requiring 'ci:asan'/'ci:host-asan'
  PR labels.

  When enabled:
  - ASAN CI runs on push/pull_request without opt-in labels
  - Sandbox test runners are allocated for ASAN tests on all triggers

  Intended for workflows that narrow the build via build_stages to keep
  ASAN presubmit costs manageable.
@raramakr
raramakr force-pushed the users/raramakr/asan-presubmit branch from f2d4c87 to c43f2c9 Compare August 28, 2026 16:44

@ScottTodd ScottTodd left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 to Geo's comments and I'm not sure about the implementation approach here. We're going to have multiple build variants (ASan, TSan, Debug, Coverage, etc.) and I wouldn't want to add individual options like *_presubmit for each of them.

Let's see the full plan in context with other work and then review the available implementation options.

@raramakr

Copy link
Copy Markdown
Contributor Author

The PR was created as part of splitting the original PR: #7311
But based on the comment , it seems like the PR is not at all required. Moving to draft (will close it soon)

I had created ROCm/rocm-systems#10558 and
#7780 changes)
With these two PR , the issue #7202 can be addressed

@raramakr
raramakr marked this pull request as draft August 31, 2026 19:01
@raramakr

raramakr commented Aug 31, 2026 •

Copy link
Copy Markdown
Contributor Author

Closing this in favor of #7780

@raramakr raramakr closed this Aug 31, 2026
@github-project-automation github-project-automation Bot moved this from TODO to Done in TheRock Triage Aug 31, 2026
Comment on lines 776 to 782
has_asan_label = (
"ci:asan" in ci_inputs.pr_labels or "ci:host-asan" in ci_inputs.pr_labels
)
if (
ci_inputs.is_pull_request
and ci_inputs.build_variant == "asan"
and not has_asan_label

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We're going to have multiple build variants (ASan, TSan, Debug, Coverage, etc.) and I wouldn't want to add individual options like *_presubmit for each of them.

A few other ideas:

explicit opt-in label per entry point workflow

We could also generalize the ci:asan label by adding a pull_request_opt_in_labels input to .github/workflows/setup_multi_arch.yml then...

Dynamic enable/disable behavior

We could add an extension point to setup_multi_arch.yml where python ./build_tools/github_actions/configure_multi_arch_ci.py imports another python module that can inject its own logic. That would allow repositories like rocm-systems and rocm-libraries to customize the behavior without needing to fully fork the configure script (see the changes in ROCm/rocm-libraries#10752 for example)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants