Skip to content

ci(xpu): validation PR for the re-applied XPU workflows and Dockerfile - #23

Open
aung-san-i wants to merge 4 commits into
mainfrom
pull-request/23
Open

aung-san-i wants to merge 4 commits into
mainfrom
pull-request/23

Conversation

@aung-san-i

Copy link
Copy Markdown
Owner

Throwaway PR to prove the CI merged in #22 actually runs end to end on XPU hardware. Adds only a comment to container/templates/vllm_runtime.Dockerfile, which matches the vllm path filter (container/templates/vllm_*) and so makes changed-files set vllm=true, which is what gates build-xpu and the heterog-test-px-dn / heterog-test-pn-dx jobs.

What this exercises:

  • .github/workflows/pr-xpu.yaml (push to pull-request/[0-9]+, needs the xpu label)
  • .github/workflows/pr-xpu-heterogeneous.yaml (push; its guard deliberately skips the label gate)
  • .github/workflows/epd-test-template.yml (workflow_call, from the heterog jobs)
  • .github/scripts/test-filters.js (the brace fix from Pull request/22 #22)
  • container/templates/vllm_runtime.Dockerfile rendered and built for device=xpu

Not exercised: .github/workflows/xpu-heterogeneous-dispatch.yaml is workflow_dispatch only and has to be run by hand from the Actions tab.

The marker comment must be removed before this branch is ever merged.

Overview:

Details:

Where should the reviewer start?

Related Issues

⚠️ This section is required. Choose one path below and delete the other.

🔗 This PR is linked to an issue:

  • Closes #XXXX

🚫 This PR is NOT linked to an issue:

  • Confirmed — no related issue

aung-san-i and others added 2 commits September 15, 2026 19:09
* ci(xpu): re-apply XPU pre-merge and heterogeneous EPD CI onto upstream main

Re-applies the CI portion of fork PRs #18, #19 and #20 (squash commits
937d0ee, bce72a9, 8845cd9) on top of upstream main 9fcc771, after the fork
was synced to ai-dynamo/dynamo and those three commits were discarded from main.

Conflict resolution in .github/workflows/pr-xpu.yaml: kept the inline build-xpu
job instead of upstream's new xpu-ci-vllm reusable-workflow call. The
heterog-test-px-dn / heterog-test-pn-dx jobs consume
needs.build-xpu.outputs.image, and .github/workflows/xpu-ci.yaml declares no
workflow_call outputs, so the built image tag cannot be threaded through it.
Upstream's call site also reads "uses: $/.github/workflows/xpu-ci.yaml", which
is not a valid local reusable-workflow path.

Also fixes a syntax error that was present on the old fork main: the pn-dx.yaml
case in .github/scripts/test-filters.js was missing its closing brace, so the
file did not parse. node --check now passes.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

* container(xpu): carry over oneAPI env and XPU baseline SBOM from PR #18

Both changes are Sandeep Maddipatla's, originally commits 87e5e8d ("fix(container):
set oneAPI env for XPU vLLM runtime device detection") and a402586
("fix(compliance): bump XPU vLLM base image and refresh baseline SBOM"). They were
swept into fork main by the #18 squash merge, which attributed them to the PR
author. Isolated here in their own commit because both need review against current
upstream before merging:

- container/templates/vllm_runtime.Dockerfile sets ONEAPI_ROOT=/opt/intel/oneapi
  plus hardcoded compiler/2025.3, mpi/2021.15 paths. Upstream's current template
  carries a comment in the same {% if device == "xpu" %} block warning against
  exactly this: vLLM 0.27.1's XPU image ships the oneAPI runtime and SYCL headers
  in /opt/venv via the intel-sycl-rt wheel, the /opt/intel/oneapi tree is removed,
  and Triton prioritises ONEAPI_ROOT over its wheel-metadata fallback, so it would
  search a nonexistent compiler include path. The problem the original commit
  fixed (Dynamo resets ENTRYPOINT to [], so setvars.sh never runs) may still be
  real, but this mechanism no longer matches the base image.

- container/compliance/base_sboms/vllm-ci-test-repo@26109489-amd64.cdx.json is
  133095 lines / 22470 components and is referenced by no manifest.json entry.
  The original commit also bumped manifest.json and container/context.yaml, but
  later commits in the #18 chain reverted those, leaving this file orphaned.
  Upstream's manifest.json now points at vllm-openai-xpu@3309c2e1-amd64.cdx.json.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Throwaway PR to prove the CI merged in #22 actually runs end to end on XPU
hardware. Adds only a comment to container/templates/vllm_runtime.Dockerfile,
which matches the `vllm` path filter (container/templates/vllm_*) and so makes
changed-files set vllm=true, which is what gates build-xpu and the
heterog-test-px-dn / heterog-test-pn-dx jobs.

What this exercises:
  - .github/workflows/pr-xpu.yaml            (push to pull-request/[0-9]+, needs the xpu label)
  - .github/workflows/pr-xpu-heterogeneous.yaml (push; its guard deliberately skips the label gate)
  - .github/workflows/epd-test-template.yml  (workflow_call, from the heterog jobs)
  - .github/scripts/test-filters.js          (the brace fix from #22)
  - container/templates/vllm_runtime.Dockerfile rendered and built for device=xpu

Not exercised: .github/workflows/xpu-heterogeneous-dispatch.yaml is
workflow_dispatch only and has to be run by hand from the Actions tab.

The marker comment must be removed before this branch is ever merged.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

This branch had an error being deployed

1 failed deployment
external_collaborator — 456ecf5f Deployed Sep 21, 2026 by aung-san-i via ok-to-test #55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant