57 lines
1.4 KiB
YAML
57 lines
1.4 KiB
YAML
name: Build Package
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
python-version:
|
|
required: false
|
|
type: string
|
|
default: "3.10"
|
|
link-check:
|
|
required: false
|
|
type: boolean
|
|
default: true
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: 📥 Checkout the repository
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
|
|
- name: 🐍 Install uv and set Python version ${{ inputs.python-version }}
|
|
uses: astral-sh/setup-uv@fac544c07dec837d0ccb6301d7b5580bf5edae39 # v8.2.0
|
|
with:
|
|
python-version: ${{ inputs.python-version }}
|
|
activate-environment: true
|
|
|
|
- name: 🎨 Augment paths in README
|
|
run: |
|
|
python .github/scripts/augment_links.py README.md --branch ${{ github.head_ref || github.ref_name }}
|
|
cat README.md
|
|
|
|
- name: 🔗 Link Checker
|
|
if: inputs.link-check
|
|
uses: lycheeverse/lychee-action@v2
|
|
with:
|
|
lycheeVersion: v0.22.0
|
|
args: |
|
|
--config .github/lychee.toml
|
|
README.md
|
|
fail: true
|
|
|
|
- name: 🏗️ Build source and wheel distributions
|
|
run: |
|
|
uv sync --frozen --group build
|
|
uv build
|
|
twine check --strict dist/*
|
|
|
|
- name: 📤 Upload distribution artifacts
|
|
uses: actions/upload-artifact@v7
|
|
with:
|
|
name: dist
|
|
path: dist/
|