parse_rdp #7464
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Python package | |
env: | |
COLUMNS: 120 | |
on: | |
push: | |
branches: [ master, staging ] | |
pull_request: | |
branches: [ master, staging ] | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
timeout-minutes: 20 | |
strategy: | |
matrix: | |
python-version: ["3.10", "3.11"] | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Checkout test files repo | |
uses: actions/checkout@v4 | |
with: | |
repository: CAPESandbox/CAPE-TestFiles | |
path: tests/data/ | |
- uses: ./.github/actions/python-setup/ | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install pyattck | |
run: | | |
poetry run pip install pyattck==7.1.2 | |
- name: Run Ruff | |
run: poetry run ruff . --line-length 132 --ignore E501,E402 | |
- name: Run unit tests | |
run: poetry run python -m pytest --import-mode=append | |
- name: See if any parser changed | |
uses: dorny/paths-filter@v3 | |
id: changes | |
with: | |
filters: | | |
src: | |
- 'modules/processing/parsers/CAPE/*.py' | |
- name: Test parsers only if any parser changed | |
if: steps.changes.outputs.src == 'true' | |
run: poetry run python -m pytest tests_parsers -s --import-mode=append | |
format: | |
runs-on: ubuntu-latest | |
timeout-minutes: 20 | |
strategy: | |
matrix: | |
python-version: ["3.10", "3.11"] | |
if: ${{ github.ref == 'refs/heads/master' }} | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v4 | |
- name: Set up python | |
uses: ./.github/actions/python-setup | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Format with black | |
run: poetry run black . | |
# to be replaced with ruff | |
- name: Format imports with isort | |
run: poetry run isort . | |
- name: Commit changes if any | |
# Skip this step if being run by nektos/act | |
if: ${{ !env.ACT }} | |
run: | | |
git config user.name "GitHub Actions" | |
git config user.email "[email protected]" | |
if output=$(git status --porcelain) && [ ! -z "$output" ]; then | |
git commit -m "style: Automatic code formatting" -a | |
git push | |
fi |