Skip to content

CI: resolve container Python for release builds - #4624

Draft
gyohuangxin wants to merge 3 commits into
mainfrom
ci/release-container-python
Draft

CI: resolve container Python for release builds#4624
gyohuangxin wants to merge 3 commits into
mainfrom
ci/release-container-python

Conversation

@gyohuangxin

Copy link
Copy Markdown
Member

Summary

  • Resolve the Python executable inside non-manylinux release build containers before installing dependencies
  • Use the resolved Python with -m pip for legacy dependency installation steps
  • Build legacy wheels with the same resolved Python, allowing custom containers such as rocm/ufb-private that do not expose pip/python3 like rocm/pytorch

Testing

  • python3 YAML parse of .github/workflows/aiter-release.yaml
  • git diff --check

@gyohuangxin
gyohuangxin requested review from a team and a lite review from Copilot August 7, 2026 07:44
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

🏷️ CI Guide

Runs automatically on every PR:

  • ✅ Pre-checks (submodule verification, code formatting)
  • ✅ Aiter op tests (gfx942 + gfx950)
  • ✅ Triton tests on MI35X (only when aiter/ops/triton/** or related paths are changed)

Extended tests (opt-in via labels):

Label Tests
ci:triton-300x Run an additional Triton test job on MI300X in PRs; main branch always runs both MI35X and MI300X
ci:sglang SGLang integration tests: DeepSeek-R1-MXFP4 accuracy, Qwen 3.5 accuracy
ci:atom ATOM benchmark: DeepSeek-R1-0528, GPT-OSS-120B
ci:atom_full ATOM accuracy suite for PR and main models from ATOM models_accuracy.json
ci:vllm vLLM benchmark: GPT-OSS-120B, DeepSeek-R1-0528, Kimi-K2.5
ci:all All standard extended tests (excludes ci:atom_full)

Only add ci:atom_full for FlyDSL or Triton upgrades.
Add labels via the sidebar or gh pr edit 4624 --add-label <label>

Copilot AI 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.

Pull request overview

This PR updates the release GitHub Actions workflow to locate a usable Python executable inside “legacy” (non-manylinux) build containers and then consistently use that interpreter for pip installs and wheel builds, improving compatibility with custom containers that don’t expose pip/python3 on PATH.

Changes:

  • Add a “Resolve container Python (legacy)” step that finds a Python interpreter with pip available and exports it as CONTAINER_PYTHON.
  • Switch legacy dependency installation steps from pip ... to "${CONTAINER_PYTHON}" -m pip ....
  • Build legacy wheels using the resolved Python rather than hardcoding python3.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +232 to +239
for candidate in /opt/venv/bin/python python3 python; do
if [ -x "$candidate" ]; then
py="$candidate"
elif command -v "$candidate" >/dev/null 2>&1; then
py="$(command -v "$candidate")"
else
continue
fi
@gyohuangxin
gyohuangxin marked this pull request as draft August 7, 2026 08:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants