name: CI on: push: branches: [main, master] pull_request: jobs: lint: runs-on: ubuntu-latest container: image: python:3.12-slim steps: - name: Install git run: apt-get update && apt-get install -y --no-install-recommends git - name: Checkout run: | git clone --depth=1 --branch="${GITHUB_REF_NAME}" https://git.golfcards.club/alee/fieldwitness.git "$GITHUB_WORKSPACE" || git clone --depth=1 https://git.golfcards.club/alee/fieldwitness.git "$GITHUB_WORKSPACE" - run: pip install ruff black - name: Check formatting run: black --check --target-version py312 src/ tests/ frontends/ - name: Lint run: ruff check src/ tests/ frontends/ typecheck: runs-on: ubuntu-latest container: image: python:3.12-slim steps: - name: Install git run: apt-get update && apt-get install -y --no-install-recommends git - name: Checkout run: | git clone --depth=1 --branch="${GITHUB_REF_NAME}" https://git.golfcards.club/alee/fieldwitness.git "$GITHUB_WORKSPACE" || git clone --depth=1 https://git.golfcards.club/alee/fieldwitness.git "$GITHUB_WORKSPACE" - run: pip install mypy - name: Typecheck run: mypy src/ # TODO: Re-enable once stego/attest are available from git.golfcards.club # test: # runs-on: ubuntu-latest # container: # image: python:3.12-slim # steps: # - name: Install git # run: apt-get update && apt-get install -y --no-install-recommends git # - name: Checkout # run: | # git clone --depth=1 --branch="${GITHUB_REF_NAME}" https://git.golfcards.club/alee/fieldwitness.git "$GITHUB_WORKSPACE" || git clone --depth=1 https://git.golfcards.club/alee/fieldwitness.git "$GITHUB_WORKSPACE" # - name: Install dependencies # run: pip install -e ".[dev]" # - name: Run tests # run: pytest --cov=fieldwitness --cov-report=term-missing