chore(ci): replace local uv setup action with astral-sh/setup-uv@v6#8491
Conversation
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughThis change removes the local composite GitHub Action for setting up "uv" and updates all workflow files to use the external Changes
Sequence Diagram(s)sequenceDiagram
participant Workflow
participant astral-sh/setup-uv
Workflow->>astral-sh/setup-uv: Invoke setup-uv@v6 with python-version, enable-cache, cache-dependency-glob
astral-sh/setup-uv-->>Workflow: Sets up Python environment with uv and caching
Workflow->>Workflow: Continue with job steps
Possibly related PRs
Suggested labels
Suggested reviewers
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Actionable comments posted: 9
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (12)
.github/actions/setup-uv/action.yml(0 hunks).github/workflows/codeflash.yml(1 hunks).github/workflows/docker-build.yml(2 hunks).github/workflows/integration_tests.yml(1 hunks).github/workflows/lint-py.yml(1 hunks).github/workflows/nightly_build.yml(1 hunks).github/workflows/python_test.yml(3 hunks).github/workflows/release.yml(2 hunks).github/workflows/release_nightly.yml(2 hunks).github/workflows/store_pytest_durations.yml(1 hunks).github/workflows/style-check-py.yml(1 hunks).github/workflows/typescript_test.yml(1 hunks)
💤 Files with no reviewable changes (1)
- .github/actions/setup-uv/action.yml
🧰 Additional context used
🪛 actionlint (1.7.7)
.github/workflows/nightly_build.yml
36-36: property "python-version" is not defined in object type {}
(expression)
.github/workflows/codeflash.yml
30-30: property "python-version" is not defined in object type {}
(expression)
.github/workflows/release.yml
70-70: property "python-version" is not defined in object type {}
(expression)
138-138: property "python-version" is not defined in object type {}
(expression)
.github/workflows/docker-build.yml
198-198: property "python-version" is not defined in object type {}
(expression)
.github/workflows/store_pytest_durations.yml
30-30: property "python-version" is not defined in object type {}
(expression)
.github/workflows/release_nightly.yml
80-80: property "python-version" is not defined in object type {}
(expression)
161-161: property "python-version" is not defined in object type {}
(expression)
🔇 Additional comments (8)
.github/workflows/integration_tests.yml (1)
47-50: Standardize environment setup with external setup-uv action
Replaced the local composite action withastral-sh/setup-uv@v6, enabled cache viauv.lock, and correctly passing${{ matrix.python-version }}to align with the matrix..github/workflows/lint-py.yml (1)
33-36: Adopt external setup-uv action with caching
This step correctly usesastral-sh/setup-uv@v6, enables cache onuv.lock, and passes${{ matrix.python-version }}matching the defined matrix..github/workflows/python_test.yml (3)
51-54: Updatebuildjob to use external setup-uv with cache
Thebuildjob properly replaces the local action withastral-sh/setup-uv@v6, enabling caching onuv.lockand passing${{ matrix.python-version }}per the matrix.
77-80: Adopt external setup-uv inintegration-testsjob
Theintegration-testsstep is updated correctly, enabling cache and using${{ matrix.python-version }}aligned with its matrix.
100-103: Use external setup-uv intest-clijob
Thetest-clijob correctly switches toastral-sh/setup-uv@v6with caching enabled and${{ matrix.python-version }}sourced from its matrix..github/workflows/style-check-py.yml (1)
21-25: Use external setup-uv action with caching
Invocation ofastral-sh/setup-uv@v6withenable-cache,cache-dependency-glob, and the matrix-sourcedpython-versionis consistent with other workflows..github/workflows/docker-build.yml (1)
344-348: Correctly using matrix inrestart-spacejob
Therestart-spacejob defines a matrix forpython-version, so referencing${{ matrix.python-version }}is valid here..github/workflows/typescript_test.yml (1)
295-297: Consistent external action usageSwitching from the local composite to
astral-sh/setup-uv@v6with caching enabled aligns this workflow with other standard setups.
| with: | ||
| enable-cache: true | ||
| cache-dependency-glob: "uv.lock" | ||
| python-version: ${{ matrix.python-version }} | ||
| - name: Install the project |
There was a problem hiding this comment.
Undefined matrix.python-version in build job
The build job references ${{ matrix.python-version }} but does not define a matrix, leading to errors.
Introduce a strategy matrix, for example:
@@ build:
needs: [get-version, setup]
+ strategy:
+ matrix:
+ python-version: ['3.13']
steps:
- name: "Setup Environment"
uses: astral-sh/setup-uv@v6
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
- python-version: ${{ matrix.python-version }}
+ python-version: ${{ matrix.python-version }}📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| with: | |
| enable-cache: true | |
| cache-dependency-glob: "uv.lock" | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install the project | |
| build: | |
| needs: [get-version, setup] | |
| strategy: | |
| matrix: | |
| python-version: ['3.13'] | |
| steps: | |
| - name: "Setup Environment" | |
| uses: astral-sh/setup-uv@v6 | |
| with: | |
| enable-cache: true | |
| cache-dependency-glob: "uv.lock" | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install the project |
🧰 Tools
🪛 actionlint (1.7.7)
198-198: property "python-version" is not defined in object type {}
(expression)
🤖 Prompt for AI Agents
In .github/workflows/docker-build.yml around lines 195 to 199, the build job
uses the undefined variable matrix.python-version causing errors. To fix this,
define a strategy matrix for the build job that includes python-version values,
such as a list of Python versions to test against. This will properly initialize
matrix.python-version and resolve the reference error.
…angflow-ai#8491) * chore: remove setup-uv action configuration file as it is no longer needed * chore: update setup-uv action to use the official action across all workflows * chore: disable cache pruning in all workflows to improve build stability * chore: update Python version to 3.13 and add pre-release description in workflows
Summary by CodeRabbit
uv.lockfile for more efficient workflow runs.