-
Notifications
You must be signed in to change notification settings - Fork 0
56 lines (46 loc) · 1.4 KB
/
integration.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
name: CI
on:
push:
branches: [master, main]
pull_request:
branches: [master, main]
workflow_dispatch:
jobs:
Unit_testing:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pytest
if [ -f .tests/unit/requirements.txt ]; then pip install -r .tests/unit/requirements.txt; fi
- name: Unit testing
run: |
pytest .tests/unit
- name: Cancelling parallel jobs
if: failure()
uses: andymckay/[email protected]
Integration_testing:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Integration testing
uses: snakemake/[email protected]
with:
directory: '.tests/integration'
snakefile: 'workflow/Snakefile'
args: "--cores 1 --use-conda --conda-cleanup-pkgs cache --conda-prefix envs --show-failed-logs --configfile .tests/integration/config/config.yaml"
stagein: |
conda config --set channel_priority strict
- name: Archive logs on fail
if: ${{ failure() }}
uses: actions/upload-artifact@v2
with:
name: fail-logs
path: |
.tests/integration/logs/
if-no-files-found: warn
retention-days: 3