903dd292b3
This file is too big for an LLM context window and several contributors have complained about it being too scary to touch. This also gets us collapsible sections in the UI. I renamed some jobs for clarity in the meantime. And added a meta-job for required checks passing so we can avoid churn in our "Settings" when we change job names. Note this was entirely refactored by Claude. --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
183 lines
5.1 KiB
YAML
183 lines
5.1 KiB
YAML
on:
|
|
workflow_call:
|
|
inputs:
|
|
sha:
|
|
description: "The commit SHA to use for artifact names"
|
|
required: true
|
|
type: string
|
|
|
|
permissions: {}
|
|
|
|
env:
|
|
CARGO_INCREMENTAL: 0
|
|
CARGO_NET_RETRY: 10
|
|
CARGO_TERM_COLOR: always
|
|
RUSTUP_MAX_RETRIES: 10
|
|
|
|
jobs:
|
|
smoke-test-linux:
|
|
name: "linux"
|
|
timeout-minutes: 10
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: "Download binary"
|
|
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
|
with:
|
|
name: uv-linux-libc-${{ inputs.sha }}
|
|
|
|
- name: "Prepare binary"
|
|
run: |
|
|
chmod +x ./uv
|
|
chmod +x ./uvx
|
|
|
|
- name: "Smoke test"
|
|
run: |
|
|
./uv run scripts/smoke-test
|
|
|
|
- name: "Test shell completions"
|
|
run: |
|
|
eval "$(./uv generate-shell-completion bash)"
|
|
eval "$(./uvx --generate-shell-completion bash)"
|
|
|
|
smoke-test-linux-aarch64:
|
|
name: "linux aarch64"
|
|
timeout-minutes: 10
|
|
runs-on: github-ubuntu-24.04-aarch64-2
|
|
steps:
|
|
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: "Download binary"
|
|
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
|
with:
|
|
name: uv-linux-aarch64-${{ inputs.sha }}
|
|
|
|
- name: "Prepare binary"
|
|
run: |
|
|
chmod +x ./uv
|
|
chmod +x ./uvx
|
|
|
|
- name: "Smoke test"
|
|
run: |
|
|
./uv run scripts/smoke-test
|
|
|
|
- name: "Test shell completions"
|
|
run: |
|
|
eval "$(./uv generate-shell-completion bash)"
|
|
eval "$(./uvx --generate-shell-completion bash)"
|
|
|
|
smoke-test-linux-musl:
|
|
name: "linux musl"
|
|
timeout-minutes: 10
|
|
runs-on: ubuntu-latest
|
|
container: alpine:latest
|
|
steps:
|
|
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: "Download binary"
|
|
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
|
with:
|
|
name: uv-linux-musl-${{ inputs.sha }}
|
|
|
|
- name: "Prepare binary"
|
|
run: |
|
|
chmod +x ./uv
|
|
chmod +x ./uvx
|
|
|
|
- name: "Smoke test"
|
|
run: |
|
|
./uv run scripts/smoke-test
|
|
|
|
smoke-test-macos:
|
|
name: "macos"
|
|
timeout-minutes: 10
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: "Download binary"
|
|
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
|
with:
|
|
name: uv-macos-x86_64-${{ inputs.sha }}
|
|
|
|
- name: "Prepare binary"
|
|
run: |
|
|
chmod +x ./uv
|
|
chmod +x ./uvx
|
|
|
|
- name: "Smoke test"
|
|
run: |
|
|
./uv run scripts/smoke-test
|
|
|
|
- name: "Test shell completions"
|
|
run: |
|
|
eval "$(./uv generate-shell-completion bash)"
|
|
eval "$(./uvx --generate-shell-completion bash)"
|
|
|
|
smoke-test-windows-x86_64:
|
|
name: "windows x86_64"
|
|
timeout-minutes: 10
|
|
runs-on: windows-latest
|
|
steps:
|
|
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: "Download binary"
|
|
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
|
with:
|
|
name: uv-windows-x86_64-${{ inputs.sha }}
|
|
|
|
- name: "Smoke test"
|
|
working-directory: ${{ env.UV_WORKSPACE }}
|
|
run: |
|
|
./uv run scripts/smoke-test
|
|
|
|
- name: "Test uv shell completions"
|
|
working-directory: ${{ env.UV_WORKSPACE }}
|
|
run: |
|
|
(& ./uv generate-shell-completion powershell) | Out-String | Invoke-Expression
|
|
|
|
- name: "Test uvx shell completions"
|
|
working-directory: ${{ env.UV_WORKSPACE }}
|
|
run: |
|
|
(& ./uvx --generate-shell-completion powershell) | Out-String | Invoke-Expression
|
|
|
|
smoke-test-windows-aarch64:
|
|
name: "windows aarch64"
|
|
timeout-minutes: 10
|
|
runs-on: windows-11-arm
|
|
steps:
|
|
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
|
|
with:
|
|
persist-credentials: false
|
|
|
|
- name: "Download binary"
|
|
uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4.3.0
|
|
with:
|
|
name: uv-windows-aarch64-${{ inputs.sha }}
|
|
|
|
- name: "Smoke test"
|
|
working-directory: ${{ env.UV_WORKSPACE }}
|
|
run: |
|
|
./uv run scripts/smoke-test
|
|
|
|
- name: "Test uv shell completions"
|
|
working-directory: ${{ env.UV_WORKSPACE }}
|
|
run: |
|
|
(& ./uv generate-shell-completion powershell) | Out-String | Invoke-Expression
|
|
|
|
- name: "Test uvx shell completions"
|
|
working-directory: ${{ env.UV_WORKSPACE }}
|
|
run: |
|
|
(& ./uvx --generate-shell-completion powershell) | Out-String | Invoke-Expression
|