2020-11-30 14:09:57 +01:00
|
|
|
name: Python application
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches: [ main ]
|
|
|
|
pull_request:
|
|
|
|
branches: [ main ]
|
|
|
|
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
matrix:
|
2021-12-20 11:06:24 +01:00
|
|
|
python-version: [3.8, 3.9, '3.10']
|
2020-11-30 14:09:57 +01:00
|
|
|
|
|
|
|
steps:
|
|
|
|
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
|
|
|
|
- name: Set up Python ${{matrix.python-version}}
|
|
|
|
uses: actions/setup-python@v2
|
|
|
|
with:
|
|
|
|
python-version: ${{matrix.python-version}}
|
|
|
|
|
|
|
|
- name: Initialize submodules
|
|
|
|
run: git submodule update --init --recursive
|
|
|
|
|
|
|
|
- name: Install system dependencies
|
2020-11-30 14:33:15 +01:00
|
|
|
run: sudo apt install jq moreutils
|
|
|
|
|
|
|
|
- name: Validate files
|
|
|
|
run: ./validate_all.sh
|
2020-11-30 14:09:57 +01:00
|
|
|
|
|
|
|
- name: Install Python dependencies
|
2020-11-30 14:33:15 +01:00
|
|
|
run: python -m pip install poetry
|
2020-11-30 14:22:14 +01:00
|
|
|
|
|
|
|
- name: Install testing via python module
|
|
|
|
run: |
|
|
|
|
git clone https://github.com/MISP/PyMISPGalaxies.git
|
|
|
|
pushd PyMISPGalaxies
|
|
|
|
git submodule update --init
|
|
|
|
git submodule foreach git pull origin main
|
|
|
|
poetry install
|
|
|
|
popd
|
2023-12-21 08:16:36 +01:00
|
|
|
sudo mount --bind . PyMISPGalaxies/pymispgalaxies/data/misp-galaxy
|
2020-11-30 14:09:57 +01:00
|
|
|
|
2020-11-30 14:33:15 +01:00
|
|
|
- name: Test with Python module
|
2020-11-30 14:09:57 +01:00
|
|
|
run: |
|
2020-11-30 14:22:14 +01:00
|
|
|
pushd PyMISPGalaxies
|
2021-12-20 11:06:24 +01:00
|
|
|
poetry run pytest --cov=pymispgalaxies tests/tests.py
|
2020-11-30 14:22:14 +01:00
|
|
|
popd
|