mirror of
https://github.com/astral-sh/setup-uv.git
synced 2025-04-07 07:58:48 -04:00
Make sure the default tool bin dir or the user supplied is added to the PATH. On Windows the tool dir and tool bin dir is moved to the TMP dir to take advantage of the fact that on GitHub hosted Windows runners this is on the faster D: drive
125 lines
3.3 KiB
YAML
125 lines
3.3 KiB
YAML
name: "test"
|
|
on:
|
|
pull_request:
|
|
push:
|
|
branches:
|
|
- main
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: actions/setup-node@v4
|
|
with:
|
|
node-version: "20"
|
|
- run: |
|
|
npm install
|
|
- run: |
|
|
npm run all
|
|
- name: Make sure no changes from linters are detected
|
|
run: |
|
|
git diff --exit-code
|
|
test-default-version:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [ubuntu-latest, macos-latest, macos-14, oracle-aarch64]
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Install default version
|
|
uses: ./
|
|
- run: uv sync
|
|
working-directory: __tests__/fixtures/uv-project
|
|
test-specific-version:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [ubuntu-latest, macos-latest, macos-14, oracle-aarch64]
|
|
uv-version: ["latest", "0.3.0", "0.3.2", "0.3", "0.3.x", ">=0.3.0"]
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Install version ${{ matrix.uv-version }}
|
|
uses: ./
|
|
with:
|
|
version: ${{ matrix.uv-version }}
|
|
- run: uv sync
|
|
working-directory: __tests__/fixtures/uv-project
|
|
test-semver-range:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [ubuntu-latest, oracle-aarch64]
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Install version 0.3
|
|
id: setup-uv
|
|
uses: ./
|
|
with:
|
|
version: "0.3"
|
|
- name: Correct version gets installed
|
|
run: |
|
|
if [ "$UV_VERSION" != "0.3.5" ]; then
|
|
exit 1
|
|
fi
|
|
env:
|
|
UV_VERSION: ${{ steps.setup-uv.outputs.uv-version }}
|
|
test-checksum:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [ubuntu-latest, oracle-aarch64]
|
|
checksum:
|
|
["4d9279ad5ca596b1e2d703901d508430eb07564dc4d8837de9e2fca9c90f8ecd"]
|
|
exclude:
|
|
- os: oracle-aarch64
|
|
checksum: "4d9279ad5ca596b1e2d703901d508430eb07564dc4d8837de9e2fca9c90f8ecd"
|
|
include:
|
|
- os: oracle-aarch64
|
|
checksum: "e11b01402ab645392c7ad6044db63d37e4fd1e745e015306993b07695ea5f9f8"
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Checksum matches expected
|
|
uses: ./
|
|
with:
|
|
version: "0.3.2"
|
|
checksum: ${{ matrix.checksum }}
|
|
test-with-explicit-token:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Install default version
|
|
uses: ./
|
|
with:
|
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
- run: uv sync
|
|
working-directory: __tests__/fixtures/uv-project
|
|
test-uvx:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Install default version
|
|
uses: ./
|
|
- run: uvx ruff --version
|
|
test-tool-install:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os:
|
|
[
|
|
ubuntu-latest,
|
|
macos-latest,
|
|
macos-14,
|
|
windows-latest,
|
|
oracle-aarch64,
|
|
]
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Install default version
|
|
uses: ./
|
|
- run: uv tool install ruff
|
|
- run: ruff --version
|