33 lines
713 B
YAML
33 lines
713 B
YAML
name: CI
|
|
|
|
on:
|
|
pull_request:
|
|
|
|
concurrency:
|
|
group: ci-pr-${{ github.event.pull_request.number || github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
ci:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
CI_IMAGE: nohype-ci:${{ github.run_id }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Build
|
|
run: docker build -t "$CI_IMAGE" .
|
|
|
|
- name: Ruff
|
|
run: docker run --rm "$CI_IMAGE" ruff check .
|
|
|
|
- name: Mypy
|
|
run: docker run --rm "$CI_IMAGE" mypy apps config
|
|
|
|
- name: Pytest
|
|
run: docker run --rm -e DATABASE_URL=sqlite:////tmp/ci.sqlite3 "$CI_IMAGE" pytest
|
|
|
|
- name: Remove CI image
|
|
if: always()
|
|
run: docker image rm -f "$CI_IMAGE" || true
|