febus982/bootstrap-python-fastapi

View on GitHub
.github/workflows/python-quality.yml

Summary

Maintainability
Test Coverage
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python

name: Python code quality

on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]
  # Allows you to run this workflow manually from the Actions tab
  workflow_dispatch:

jobs:
  quality:
    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v4
    - name: Set up Python 3.12
      uses: actions/setup-python@v5
      with:
        python-version: "3.12"
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        python -m pip install poetry
        poetry config virtualenvs.create false
        make dev-dependencies
    - name: Test & publish code coverage
      uses: paambaati/codeclimate-action@v9.0.0
      env:
        CC_TEST_REPORTER_ID: ${{ secrets.CODECLIMATE_REPORTER_ID }}
      with:
        coverageCommand: make ci-coverage
        coverageLocations: |
          ${{github.workspace}}/coverage.lcov:lcov
        debug: true