From 9670e2858c909015962c56c55c980ee813e55cff Mon Sep 17 00:00:00 2001 From: Tim Felgentreff Date: Thu, 21 May 2026 10:43:13 +0200 Subject: [PATCH 1/2] [GR-75506] Remove hardcoded tox PyPI mirror --- .../src/tox/leftpad/tox.ini | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/graalpython/com.oracle.graal.python.test/src/tox/leftpad/tox.ini b/graalpython/com.oracle.graal.python.test/src/tox/leftpad/tox.ini index dfc6a98a77..0915e7d20b 100644 --- a/graalpython/com.oracle.graal.python.test/src/tox/leftpad/tox.ini +++ b/graalpython/com.oracle.graal.python.test/src/tox/leftpad/tox.ini @@ -9,7 +9,12 @@ commands = [testenv:graalpy] basepython=graalpy -setenv= - PIP_INDEX_URL=https://ol-graal.oraclecorp.com/nexus-cache/repository/pypi-proxy/simple/ - PIP_TRUSTED_HOST=ol-graal.oraclecorp.com -passenv = GRAALPY_LEFTPAD_FAIL,GRAAL_PYTHON_ARGS,GRAAL_PYTHON_VM_ARGS +passenv = + GRAALPY_LEFTPAD_FAIL + GRAAL_PYTHON_ARGS + GRAAL_PYTHON_VM_ARGS + PIP_EXTRA_INDEX_URL + PIP_INDEX_URL + PIP_RETRIES + PIP_TIMEOUT + PIP_TRUSTED_HOST From 460195fa75f59a0d4c3c2ef1634d72066517b3ac Mon Sep 17 00:00:00 2001 From: Tim Felgentreff Date: Thu, 21 May 2026 11:22:34 +0200 Subject: [PATCH 2/2] [GR-75506] Export CI pip indexes --- ci/python-bench.libsonnet | 12 ++++++++++-- ci/python-gate.libsonnet | 9 ++++++++- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/ci/python-bench.libsonnet b/ci/python-bench.libsonnet index a56bc066a2..96fea92867 100644 --- a/ci/python-bench.libsonnet +++ b/ci/python-bench.libsonnet @@ -90,8 +90,16 @@ local environment(os, arch) = self.environment(os, arch) + { BENCH_RESULTS_FILE_PATH: "bench-results.json", PANDAS_REPO_URL: $.overlay_imports.PANDAS_REPO_GIT, + } + if $.overlay_imports.PIP_EXTRA_INDEX_URL != "" then { PIP_EXTRA_INDEX_URL: $.overlay_imports.PIP_EXTRA_INDEX_URL, - }, + } else {}, + + local pip_index_setup = [ + // Use the CI Python's configured base index and overlay-provided GraalPy wheel index. + ["set-export", "PIP_INDEX_URL", ["python", "-m", "pip", "config", "get", "global.index-url"]], + ] + if $.overlay_imports.PIP_EXTRA_INDEX_URL != "" then [ + ["set-export", "PIP_EXTRA_INDEX_URL", $.overlay_imports.PIP_EXTRA_INDEX_URL], + ] else [], local packages(os, arch) = self.packages(os, arch) + { make: ">=3.83", @@ -193,7 +201,7 @@ "--pythonjavadriver-vm-config" else super.vm_config_name, - setup+: [ + setup+: pip_index_setup + [ // NOTE: logic shared with ci/python-gate.libsonnet, keep in sync // ensure we get graal-enterprise as a hostvm ["git", "clone", $.overlay_imports.GRAAL_ENTERPRISE_GIT, "${BUILD_DIR}/graal-enterprise"], diff --git a/ci/python-gate.libsonnet b/ci/python-gate.libsonnet index 135fdeb99a..cfafaef82f 100644 --- a/ci/python-gate.libsonnet +++ b/ci/python-gate.libsonnet @@ -194,6 +194,13 @@ buildslave_ol8: ENVIRONMENT_DIFF_OL8, }, + local pip_index_setup = [ + // Use the CI Python's configured base index and overlay-provided GraalPy wheel index. + ["set-export", "PIP_INDEX_URL", ["python", "-m", "pip", "config", "get", "global.index-url"]], + ] + if $.overlay_imports.PIP_EXTRA_INDEX_URL != "" then [ + ["set-export", "PIP_EXTRA_INDEX_URL", $.overlay_imports.PIP_EXTRA_INDEX_URL], + ] else [], + //------------------------------------------------------------------------------------------------------------------ // packages //------------------------------------------------------------------------------------------------------------------ @@ -461,7 +468,7 @@ guard+: { excludes+: ["**.md", "docs/**", "3rd_party_licenses.txt", "scripts/**"], }, - setup+: [ + setup+: pip_index_setup + [ // force imports the main repository to get the right graal commit ["mx"] + self.mx_parameters + ["sforceimports"], // logging