Files
capa/.github/workflows/tests.yml
Ana María Martínez Gómez def4ad68c3 ci: Run tests in master and PRs
Add the tests to the CI GitHub action. Only run the tests if code style
and rule linter succeed, as tests take some time to run.

A similar actions should be added to `capa-testfiles`.
2020-07-22 19:36:51 +02:00

60 lines
1.4 KiB
YAML

name: CI
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
code_style:
runs-on: ubuntu-latest
steps:
- name: Checkout capa
uses: actions/checkout@v2
- name: Set up Python 3.8
uses: actions/setup-python@v2
with:
python-version: 3.8
- name: Install dependencies
run: pip install 'isort==5.*' black
- name: Lint with isort
run: isort --profile black --length-sort --line-width 120 -c .
- name: Lint with black
run: black -l 120 --check .
rule_linter:
runs-on: ubuntu-latest
steps:
- name: Checkout capa with rules submodule
uses: actions/checkout@v2
with:
submodules: true
- name: Set up Python 3.8
uses: actions/setup-python@v2
with:
python-version: 3.8
# We don't need vivisect, so we can install capa using Python3
- name: Install capa
run: pip install -e .
- name: Run rule linter
run: python scripts/lint.py rules/
tests:
runs-on: ubuntu-latest
needs: [code_style, rule_linter]
steps:
- name: Checkout capa with submodules
uses: actions/checkout@v2
with:
submodules: true
- name: Set up Python 2.7
uses: actions/setup-python@v2
with:
python-version: 2.7
- name: Install capa
run: pip install -e .[dev]
- name: Run tests
run: pytest tests/