Move to uv
(#21)
#270
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Continuous Integration and Deployment | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
schedule: | |
- cron: "0 3 * * 1" # Run every Monday 3 am | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install uv | |
uses: astral-sh/setup-uv@v4 | |
with: | |
version: "0.5.10" | |
- name: Install tkinter for GUI | |
run: sudo apt install python3-tk -y | |
- name: Set up env | |
run: uv sync --all-extras | |
- name: Run ruff format | |
run: uv run ruff format | |
- name: Run ruff linter for mdp folder | |
run: uv run ruff check src/behavior_generation_lecture_python/mdp | |
- name: Run mypy for mdp folder | |
run: uv run mypy src/behavior_generation_lecture_python/mdp | |
- name: Test | |
run: | | |
export DISPLAY=:99 | |
Xvfb :99 & | |
uv run pytest | |
- name: Check coverage | |
run: | | |
export DISPLAY=:99 | |
Xvfb :99 & | |
uv run pytest --cov=src --cov-fail-under=85 | |
- name: Copy notebooks to docs folder | |
run: cp -r notebooks/* docs/notebooks | |
- name: Build docs | |
run: | | |
uv run ipython kernel install --user --name=behavior_generation_lecture | |
uv run mkdocs build | |
deploy-pages: | |
runs-on: ubuntu-latest | |
needs: [test] | |
if: github.ref == 'refs/heads/main' | |
concurrency: deploy-${{ github.ref }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install uv | |
uses: astral-sh/setup-uv@v4 | |
with: | |
version: "0.5.10" | |
- name: Set up env | |
run: uv sync --all-extras | |
- name: Copy notebooks to docs folder | |
run: cp -r notebooks/* docs/notebooks | |
- run: | | |
uv run ipython kernel install --user --name=behavior_generation_lecture | |
uv run mkdocs gh-deploy --force | |