Skip to content

Latest commit

 

History

History
62 lines (46 loc) · 1.85 KB

README.md

File metadata and controls

62 lines (46 loc) · 1.85 KB

Flake8 Problem Matcher/Annotations

Adds error and warning problem matchers for flake8 checks on Python projects. This action only generates Github Annotations from flake8 output, it does not run flake8.

Inputs

No inputs needed.

Outputs

Only Github Annotations are generated from the Checks output, no other output is generated.

Screenshot

Example annotations for file violations.py

Example usage

Add the following section to your Github workflow YAML in the step running flake8 before executing flake8:

    - name: Setup flake8 annotations
      uses: rbialon/flake8-annotations@v1

Example usage with Github's Python starter workflow:

name: Python application

on: [push]

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v2
    - name: Set up Python 3.8
      uses: actions/setup-python@v1
      with:
        python-version: 3.8
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -r requirements.txt
    - name: Setup flake8 annotations
      uses: rbialon/flake8-annotations@v1
    - name: Lint with flake8
      run: |
        pip install flake8
        # stop the build if there are Python syntax errors or undefined names
        flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
        # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
        flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
    - name: Test with pytest
      run: |
        pip install pytest
        pytest