-
Notifications
You must be signed in to change notification settings - Fork 1
Fix: Mise configuration changes causing blocking CI failures #196
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
67 commits
Select commit
Hold shift + click to select a range
34f814c
initial test
bashandbone 3b287ea
fix: enhance CI configuration with Python version support and Mise en…
bashandbone 036b74b
fix: enhance CI configuration with Python version support and Mise en…
bashandbone f48671c
fix: prevent CI skip by disabling env export in mise-action
claude e8136d6
Merge remote-tracking branch 'origin/claude/debug-ci-skip-issue-01Bwf…
bashandbone 596900d
fix: remove unnecessary echo statement for Mise Python version in CI …
bashandbone 5cbce61
fix: add mise bin directory to PATH for proper command execution
claude 257d1ba
Merge remote-tracking branch 'origin/claude/debug-ci-skip-issue-01Bwf…
bashandbone 9dfdd3c
fix: add outputs section to composite action for proper output exposure
claude 4727733
Merge remote-tracking branch 'origin/claude/debug-ci-skip-issue-01Bwf…
bashandbone fb5ad88
fix: missing tools on path
bashandbone 147548c
Apply suggestions from code review
bashandbone a639786
Initial plan
Copilot eae8605
fix: remove duplicate Setup Mise Environment step
Copilot dba88c8
Merge pull request #197 from knitli/copilot/sub-pr-196
bashandbone db32aad
fix: update PATH in workflows and improve MCP Registry submission pro…
bashandbone 7631fdc
fix: removed 'frozen' flag from uv for experimental python installs. …
bashandbone 38d0508
Apply suggestions from code review
bashandbone 6092ce7
fix: remove mcp-publisher CLI installation step and streamline submis…
bashandbone 9508d15
fix: enhance CI workflows by adding outputs and environment variables…
bashandbone 0fa134c
fix: update Python setup action to include outputs for PYTHON_PATH an…
bashandbone df20998
fix: update CI workflows to ensure uv is available when called
bashandbone 855c5ba
fix: add tools to mise check task for CI availability
bashandbone b7dbc41
fix: add setup step for mise dev installs in CI
bashandbone 0bf4081
Apply suggestions from code review
bashandbone 47a8614
fix: improve CI workflows by setting PATH for mise and cleaning up te…
bashandbone 766575c
Update .github/workflows/mcp-registry-submit.yml
bashandbone 407161d
fix: enhance CI workflows by adding NEWPATH output and updating PATH …
bashandbone cb8618c
fix: update cloud setup task environment variables for consistency
bashandbone 0d76871
fix: enhance setup and testing workflows by adding missing dependenci…
bashandbone c40e7c1
Apply suggestions from code review
bashandbone a5ce307
fix: improve cleanup process in MCP Registry submission workflow
bashandbone b7169d9
Apply suggestions from code review
bashandbone 9a7a2f8
Apply suggestions from code review
bashandbone 7a6fe77
Apply suggestions from code review
bashandbone 6e93e42
fix: add missing outputs to actions and simplify CI workflows
claude a48462a
Merge branch 'fix-test-ci-action-failures' into claude/fix-ci-test-fa…
bashandbone d36cf56
Merge pull request #199 from knitli/claude/fix-ci-test-failures-0187v…
bashandbone 3e7dd13
Fix: Add missing 'runs-on' specification for lint job
bashandbone 3983e83
Apply suggestions from code review
bashandbone d95e9de
fix: update CI workflows and environment setup for consistency
bashandbone 3dfa0bd
fix: fixed a malformed block in setup-mise-env, consolidated freethre…
bashandbone 0a594b3
fix: update hk installation in CI setup and add HK_MISE environment v…
bashandbone 2988ad7
fix: update CI workflows and environment setup, remove unused variables
bashandbone d4eb4aa
Apply suggestions from code review
bashandbone c2505a6
fix: update setup-mise-env and reusable-lint workflows for consistenc…
bashandbone f82fd38
Apply suggestions from code review
bashandbone 9c14d52
fix: streamline mise configuration by consolidating tool definitions …
bashandbone 582f1c9
fix: incorrect-tool references in mise.toml
bashandbone 1b079c0
fix: add mise-debug input for enhanced output in setup-mise-env actio…
bashandbone e448519
Apply suggestions from code review
bashandbone f82e802
Change condition for inserting Free-Threaded Python
bashandbone 3733e41
Add MISE_PYTHON_COMPILE variable to action.yml
bashandbone 63949f2
fix: remove minor version check for uv
bashandbone 108b400
fix: update dependency references for type checking to use latest ver…
bashandbone a069b52
fix: streamline system dependency installation and update free-thread…
bashandbone c1d1cae
fix: add command to list available Python versions in mise setup
bashandbone 53f5b2e
fix: correct command for creating virtual environment in mise.toml
bashandbone 6c97503
fix: remove compile settings to experiment if cause of a CI failure.
bashandbone bb6d19b
fix: refine free-threaded Python installation process in CI setup
bashandbone 7247982
fix: enhance cloud setup script with informative messages and streaml…
bashandbone 6ba86ed
fix: add message to ensure Python version is installed during cloud s…
bashandbone 0d22f2e
fix: improve cloud setup script to ensure mise activation and Python …
bashandbone 7612f13
fix: enhance cloud setup with mise doctor output and ensure latest uv…
bashandbone d40d78e
fix: enhance cloud setup with improved mise activation and debugging …
bashandbone 4ed9426
fix: remove auto-venv to debug CI issue
bashandbone d4f45d3
Apply suggestions from code review
bashandbone File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
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
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -27,6 +27,28 @@ inputs: | |||||||||
| description: Task profile to use for mise setup one of 'minimal', 'reviewer', 'dev' | ||||||||||
| required: true | ||||||||||
| default: 'minimal' | ||||||||||
| mise-debug: | ||||||||||
| description: Enable debug output for mise commands | ||||||||||
| required: false | ||||||||||
| default: 'false' | ||||||||||
|
|
||||||||||
| outputs: | ||||||||||
| # MISE_PATH, MISE_ENV, and PYTHON_PATH are typically in uppercase and may be case sensitive in some environments | ||||||||||
| MISE_PATH: | ||||||||||
| description: Path to mise executable | ||||||||||
| value: ${{ steps.mise-outputs.outputs.MISE_PATH }} | ||||||||||
| MISE_ENV: | ||||||||||
| description: Mise environment name | ||||||||||
| value: ${{ steps.mise-outputs.outputs.MISE_ENV }} | ||||||||||
| PROFILE: | ||||||||||
| description: Profile used for setup | ||||||||||
| value: ${{ steps.mise-outputs.outputs.PROFILE }} | ||||||||||
| PYTHON_PATH: | ||||||||||
| description: Path to Python executable | ||||||||||
| value: ${{ steps.mise-outputs.outputs.PYTHON_PATH }} | ||||||||||
| MISE_PYTHON_VERSION: | ||||||||||
| description: Python version used by mise | ||||||||||
| value: ${{ steps.mise-outputs.outputs.MISE_PYTHON_VERSION }} | ||||||||||
|
|
||||||||||
| runs: | ||||||||||
| using: composite | ||||||||||
|
|
@@ -36,27 +58,56 @@ runs: | |||||||||
| uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 | ||||||||||
| with: | ||||||||||
| fetch-depth: ${{ inputs.fetch-depth }} | ||||||||||
| - name: Free up disk space | ||||||||||
| shell: bash | ||||||||||
| run: ./scripts/dev-env/ci-free-disk-space.sh | ||||||||||
| - name: Install system dependencies | ||||||||||
| shell: bash | ||||||||||
| run: | | ||||||||||
| sudo apt-get update && sudo apt-get install -y zsh curl git | ||||||||||
| - name: Free up disk space | ||||||||||
| # ensure build-python dependencies are installed | ||||||||||
| sudo mkdir -p /etc/apt/apt.conf.d/ && echo 'DPkg::Post-Invoke {"/bin/rm -f /var/cache/apt/archives/*.deb || true";};' | sudo tee /etc/apt/apt.conf.d/99-local-cleanup | ||||||||||
| sudo apt-get update && sudo apt-get install -y curl git libreadline-dev libbz2-dev zlib1g-dev | ||||||||||
|
|
||||||||||
| - name: Set up Environment for Free-Threaded Python | ||||||||||
| shell: bash | ||||||||||
| run: ./scripts/dev-env/ci-free-disk-space.sh | ||||||||||
| env: | ||||||||||
| MISE_PYTHON_VERSION: ${{ inputs.python-version }} | ||||||||||
| UV_PYTHON: ${{ inputs.python-version }} | ||||||||||
| PYTHON_VERSION: ${{ inputs.python-version }} | ||||||||||
| MISE_VERBOSE: ${{ inputs.mise-debug }} | ||||||||||
| run: | | ||||||||||
| if [[ "${PYTHON_VERSION}" != *t ]]; then | ||||||||||
| echo "Using standard Python version ${PYTHON_VERSION}..." | ||||||||||
| echo "MISE_PYTHON_VERSION=${PYTHON_VERSION}" >> "$GITHUB_ENV" | ||||||||||
| echo "UV_PYTHON=${PYTHON_VERSION}" >> "$GITHUB_ENV" | ||||||||||
| exit 0 | ||||||||||
| fi | ||||||||||
| echo "Setting up environment for free-threaded Python ${PYTHON_VERSION}..." | ||||||||||
| python_version="${PYTHON_VERSION}" | ||||||||||
| base_version="${python_version%t}" | ||||||||||
| echo "Base version: ${base_version}" | ||||||||||
| # I couldn't get Mise's handling of free-threaded Python versions to work correctly... | ||||||||||
| # So, instead, we'll let mise install the base version, and use uv to get the free-threaded version | ||||||||||
| # and then sync uv and mise and tell mise to use that version | ||||||||||
| echo "MISE_PYTHON_VERSION=${base_version}" >> "$GITHUB_ENV" | ||||||||||
| echo "UV_PYTHON=${base_version}+freethreaded" >> "$GITHUB_ENV" | ||||||||||
|
|
||||||||||
| - name: Setup Mise for Minimal Profile | ||||||||||
| if: inputs.profile == 'minimal' | ||||||||||
| uses: jdx/mise-action@eb508e65f0eb73d4fc9fc9505569833136217cc9 | ||||||||||
| env: | ||||||||||
| MISE_YES: 1 | ||||||||||
| MISE_EXPERIMENTAL: 1 | ||||||||||
| UV_PYTHON: ${{ inputs.python-version }} | ||||||||||
| UV_PYTHON: ${{ env.UV_PYTHON }} | ||||||||||
| MISE_VERBOSE: ${{ inputs.mise-debug }} | ||||||||||
| MISE_PYTHON_COMPILE: 0 | ||||||||||
| with: | ||||||||||
| github_token: ${{ inputs.github-token }} | ||||||||||
| experimental: true | ||||||||||
| install: true | ||||||||||
| cache: true | ||||||||||
| cache_key_prefix: ${{ inputs.profile }} | ||||||||||
| env: false | ||||||||||
| id: mise-setup-minimal | ||||||||||
| - name: Setup Mise for Reviewer Profile | ||||||||||
| if: inputs.profile == 'reviewer' | ||||||||||
|
|
@@ -65,16 +116,22 @@ runs: | |||||||||
| MISE_YES: 1 | ||||||||||
| MISE_EXPERIMENTAL: 1 | ||||||||||
| MISE_ENV: dev | ||||||||||
| UV_PYTHON: ${{ inputs.python-version }} | ||||||||||
| UV_PYTHON: ${{ env.UV_PYTHON }} | ||||||||||
| MISE_VERBOSE: ${{ inputs.mise-debug }} | ||||||||||
| MISE_PYTHON_COMPILE: 0 | ||||||||||
| with: | ||||||||||
| github_token: ${{ inputs.github-token }} | ||||||||||
| experimental: true | ||||||||||
| install: true | ||||||||||
| cache: true | ||||||||||
| cache_key_prefix: ${{ inputs.profile }} | ||||||||||
| env: false | ||||||||||
| - name: Activate Reviewer Profile Environment | ||||||||||
| if: inputs.profile == 'reviewer' | ||||||||||
| shell: bash | ||||||||||
| env: | ||||||||||
| MISE_GITHUB_TOKEN: ${{ inputs.github-token }} | ||||||||||
| MISE_VERBOSE: ${{ inputs.mise-debug }} | ||||||||||
| id: mise-setup-reviewer | ||||||||||
| run: | | ||||||||||
| uv sync | ||||||||||
|
|
@@ -85,23 +142,72 @@ runs: | |||||||||
| MISE_YES: 1 | ||||||||||
| MISE_EXPERIMENTAL: 1 | ||||||||||
| MISE_ENV: dev | ||||||||||
| UV_PYTHON: ${{ inputs.python-version }} | ||||||||||
| MISE_VERBOSE: ${{ inputs.mise-debug }} | ||||||||||
| UV_PYTHON: ${{ env.UV_PYTHON }} | ||||||||||
| MISE_PYTHON_COMPILE: 0 | ||||||||||
| with: | ||||||||||
| github_token: ${{ inputs.github-token }} | ||||||||||
| experimental: true | ||||||||||
| install: true | ||||||||||
| cache: true | ||||||||||
| cache_key_prefix: ${{ inputs.profile }} | ||||||||||
| env: false | ||||||||||
| id: mise-setup-dev | ||||||||||
| - name: Insert Free-Threaded Python into Dev Profile | ||||||||||
| if: inputs.profile == 'dev' && endsWith(inputs.python-version, 't') | ||||||||||
| shell: bash | ||||||||||
| id: mise-setup-dev-insert | ||||||||||
| env: | ||||||||||
| MISE_PYTHON_VERSION: ${{ env.MISE_PYTHON_VERSION }} | ||||||||||
| UV_PYTHON: ${{ env.UV_PYTHON }} | ||||||||||
| MISE_VERBOSE: ${{ inputs.mise-debug }} | ||||||||||
| run: | | ||||||||||
| echo "Inserting free-threaded Python version $UV_PYTHON into dev profile..." | ||||||||||
| mise use -g uv@latest | ||||||||||
bashandbone marked this conversation as resolved.
Show resolved
Hide resolved
|
||||||||||
| uv python install -U "cpython-${UV_PYTHON}" 2>&1 | ||||||||||
| # after a lot of trial and error, it seems that combined with setting MISE_PYTHON_VERSION to the base version, and using uv to install the free-threaded version, and syncing uv and mise, this works | ||||||||||
| # the favored version is now the free-threaded version -- as mise list python will show: | ||||||||||
|
Comment on lines
+168
to
+169
|
||||||||||
| # after a lot of trial and error, it seems that combined with setting MISE_PYTHON_VERSION to the base version, and using uv to install the free-threaded version, and syncing uv and mise, this works | |
| # the favored version is now the free-threaded version -- as mise list python will show: | |
| # Set MISE_PYTHON_VERSION to base version, install free-threaded via uv, then sync. | |
| # After these steps, the favored version is free-threaded (see: mise list python). |
bashandbone marked this conversation as resolved.
Show resolved
Hide resolved
bashandbone marked this conversation as resolved.
Show resolved
Hide resolved
bashandbone marked this conversation as resolved.
Show resolved
Hide resolved
bashandbone marked this conversation as resolved.
Show resolved
Hide resolved
bashandbone marked this conversation as resolved.
Show resolved
Hide resolved
bashandbone marked this conversation as resolved.
Show resolved
Hide resolved
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] Setting
MISE_PYTHON_COMPILE=0disables Python compilation which may impact performance for compute-intensive operations. While this speeds up installation in CI, it means tests run on unoptimized Python builds.Consider documenting this trade-off in a comment, or making it configurable:
This helps future maintainers understand the performance implications.