Skip to content

Commit

Permalink
Split smoke tests into separate jobs
Browse files Browse the repository at this point in the history
  • Loading branch information
zanieb committed Jan 21, 2025
1 parent ce48c97 commit 11adbab
Showing 1 changed file with 71 additions and 45 deletions.
116 changes: 71 additions & 45 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -193,29 +193,13 @@ jobs:
with:
tool: cargo-nextest

- name: "Cargo build"
run: cargo build --profile test --bin uv --bin uvx

- name: "Cargo test"
run: |
cargo nextest run \
--features python-patch \
--workspace \
--status-level skip --failure-output immediate-final --no-fail-fast -j 20 --final-status-level slow
- name: "Smoke test"
run: |
uv="./target/debug/uv"
$uv venv -v
$uv pip install ruff -v
- name: "Smoke test completion"
run: |
uv="./target/debug/uv"
uvx="./target/debug/uvx"
eval "$($uv generate-shell-completion bash)"
eval "$($uvx --generate-shell-completion bash)"
cargo-test-macos:
timeout-minutes: 10
needs: determine_changes
Expand All @@ -241,22 +225,13 @@ jobs:
with:
tool: cargo-nextest

- name: "Cargo build"
run: cargo build --profile test --bin uv --bin uvx

- name: "Cargo test"
run: |
cargo nextest run \
--features python-patch \
--workspace \
--status-level skip --failure-output immediate-final --no-fail-fast -j 12 --final-status-level slow
- name: "Smoke test"
run: |
uv="./target/debug/uv"
$uv venv -v
$uv pip install ruff -v
cargo-test-windows:
timeout-minutes: 15
needs: determine_changes
Expand Down Expand Up @@ -291,9 +266,6 @@ jobs:
with:
tool: cargo-nextest

- name: "Cargo build"
run: cargo build --profile test --bin uv --bin uvx

- name: "Cargo test"
working-directory: ${{ env.UV_WORKSPACE }}
env:
Expand All @@ -303,22 +275,6 @@ jobs:
run: |
cargo nextest run --no-default-features --features python,pypi,python-managed --workspace --status-level skip --failure-output immediate-final --no-fail-fast -j 20 --final-status-level slow
- name: "Smoke test"
working-directory: ${{ env.UV_WORKSPACE }}
run: |
Set-Alias -Name uv -Value ./target/debug/uv
uv venv -v
uv pip install ruff -v
- name: "Smoke test completion"
working-directory: ${{ env.UV_WORKSPACE }}
shell: powershell
run: |
Set-Alias -Name uv -Value ./target/debug/uv
Set-Alias -Name uvx -Value ./target/debug/uvx
(& uv generate-shell-completion powershell) | Out-String | Invoke-Expression
(& uvx --generate-shell-completion powershell) | Out-String | Invoke-Expression
# Separate jobs for the nightly crate
windows-trampoline-check:
timeout-minutes: 15
Expand Down Expand Up @@ -466,7 +422,9 @@ jobs:
uses: actions/upload-artifact@v4
with:
name: uv-linux-${{ github.sha }}
path: ./target/x86_64-unknown-linux-musl/debug/uv
path: |
./target/x86_64-unknown-linux-musl/debug/uv
./target/x86_64-unknown-linux-musl/debug/uvx
retention-days: 1

build-binary-macos-aarch64:
Expand Down Expand Up @@ -655,6 +613,74 @@ jobs:
./uv venv
./${{ matrix.command }}
smoke-test-linux:
timeout-minutes: 10
needs: build-binary-linux
name: "smoke test | linux"
runs-on: ubuntu-latest
steps:
- name: "Download binary"
uses: actions/download-artifact@v4
with:
name: uv-linux-${{ github.sha }}

- name: "Prepare binary"
run: |
chmod +x ./uv
chmod +x ./uvx
- name: "Smoke test"
run: |
./uv venv -v
./uv pip install ruff -v
./uvx -v ruff --version
eval "$(./uv generate-shell-completion bash)"
eval "$(./uvx --generate-shell-completion bash)"
smoke-test-macos:
timeout-minutes: 10
needs: build-binary-macos-x86_64
name: "smoke test | macos"
runs-on: macos-latest
steps:
- name: "Download binary"
uses: actions/download-artifact@v4
with:
name: uv-macos-x86_64-${{ github.sha }}

- name: "Prepare binary"
run: |
chmod +x ./uv
chmod +x ./uvx
- name: "Smoke test"
run: |
./uv venv -v
./uv pip install ruff -v
./uvx -v ruff --version
eval "$(./uv generate-shell-completion bash)"
eval "$(./uvx --generate-shell-completion bash)"
smoke-test-windows:
timeout-minutes: 10
needs: build-binary-windows
name: "smoke test | windows"
runs-on: windows-latest
steps:
- name: "Download binary"
uses: actions/download-artifact@v4
with:
name: uv-windows-${{ github.sha }}

- name: "Smoke test"
working-directory: ${{ env.UV_WORKSPACE }}
run: |
./uv venv -v
./uv pip install ruff -v
./uvx -v ruff --version
(& ./uv generate-shell-completion powershell) | Out-String | Invoke-Expression
(& ./uvx --generate-shell-completion powershell) | Out-String | Invoke-Expression
integration-test-conda:
timeout-minutes: 10
needs: build-binary-linux
Expand Down

0 comments on commit 11adbab

Please sign in to comment.