Skip to content

tag change

tag change #69

Workflow file for this run

name: Python Application Testing
on: [push]
jobs:
build-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.9
uses: actions/setup-python@v2
with:
python-version: "3.9"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry && poetry build
code-quality:
needs: build-test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.9
uses: actions/setup-python@v2
with:
python-version: "3.9"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry && poetry install
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
poetry run flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
# exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide
poetry run flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
- name: Security Analysis with bandit
run: |
mkdir ci-logs
poetry run bandit -r -lll -f txt -o ci-logs/bandit.log ./nekton ./tests
- name: Archive bandit report
uses: actions/upload-artifact@v2
with:
name: bandit-report
path: ci-logs/bandit.log
code-coverage-369:
needs: code-quality
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.9
uses: actions/setup-python@v2
with:
python-version: "3.9"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry && poetry install
- name: Submodules Setup
uses: actions/checkout@v2
with:
submodules: recursive
- name: Test with pytest
run: |
poetry install
poetry run pytest tests/ --cov-report=xml --cov=nekton --junitxml=./coverage.xml
- name: Code Coverage Summary Report
run: |
pip install coverage
coverage combine && coverage report --fail-under=90 -m
coverage html
- name: Archive code coverage html report
uses: actions/upload-artifact@v2
with:
name: code-coverage-report
path: htmlcov/index.html
test-39:
needs: code-quality
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.9
uses: actions/setup-python@v2
with:
python-version: "3.9"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry && poetry install
- name: Submodules Setup
uses: actions/checkout@v2
with:
submodules: recursive
- name: Test with pytest
run: |
poetry install
poetry run pytest tests/ --cov-report=xml --cov=nekton --junitxml=./coverage.xml