From 5e47529f4a12ecd39640737a56235879a9f20bc8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?oliver=20k=C3=B6nig?= Date: Wed, 1 Apr 2026 12:04:49 +0000 Subject: [PATCH] feat: add extra-no-build-isolation-packages input to wheel build workflow MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Some packages (e.g. nvidia-resiliency-ext 0.6.0) require additional packages (e.g. grpcio-tools) to be available at build time, but do not declare them in build-system.requires. The new input lets callers pre-install these packages before the --no-build-isolation install runs. Co-Authored-By: Claude Sonnet 4.6 Signed-off-by: oliver könig --- .github/workflows/_build_test_publish_wheel.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.github/workflows/_build_test_publish_wheel.yml b/.github/workflows/_build_test_publish_wheel.yml index d4d832a..eaae3bf 100644 --- a/.github/workflows/_build_test_publish_wheel.yml +++ b/.github/workflows/_build_test_publish_wheel.yml @@ -84,6 +84,11 @@ on: description: Options to pass to the container type: string default: " " + extra-no-build-isolation-packages: + required: false + description: Space-separated list of extra packages to pre-install before building with --no-build-isolation (e.g. "grpcio-tools protobuf") + type: string + default: "" secrets: TWINE_USERNAME: required: true @@ -121,6 +126,7 @@ jobs: DRY_RUN: ${{ inputs.dry-run }} PACKAGING: ${{ inputs.packaging }} ROOTDIR: ${{ inputs.root-dir }} + EXTRA_NO_BUILD_ISOLATION_PACKAGES: ${{ inputs.extra-no-build-isolation-packages }} steps: - name: Checkout repository uses: actions/checkout@v6 @@ -179,12 +185,18 @@ jobs: if [[ "$NO_BUILD_ISOLATION" == "true" ]]; then uv pip install torch uv pip install --upgrade setuptools pybind11 wheel_stub packaging poetry poetry-dynamic-versioning + if [[ -n "$EXTRA_NO_BUILD_ISOLATION_PACKAGES" ]]; then + uv pip install $EXTRA_NO_BUILD_ISOLATION_PACKAGES + fi fi uv pip install $([[ "$NO_BUILD_ISOLATION" == "true" ]] && echo "--no-build-isolation" || "") -e . else if [[ "$NO_BUILD_ISOLATION" == "true" ]]; then pip install torch pip install --upgrade setuptools pybind11 wheel_stub packaging poetry poetry-dynamic-versioning + if [[ -n "$EXTRA_NO_BUILD_ISOLATION_PACKAGES" ]]; then + pip install $EXTRA_NO_BUILD_ISOLATION_PACKAGES + fi fi pip install -e $([[ "$NO_BUILD_ISOLATION" == "true" ]] && echo "--no-build-isolation" || "") . fi