Unverified Commit 1d3e9215 authored by van den Berg's avatar van den Berg Committed by GitHub
Browse files

Merge pull request #13 from LUMC/github-workflow

Enable testing via github workflows
parents f5e6b40a 7bd0af2e
### Checklist
- [ ] Pull request details were added to CHANGELOG.md.
- [ ] Documentation was updated (if required).
- [ ] New test have been properly tagged with the test (`sanity`, `dry-run` or
`intergration`) **and** the apropriate module (`qc`, `itd`, `fusion`,
`expression`, `snv-indels` or `hamlet`).
name: Continuous Integration
on: [push, pull_request]
defaults:
run:
# This is needed for miniconda, see:
# https://github.com/marketplace/actions/setup-miniconda#important.
shell: bash -l {0}
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
test:
- sanity
- dry-run
module:
- qc
- itd
- fusion
- expression
- snv-indels
- hamlet
steps:
- uses: actions/checkout@v2.3.4 # https://github.com/actions/checkout.
with:
submodules: recursive
- name: Set up Conda environment
uses: conda-incubator/setup-miniconda@v2.0.1 # https://github.com/conda-incubator/setup-miniconda.
with:
activate-environment: HAMLET
environment-file: environment.yml
auto-activate-base: false
- name: Install singularity
uses: eWaterCycle/setup-singularity@v6
with:
singularity-version: 3.6.4
- name: Run test in conda environment
# Use --symlink to limit disk usage.
run: >-
pytest --keep-workflow-wd-on-fail
--tag ${{ matrix.test }}
--tag ${{ matrix.module }}
--symlink test/
- name: Check cromwell log in case of failure.
if: ${{ failure() }}
# Get the last 1000 lines of the cromwell log to catch the error.
run: bash -c 'tail -n 1000 /tmp/pytest_workflow_*/*/log.out'
- name: Check pytest stdout messages in case of failure
if: ${{ failure() }}
run: >-
bash -c '
for file in $(find /tmp -name log.out);
do echo $file; cat $file; done'
- name: Check pytest stderr messages in case of failure
if: ${{ failure() }}
run: >-
bash -c '
for file in $(find /tmp -name log.err);
do echo $file; cat $file; done'
[![Continuous Integration](https://github.com/LUMC/HAMLET/actions/workflows/ci.yml/badge.svg)](https://github.com/HAMLET/actions/workflows/ci.yml)
# Hamlet
Hamlet is a pipeline for analysis of human acute myeloid leukemia RNA-seq samples. Please use the
......
# This file may be used to create an environment using:
# $ conda create --name <env> --file <this file>
# $ conda env create -f environment.yml
# platform: linux-64
name: HAMLET
channels:
- bioconda
- conda-forge
- defaults
dependencies:
- pytest-workflow>=1.4.0
- python>3.6
- snakemake=5.9
- snakemake-minimal=5.9
- name: test-expression-dry-run-single
tags:
- dry-run
- expression
command: >
snakemake -n
--snakefile includes/expression/Snakefile
......@@ -17,6 +18,7 @@
- name: test-expression-dry-run-trio
tags:
- dry-run
- expression
command: >
snakemake -n
--snakefile includes/expression/Snakefile
......@@ -43,6 +45,7 @@
- name: test-expression-sanity-snakemake
tags:
- sanity
- expression
command: >
snakemake --version
stdout:
......@@ -52,6 +55,7 @@
- name: test-expression-sanity-singularity
tags:
- sanity
- expression
command: >
singularity --version
stdout:
......@@ -61,6 +65,7 @@
- name: test-expression-integration-HEL
tags:
- integration
- expression
command: >
snakemake -rp
--snakefile includes/expression/Snakefile
......@@ -101,6 +106,7 @@
- name: test-expression-MECOM-vs-MECOM
tags:
- integration
- expression
command: >
snakemake -rp
--snakefile includes/expression/Snakefile
......
- name: test-fusion-dry-run-single
tags:
- dry-run
- fusion
command: >
snakemake -n
--snakefile includes/fusion/Snakefile
......@@ -23,6 +24,7 @@
- name: test-fusion-dry-run-trio
tags:
- dry-run
- fusion
command: >
snakemake -n
--snakefile includes/fusion/Snakefile
......@@ -69,6 +71,7 @@
- name: test-fusion-sanity-snakemake
tags:
- sanity
- fusion
command: >
snakemake --version
stdout:
......@@ -78,6 +81,7 @@
- name: test-fusion-sanity-singularity
tags:
- sanity
- fusion
command: >
singularity --version
stdout:
......@@ -87,6 +91,7 @@
- name: test-fusion-integration-NB-4-dry-run
tags:
- dry-run
- fusion
command: >
snakemake -rpn
--snakefile includes/fusion/Snakefile
......@@ -97,6 +102,7 @@
- name: test-fusion-integration-NB-4
tags:
- integration
- fusion
command: >
snakemake -rp
--snakefile includes/fusion/Snakefile
......
- name: test-hamlet-dry-run-single
tags:
- dry-run
- hamlet
command: >
snakemake -n
--snakefile Snakefile
......@@ -16,6 +17,7 @@
- name: test-hamlet-dry-run-trio
tags:
- dry-run
- hamlet
command: >
snakemake -n
--snakefile Snakefile
......@@ -41,6 +43,7 @@
- name: test-hamlet-sanity-snakemake
tags:
- sanity
- hamlet
command: >
snakemake --version
stdout:
......@@ -50,6 +53,7 @@
- name: test-hamlet-sanity-singularity
tags:
- sanity
- hamlet
command: >
singularity --version
stdout:
......@@ -59,6 +63,7 @@
- name: test-hamlet-frankenstein-integration
tags:
- integration
- hamlet
command: >
snakemake -rp
--snakefile Snakefile
......
- name: test-itd-dry-run-single
tags:
- dry-run
- itd
command: >
snakemake -n
--snakefile includes/itd/Snakefile
......@@ -18,6 +19,7 @@
- name: test-itd-dry-run-trio
tags:
- dry-run
- itd
command: >
snakemake -n
--snakefile includes/itd/Snakefile
......@@ -47,6 +49,7 @@
- name: test-itd-sanity-snakemake
tags:
- sanity
- itd
command: >
snakemake --version
stdout:
......@@ -56,6 +59,7 @@
- name: test-itd-sanity-singularity
tags:
- sanity
- itd
command: >
singularity --version
stdout:
......@@ -65,6 +69,7 @@
- name: test-itd-MV4-11-flt3
tags:
- integration
- itd
- flt3
command: >
snakemake -rp
......@@ -92,6 +97,7 @@
- name: test-ptd-EoL-1-KMT2A
tags:
- integration
- itd
- kmt2a
command: >
snakemake -rp
......@@ -117,6 +123,7 @@
- name: test-flt3-kmt2a-no-reads
tags:
- integration
- itd
command: >
snakemake -rp
--snakefile includes/itd/Snakefile
......
- name: test-qc-dry-run-single
tags:
- dry-run
- qc
command: >
snakemake -n
--snakefile includes/qc-seq/Snakefile
......@@ -12,6 +13,7 @@
- name: test-qc-dry-run-trio
tags:
- dry-run
- qc
command: >
snakemake -n
--snakefile includes/qc-seq/Snakefile
......@@ -23,6 +25,7 @@
- name: test-qc-sanity-snakemake
tags:
- sanity
- qc
command: >
snakemake --version
stdout:
......@@ -32,6 +35,7 @@
- name: test-qc-sanity-singularity
tags:
- sanity
- qc
command: >
singularity --version
stdout:
......@@ -41,6 +45,7 @@
- name: test-qc-single
tags:
- integration
- qc
command: >
snakemake -rp
--snakefile includes/qc-seq/Snakefile
......@@ -60,6 +65,7 @@
- name: test-qc-duo
tags:
- functional
- qc
command: >
snakemake -rp
--snakefile includes/qc-seq/Snakefile
......@@ -79,6 +85,7 @@
- name: test-qc-trio
tags:
- functional
- qc
command: >
snakemake -rp
--snakefile includes/qc-seq/Snakefile
......@@ -93,6 +100,7 @@
- name: test-qc-single-low-qual-adapters
tags:
- functional
- qc
command: >
snakemake -rp
--snakefile includes/qc-seq/Snakefile
......
- name: test-snv-indels-dry-run-single
tags:
- dry-run
- snv-indels
command: >
snakemake -n
--snakefile includes/snv-indels/Snakefile
......@@ -15,6 +16,7 @@
- name: test-snv-indels-dry-run-trio
tags:
- dry-run
- snv-indels
command: >
snakemake -n
--snakefile includes/snv-indels/Snakefile
......@@ -37,6 +39,7 @@
- name: test-snv-indels-sanity-snakemake
tags:
- sanity
- snv-indels
command: >
snakemake --version
stdout:
......@@ -46,6 +49,7 @@
- name: test-snv-indels-sanity-singularity
tags:
- sanity
- snv-indels
command: >
singularity --version
stdout:
......@@ -56,6 +60,7 @@
tags:
- integration
- p53
- snv-indels
command: >
snakemake -rp
--snakefile includes/snv-indels/Snakefile
......@@ -108,8 +113,9 @@
- name: test-flt3-integration-MV4-11
tags:
- flt3
- integration
- flt3
- snv-indels
command: >
snakemake -rp
--snakefile includes/snv-indels/Snakefile
......@@ -128,6 +134,7 @@
- name: test-TET2-insertion-config
tags:
- integration
- snv-indels
command: >
snakemake -rp
--snakefile includes/snv-indels/Snakefile
......@@ -150,6 +157,7 @@
- name: test-RUNX1-insertion
tags:
- integration
- snv-indels
command: >
snakemake -rp
--snakefile includes/snv-indels/Snakefile
......@@ -165,6 +173,7 @@
- name: test-TET2-false-positive-mutation
tags:
- integration
- snv-indels
command: >
snakemake -rp
--snakefile includes/snv-indels/Snakefile
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment