1
- name: Python package
1
+ # This workflow will install Python dependencies, run tests and lint with a single version of Python
2
+ # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
2
3
3
- on: [push]
4
+ name: Python application
5
+
6
+ on:
7
+ push:
8
+ branches: [ "main" ]
9
+ pull_request:
10
+ branches: [ "main" ]
11
+
12
+ permissions:
13
+ contents: read
4
14
5
15
jobs:
6
16
build:
7
17
8
18
runs-on: ubuntu-latest
9
- strategy:
10
- matrix:
11
- python-version: ["3.7", "3.8", "3.9", "3.10"]
12
19
13
20
steps:
14
- - uses: actions/checkout@v3
15
- - name: Set up Python ${{ matrix.python-version }}
16
- uses: actions/setup-python@v3
17
- with:
18
- python-version: ${{ matrix.python-version }}
19
- - name: Install dependencies
20
- run: |
21
- python -m pip install --upgrade pip
22
- pip install flake8 pytest
23
- if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
24
- - name: Lint with flake8
25
- run: |
26
- # stop the build if there are Python syntax errors or undefined names
27
- flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
28
- # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
29
- flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
30
- - name: Test with pytest
31
- run: |
32
- pytest
21
+ - uses: actions/checkout@v3
22
+ - name: Set up Python 3.10
23
+ uses: actions/setup-python@v3
24
+ with:
25
+ python-version: "3.10"
26
+ - name: Install dependencies
27
+ run: |
28
+ python -m pip install --upgrade pip
29
+ pip install flake8 pytest
30
+ if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
31
+ - name: Lint with flake8
32
+ run: |
33
+ # stop the build if there are Python syntax errors or undefined names
34
+ flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
35
+ # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
36
+ flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
37
+ - name: Test with pytest
38
+ run: |
39
+ pytest
0 commit comments