diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 4c0e1417..9d63d30b 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -19,21 +19,21 @@ jobs: runs-on: ubuntu-22.04 strategy: matrix: - # while we are still private, don't go crazy with the Python versions as they eat up CI minutes + # Don't go crazy with the Python versions as the test suite is a beast. + # Just test the minimum version we support. python-version: ["3.10"] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip - pip install pytest pip install .[tests] - name: Check out MS tool @@ -55,7 +55,17 @@ jobs: - name: Test with pytest run: | - python -m pytest + python -m pytest --cov-report=xml --cov=cumulus_etl + + - name: Generate coverage report + if: github.ref != 'refs/heads/main' + uses: orgoro/coverage@v3.1 + with: + coverageFile: coverage.xml + token: ${{ secrets.GITHUB_TOKEN }} + thresholdAll: .94 + thresholdNew: 1 + thresholdModified: 1 nlp-regression: runs-on: ubuntu-latest @@ -99,15 +109,14 @@ jobs: echo "All Good!" lint: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Install linters - # black is synced with the .pre-commit-hooks version run: | python -m pip install --upgrade pip - pip install bandit[toml] pycodestyle pylint 'black >= 24, < 25' + pip install .[dev] - name: Run pycodestyle # E203: pycodestyle is a little too rigid about slices & whitespace diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 0a8c1006..c67f6ecf 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,7 +1,6 @@ repos: - repo: https://github.com/psf/black - # this version is synced with the black mentioned in .github/workflows/ci.yml - rev: 24.3.0 + rev: 24.4.2 # keep in rough sync with pyproject.toml hooks: - id: black entry: bash -c 'black "$@"; git add -u' -- diff --git a/pyproject.toml b/pyproject.toml index ed1d4efc..c4505d65 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -75,6 +75,9 @@ tests = [ "time-machine", ] dev = [ - "black >= 24, < 25", - "pre-commit" + "bandit[toml]", + "black >= 24, < 25", # keep in rough sync with .pre-commit-config.yaml + "pre-commit", + "pycodestyle", + "pylint", ]