ci: explicitly pass base-setup inputs to fix strict validation failures#1626
Open
Copilot wants to merge 1 commit into
Open
ci: explicitly pass base-setup inputs to fix strict validation failures#1626Copilot wants to merge 1 commit into
Copilot wants to merge 1 commit into
Conversation
Copilot
AI
changed the title
[WIP] Update python-tests.yml to pass required inputs to base-setup action
ci: explicitly pass base-setup inputs to fix strict validation failures
May 1, 2026
4fcb17c to
b48bc2d
Compare
…failures Agent-Logs-Url: https://github.com/jupyter-server/jupyter_server/sessions/8c03e70a-497d-4f07-80ad-712b0277b09a Co-authored-by: Carreau <335567+Carreau@users.noreply.github.com>
b48bc2d to
b3b35f0
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
jupyterlab/maintainer-tools/.github/actions/base-setup@v1now enforces strict validation onpython_package_manageranddependency_type, exiting with an error if either is empty or unrecognized. Jobs that invokedbase-setup@v1without awith:block were failing at setup before any tests ran.Changes
base-setup@v1usages: explicitly setpython_package_manager: pipanddependency_type: standardwhere nowith:block existedbuild,integration_check): additionally pinpython_version: ${{ matrix.python-version }}so the action uses the intended matrix versiontest_minimum_versions: addedpython_package_manager: pipalongside existingdependency_type: minimumtest_prereleases: addedpython_package_manager: pipalongside existingdependency_type: preandpython_versionBefore (failing):
After:
Original prompt
CI is failing in PR #1621 due to the shared
jupyterlab/maintainer-tools/.github/actions/base-setup@v1action rejecting unknown/empty inputs forpython_package_managerand/ordependency_type.Evidence:
if [ "$PYTHON_PACKAGE_MANAGER" != "pip" ] && [ "$PYTHON_PACKAGE_MANAGER" != "uv pip" ]; then ... exit 1elif [ $DEPENDENCY_TYPE == "minimum" ]; then ... elif [ $DEPENDENCY_TYPE != "standard" ]; then ... exit 1In this repo,
.github/workflows/python-tests.ymlusesbase-setup@v1in multiple jobs. At least thebuildjob (and potentially others) invokesbase-setup@v1without explicitly passing these inputs, making it susceptible to upstream defaults/behavior changes.Task:
.github/workflows/python-tests.ymlto explicitly pass supported values to thebase-setup@v1action wherever it is used, so the action does not see empty/unknown values.python_package_manager: pip(or"uv pip"if preferred, but keep consistent with existing caches/behavior).dependency_type: standardfor normal jobs.python_version: ${{ matrix.python-version }}in matrix jobs to ensure the action uses the intended version.dependency_type: minimumintest_minimum_versions,dependency_type: preintest_prereleasesif the action supports it; if not supported, adjust to a supported value or update workflow logic accordingly).Reference file:
.github/workflows/python-tests.ymlat ref5527e74aaa13e6885a14a198bc3d62dbfd8dfce9: https://github.com/jupyter-server/jupyter_server/blob/5527e74aaa13e6885a14a198bc3d62dbfd8dfce9/.github/workflows/python-tests.ymlDeliverable:
mainwith the workflow changes.base-setupinputs to avoid failures from strict input validation in the shared action.The following is the prior conversation context from the user's chat exploration (may be truncated):
User: Please find a solution for this failing job. Use the logs, job definition, and any referenced files where the failure occurred. Keep your response focused on the solution and include code suggestions when appropriate.
Assistant: The failure is happening in the Base Setup step (the
jupyterlab/maintainer-tools/.github/actions/base-setup@v1composite action), before any tests run. The snippet in the job log shows the action aborting with:Unrecognized package manager $PYTHON_PACKAGE_MANAGER(guard clause)DEPENDENCY_TYPEto be eitherminimumorstandard(and errors otherwise)This strongly indicates the job is invoking
base-setup@v1with inputs that don’t match what that action expects (most commonly:python_package_manageris unset/empty or set to a new value, and/ordependency_typeis unset/empty or set to something likedefault).Fix (in this repo): explicitly pass valid
base-setupinputsIn your workflow at:
https://github.com/jupyter-server/jupyter_server/blob/5527e74aaa13e6885a14a198bc3d62dbfd8dfce9/.github/workflows/python-tests.ymlthe
buildjob calls base-setup without anywith:block:Update that to explicitly set supported values (based on the log guards:
python_package_managermust bepiporuv pip;dependency_typemust bestandardorminimum).Suggested patch
Why this solves it:
PYTHON_PACKAGE_MANAGER/DEPENDENCY_TYPE, which is what triggers the “Unrecognized …” exits shown in the logs.If you prefer uv instead of pip
Only use the exact string accepted by the action: