Files

73 lines
1.7 KiB
YAML

name: CI
on:
push:
branches:
- "**"
pull_request:
branches:
- "**"
jobs:
check-requirements:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Cache uv for venv speed up
uses: actions/cache@v4
with:
path: ~/.cache/uv
key: uv-cache-${{ hashFiles('uv.lock') }}
- name: Install mise
run: |
curl https://mise.run | sh
echo "$HOME/.local/bin" >> $GITHUB_PATH
echo "$HOME/.local/share/mise/shims" >> $GITHUB_PATH
- name: Install tools from mise
run: |
mise install
mise run setup-dev
- name: Regenerate requirements.txt
run: mise run requirements-txt
- name: Check for changes in requirements.txt
run: |
if ! git diff --exit-code requirements.txt; then
echo "requirements.txt is out of date. Please run 'mise run requirements-txt' and commit the updated file."
exit 1
fi
test:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Cache uv for venv speed up
uses: actions/cache@v4
with:
path: ~/.cache/uv
key: uv-cache-${{ hashFiles('uv.lock') }}
- name: Install mise
run: |
curl https://mise.run | sh
echo "$HOME/.local/bin" >> $GITHUB_PATH
echo "$HOME/.local/share/mise/shims" >> $GITHUB_PATH
- name: Install tools from mise
run: |
mise install
mise run setup-dev
- name: Lint
run: mise run lint
- name: Test
run: mise run test