Skip to content

[CI] Support dev releases + derive index URL in full PyTorch test dispatch (#5781)#5815

Closed
ethanwee1 wants to merge 1 commit into
users/ethanwee1/full-test-generalize-familiesfrom
users/ethanwee1/full-test-dev-and-url
Closed

[CI] Support dev releases + derive index URL in full PyTorch test dispatch (#5781)#5815
ethanwee1 wants to merge 1 commit into
users/ethanwee1/full-test-generalize-familiesfrom
users/ethanwee1/full-test-dev-and-url

Conversation

@ethanwee1

@ethanwee1 ethanwee1 commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Summary

Lets dev releases dispatch the full PyTorch test suite (in addition to nightly) and stops hardcoding the nightly package index URL, so dev runs test against the dev index rather than nightly wheels.

Closes #5781.

Stacked on #5813 (#5755). Base will be retargeted to main once #5813 merges; review the last commit only.

What changed

  • build_tools/github_actions/multi_arch_release_urls.py (new): single source of truth for the release_type -> multi-arch index URL mapping, with a small CLI that emits the package_index_url GitHub Actions output.
  • build_tools/github_actions/publish_pytorch_to_release_bucket.py: imports MULTI_ARCH_INDEX_URLS from the shared helper instead of defining its own copy (no behavior change).
  • .github/workflows/multi_arch_release_linux_pytorch_wheels.yml:
    • setup_full_test_matrix now resolves package_index_url from release_type and exposes it as an output.
    • The dispatch job reads PACKAGE_INDEX_URL from that output instead of a hardcoded nightly literal.
    • Both the setup and dispatch gates accept release_type == 'nightly' or 'dev'.

Cadence / safety

This is a safe no-op for dev until a scheduled wrapper passes run_full_pytorch_tests=true for dev releases — the dispatch only fires when that flag is set, so frequent on-demand dev builds will not trigger a full-test storm. Adding the dev schedule itself is a rockrel-side change (mirrors the existing nightly schedule).

Test plan

  • multi_arch_release_urls_test.py (new)
  • publish_pytorch_to_release_bucket_test.py (unchanged, still passes after refactor)
  • configure_pytorch_test_matrix_test.py, workflow_dispatch_inputs_test.py
  • Workflow YAML parses.

…ispatch

Allow release_type == dev to dispatch full PyTorch tests (in addition to
nightly), and stop hardcoding the nightly package index URL. The index URL
is now resolved from the release type via a shared MULTI_ARCH_INDEX_URLS
helper, so dev runs test against the dev index instead of nightly wheels.

Closes #5781
@ethanwee1

Copy link
Copy Markdown
Contributor Author

Closes #5781. Stacked on #5813 (#5755 generalization) — base will be retargeted to main once #5813 merges; review the last commit only.

Changes:

  • Allow release_type == 'dev' (in addition to nightly) to dispatch full tests.
  • Stop hardcoding the nightly index URL — resolve it from release_type via a shared multi_arch_release_urls.MULTI_ARCH_INDEX_URLS helper (also now imported by publish_pytorch_to_release_bucket.py, single source of truth). Dev runs install from rocm.devreleases.amd.com instead of nightly wheels.

Note on cadence: this is a safe no-op for dev until a scheduled wrapper passes run_full_pytorch_tests=true for dev releases — the dispatch only fires when that flag is set, so frequent on-demand dev builds won't trigger a full-test storm. The dev cadence/schedule itself is a rockrel-side change (mirrors the nightly schedule).

@ethanwee1 ethanwee1 self-assigned this Jun 12, 2026
@ethanwee1 ethanwee1 marked this pull request as ready for review June 26, 2026 19:58
@ethanwee1 ethanwee1 requested a review from ScottTodd June 29, 2026 14:44
@ScottTodd

Copy link
Copy Markdown
Member

Stacked on #5813 (#5755). Base will be retargeted to main once #5813 merges; review the last commit only.

I'm confused by the git state here. This is still stacked on the users/ethanwee1/full-test-generalize-families branch but #5813 is closed.

@ethanwee1

Copy link
Copy Markdown
Contributor Author

@ScottTodd you're right about the git state — this PR was stacked on the now-closed #5813 branch (users/ethanwee1/full-test-generalize-families), and #5780 has since moved the full-test dispatch out of multi_arch_release_linux_pytorch_wheels.yml into the per-ref build workflow, so the workflow edits here target a job that no longer exists.

Closing in favor of #6449, which rebuilds the still-relevant half of #5781 as a small change against main:

  • Un-hardcode index URL — already done on main (dispatch uses needs.build_pytorch_wheels.outputs.package_index_url, derived from MULTI_ARCH_INDEX_URLS[release_type]).
  • Support dev releasesci: dispatch full PyTorch tests for dev releases #6449 adds dev to the dispatch_pytorch_wheels_full_test gate.

The multi_arch_release_urls.py helper from this PR is no longer needed since that map already lives in publish_pytorch_to_release_bucket.py and drives the derived URL.

@ethanwee1 ethanwee1 closed this Jul 9, 2026
@github-project-automation github-project-automation Bot moved this from TODO to Done in TheRock Triage Jul 9, 2026
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.

2 participants