File tree Expand file tree Collapse file tree 1 file changed +55
-0
lines changed
Expand file tree Collapse file tree 1 file changed +55
-0
lines changed Original file line number Diff line number Diff line change 1+ # This workflow will install Python dependencies, run tests and lint with a variety of Python versions
2+ # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python
3+
4+ name : Python package
5+
6+ on :
7+ push :
8+ branches : [ "main" ]
9+ pull_request :
10+ branches : [ "main" ]
11+
12+ jobs :
13+ build :
14+
15+ runs-on : ubuntu-latest
16+ strategy :
17+ fail-fast : false
18+ matrix :
19+ python-version : ["3.12"]
20+
21+ steps :
22+ - uses : actions/checkout@v4
23+ - name : Set up Python ${{ matrix.python-version }}
24+ uses : actions/setup-python@v3
25+ with :
26+ python-version : ${{ matrix.python-version }}
27+ - name : Install dependencies
28+ run : |
29+ python -m pip install --upgrade pip
30+ python -m pip install flake8 pytest
31+ if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
32+ - name : Lint with flake8
33+ run : |
34+ flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
35+ flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
36+
37+ - name : Security scan with bandit
38+ run : |
39+ pip install bandit
40+ bandit -r src/ || true
41+
42+ - name : Dependency vulnerability check
43+ run : |
44+ pip install safety
45+ safety check || true
46+
47+ - name : Code formatting check
48+ run : |
49+ pip install black
50+ black --check src/ || true
51+
52+ - name : Check import formatting
53+ run : |
54+ pip install isort
55+ isort --check-only src/ || true
You can’t perform that action at this time.
0 commit comments