Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nf core vc #7

Merged
merged 80 commits into from
May 8, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
bcffe9c
update README
maxulysse May 3, 2019
b0798b6
update links
maxulysse May 3, 2019
568bade
add containers for annotation
maxulysse May 3, 2019
c0c29de
Merge remote-tracking branch 'upstream/dev' into nf-core-VC
maxulysse May 3, 2019
f223a1c
add circleci file
maxulysse May 3, 2019
42754c9
update circleci file
maxulysse May 3, 2019
47d9cda
fix path to Dockerfile
maxulysse May 3, 2019
8037b84
improve tag
maxulysse May 6, 2019
b17b8f0
add docs
maxulysse May 6, 2019
63af51c
remove --sampleDir
maxulysse May 6, 2019
30697ac
add configuration for annotation
maxulysse May 6, 2019
6e15519
improve recipe to build docker images for annotation
maxulysse May 6, 2019
a91e8a5
fix typo
maxulysse May 6, 2019
e00dfee
fix typo
maxulysse May 6, 2019
8e63377
containers are tagged version.genomeversion
maxulysse May 6, 2019
bece826
fix container definition for annotation
maxulysse May 6, 2019
bc5566d
add annotation
maxulysse May 6, 2019
9e4fbb5
add MultiQC
maxulysse May 6, 2019
fff1c71
fix duplicate in MultiQC output
maxulysse May 6, 2019
18a3b44
update tests
maxulysse May 7, 2019
3f0b20a
better handling of the containers
maxulysse May 7, 2019
b23b2d0
fix circleci file
maxulysse May 7, 2019
09cbfa6
fix circleci file
maxulysse May 7, 2019
27e9bae
fix circle ci
maxulysse May 7, 2019
8449204
add variables to project
maxulysse May 7, 2019
96aba77
update tests
maxulysse May 7, 2019
3db49ab
add 2h to timeout limit
maxulysse May 7, 2019
a83c838
fix indentation
maxulysse May 7, 2019
2670300
attempt to parrallelize
maxulysse May 7, 2019
3544ab0
better ENV
maxulysse May 7, 2019
62ee819
trying parrallelism
maxulysse May 7, 2019
26a8aae
fix circleci file
maxulysse May 7, 2019
e72e625
trying to fix circleci file
maxulysse May 7, 2019
80a2b2f
fix indentation
maxulysse May 7, 2019
7fe432b
one more try
maxulysse May 7, 2019
8f5a738
one more try
maxulysse May 7, 2019
15b9210
replace _ by -
maxulysse May 7, 2019
37eb376
forgot:
maxulysse May 7, 2019
a602388
better tests
maxulysse May 7, 2019
b87e89a
fix please
maxulysse May 7, 2019
d35c90f
rewrote workflows
maxulysse May 7, 2019
b2ab07c
add annotation and QC to Strelka BP vcfs
maxulysse May 7, 2019
f0de72f
fix genome version for mouse
maxulysse May 7, 2019
b03a41d
trying to fix no_output_timeout
maxulysse May 7, 2019
9eb9cc4
change to version 2.0
maxulysse May 7, 2019
24b71a3
fix no_output_timeout unit
maxulysse May 7, 2019
1530b7a
sort ARGs
maxulysse May 7, 2019
d2d119e
try fixing the timeout
maxulysse May 7, 2019
fc28bb6
add setup_remote_docker
maxulysse May 7, 2019
8ef6679
remove machine
maxulysse May 7, 2019
a66c96c
use docker
maxulysse May 7, 2019
7890cd3
use image with docker
maxulysse May 7, 2019
f11a54d
fix --build-arg param
maxulysse May 7, 2019
17a2c22
sort params
maxulysse May 7, 2019
cd0add1
sort keys
maxulysse May 7, 2019
af03ab2
use version 2.1
maxulysse May 7, 2019
3cc7276
add social image
maxulysse May 7, 2019
be5ec2f
another try
maxulysse May 7, 2019
f79b6ba
switch back to 2.0
maxulysse May 7, 2019
f029403
try 45m
maxulysse May 7, 2019
a4815a8
get environment to run
maxulysse May 8, 2019
4098695
test false unit
maxulysse May 8, 2019
0def15d
back to 45m
maxulysse May 8, 2019
1e9bc94
put timeout to the right command
maxulysse May 8, 2019
729ac5f
fix scripts
maxulysse May 8, 2019
452a611
fix test files
maxulysse May 8, 2019
052b74f
change path to scripts
maxulysse May 8, 2019
4421182
fix paths
maxulysse May 8, 2019
392b6ac
clean up scripts
maxulysse May 8, 2019
ae047c5
improve referanceMap()
maxulysse May 8, 2019
c117515
improve script
maxulysse May 8, 2019
ccde359
add --noReports to get_software_version
maxulysse May 8, 2019
d105c13
add TRAVIS_BUILD_DIR to path
maxulysse May 8, 2019
93b3aed
fix paths
maxulysse May 8, 2019
c266a0e
fix path to igenomes
maxulysse May 8, 2019
70f5ff8
fix genome name
maxulysse May 8, 2019
1adaf24
fix path to reference
maxulysse May 8, 2019
19c217e
fix container tags
maxulysse May 8, 2019
6e31fce
remove clean_repo()
maxulysse May 8, 2019
22777a5
update README
maxulysse May 8, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
111 changes: 111 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
version: 2.0
jobs:
snpeffgrch37:
docker:
- image: circleci/buildpack-deps:stretch
environment:
GENOME: GRCh37
SNPEFF_CACHE_VERSION: 75
steps:
- checkout
- setup_remote_docker
- run:
command: docker build -t nfcore/sareksnpeff:dev.${GENOME} containers/snpeff/. --build-arg GENOME=${GENOME} --build-arg SNPEFF_CACHE_VERSION=${SNPEFF_CACHE_VERSION}
- run:
command: |
echo "$DOCKERHUB_PASS" | docker login -u "$DOCKERHUB_USERNAME" --password-stdin
docker push nfcore/sareksnpeff:dev.${GENOME}

snpeffgrch38:
docker:
- image: circleci/buildpack-deps:stretch
environment:
GENOME: GRCh38
SNPEFF_CACHE_VERSION: 86
steps:
- checkout
- setup_remote_docker
- run:
command: docker build -t nfcore/sareksnpeff:dev.${GENOME} containers/snpeff/. --build-arg GENOME=${GENOME} --build-arg SNPEFF_CACHE_VERSION=${SNPEFF_CACHE_VERSION}
- run:
command: |
echo "$DOCKERHUB_PASS" | docker login -u "$DOCKERHUB_USERNAME" --password-stdin
docker push nfcore/sareksnpeff:dev.${GENOME}

snpeffgrcm38:
docker:
- image: circleci/buildpack-deps:stretch
environment:
GENOME: GRCm38
SNPEFF_CACHE_VERSION: 86
steps:
- checkout
- setup_remote_docker
- run:
command: docker build -t nfcore/sareksnpeff:dev.${GENOME} containers/snpeff/. --build-arg GENOME=${GENOME} --build-arg SNPEFF_CACHE_VERSION=${SNPEFF_CACHE_VERSION}
- run:
command: |
echo "$DOCKERHUB_PASS" | docker login -u "$DOCKERHUB_USERNAME" --password-stdin
docker push nfcore/sareksnpeff:dev.${GENOME}

vepgrch37:
docker:
- image: circleci/buildpack-deps:stretch
environment:
GENOME: GRCh37
SPECIES: homo_sapiens
VEP_VERSION: 95
steps:
- checkout
- setup_remote_docker
- run:
command: docker build -t nfcore/sarekvep:dev.${GENOME} containers/vep/. --build-arg GENOME=${GENOME} --build-arg SPECIES=${SPECIES} --build-arg VEP_VERSION=${VEP_VERSION}
no_output_timeout: 45m
- run:
command: echo "$DOCKERHUB_PASS" | docker login -u "$DOCKERHUB_USERNAME" --password-stdin ; docker push nfcore/sarekvep:dev.${GENOME}
no_output_timeout: 45m

vepgrch38:
docker:
- image: circleci/buildpack-deps:stretch
environment:
GENOME: GRCh38
SPECIES: homo_sapiens
VEP_VERSION: 95
steps:
- checkout
- setup_remote_docker
- run:
command: docker build -t nfcore/sarekvep:dev.${GENOME} containers/vep/. --build-arg GENOME=${GENOME} --build-arg SPECIES=${SPECIES} --build-arg VEP_VERSION=${VEP_VERSION}
no_output_timeout: 45m
- run:
command: echo "$DOCKERHUB_PASS" | docker login -u "$DOCKERHUB_USERNAME" --password-stdin ; docker push nfcore/sarekvep:dev.${GENOME}
no_output_timeout: 45m

vepgrcm38:
docker:
- image: circleci/buildpack-deps:stretch
environment:
GENOME: GRCm38
SPECIES: mus_musculus
VEP_VERSION: 95
steps:
- checkout
- setup_remote_docker
- run:
command: docker build -t nfcore/sarekvep:dev.${GENOME} containers/vep/. --build-arg GENOME=${GENOME} --build-arg SPECIES=${SPECIES} --build-arg VEP_VERSION=${VEP_VERSION}
no_output_timeout: 45m
- run:
command: echo "$DOCKERHUB_PASS" | docker login -u "$DOCKERHUB_USERNAME" --password-stdin ; docker push nfcore/sarekvep:dev.${GENOME}
no_output_timeout: 45m

workflows:
version: 2
build:
jobs:
- snpeffgrch37
- snpeffgrch38
- snpeffgrcm38
- vepgrch37
- vepgrch38
- vepgrcm38
22 changes: 15 additions & 7 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,20 @@ matrix:
fast_finish: true

env:
- NXF_VER=19.04.0
global:
- NXF_VER=19.04.0
matrix:
- TEST=SOMATIC
- TEST=GERMLINE
- TEST=TARGETED
- TEST=ANNOTATEVEP
- TEST=ANNOTATESNPEFF

before_install:
# PRs to master are only ok if coming from dev branch
- '[ $TRAVIS_PULL_REQUEST = "false" ] || [ $TRAVIS_BRANCH != "master" ] || ([ $TRAVIS_PULL_REQUEST_SLUG = $TRAVIS_REPO_SLUG ] && [ $TRAVIS_PULL_REQUEST_BRANCH = "dev" ])'
# Pull the docker image first so the test doesn't wait for this
- docker pull nfcore/sarek:dev
# Fake the tag locally so that the pipeline runs properly
- docker tag nfcore/sarek:dev nfcore/sarek:dev
- "travis_retry ./bin/download_docker.sh --test $TEST"

install:
# Install Nextflow
Expand All @@ -32,7 +37,10 @@ install:
# Reset
- mkdir ${TRAVIS_BUILD_DIR}/tests && cd ${TRAVIS_BUILD_DIR}/tests

# Build references if needed
before_script:
- "${TRAVIS_BUILD_DIR}/bin/build_reference.sh --test $TEST --build"

# Actual tests
script:
- git clone --single-branch --branch sarek https://github.com/nf-core/test-datasets.git data
- nextflow run ${TRAVIS_BUILD_DIR}/build.nf -profile docker --genome smallGRCh37 --refdir data/reference --outdir references --publishDirMode link --max_memory 7.GB --max_cpus 2 -ansi-log false
- nextflow run ${TRAVIS_BUILD_DIR}/main.nf -profile docker --genome smallGRCh37 --sample data/testdata/tsv/tiny-manta.tsv --tools HaploTypeCaller,Manta,Strelka,MuTecT2,FreeBayes --igenomes_base references --publishDirMode link --max_memory 7.GB --max_cpus 2 -ansi-log false
- "${TRAVIS_BUILD_DIR}/bin/run_tests.sh --test $TEST"
29 changes: 23 additions & 6 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,26 +8,43 @@ pipeline {
stages {
stage('Setup environment') {
steps {
sh "docker pull nfcore/sarek:dev"
sh "./bin/download_docker.sh -t ALL"
}
}
stage('Build') {
steps {
sh "rm -rf data"
sh "git clone --single-branch --branch sarek https://github.com/nf-core/test-datasets.git data"
sh "nextflow run build.nf -profile docker --genome smallGRCh37 --refdir data/reference --outdir references --publishDirMode link -ansi-log false"
sh "./bin/build_reference.sh --test ALL --build"
sh "rm -rf work/ references/pipeline_info .nextflow*"
}
}
stage('SampleDir') {
stage('Somatic') {
steps {
sh "nextflow run main.nf -profile docker --sampleDir data/testdata/tiny/normal --tools HaplotypeCaller,Manta,Strelka --genome smallGRCh37 --igenomes_base references --publishDirMode link -ansi-log false"
sh "./bin/run_tests.sh --test SOMATIC"
sh "rm -rf work/ .nextflow* results/"
}
}
stage('Germline') {
steps {
sh "./bin/run_tests.sh --test GERMLINE"
sh "rm -rf work/ .nextflow* results/"
}
}
stage('targeted') {
steps {
sh "./bin/run_tests.sh --test TARGETED"
sh "rm -rf work/ .nextflow* results/"
}
}
stage('Annotation') {
steps {
sh "./bin/run_tests.sh --test ANNOTATEALL"
sh "rm -rf work/ .nextflow* results/"
}
}
stage('Multiple') {
steps {
sh "nextflow run main.nf -profile docker --sample data/testdata/tsv/tiny-multiple.tsv --tools HaploTypeCaller,Manta,Strelka,MuTecT2,FreeBayes --genome smallGRCh37 --igenomes_base references --publishDirMode link -ansi-log false"
sh "./bin/run_tests.sh --test MULTIPLE"
sh "rm -rf work/ .nextflow* results/"
}
}
Expand Down
12 changes: 9 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,11 @@

[![Nextflow version][nextflow-badge]](https://www.nextflow.io)
[![Travis build status][travis-badge]](https://travis-ci.org/nf-core/sarek)
[![CircleCi build status][circleci-badge]](https://circleci.com/gh/nf-core/workflows/sarek)

[![Install with bioconda][bioconda-badge]](http://bioconda.github.io/)
[![Docker Container available][docker-badge]](https://hub.docker.com/r/nfcore/sarek)
[![Docker Container available][docker-sarek-badge]](https://hub.docker.com/r/nfcore/sarek)
[![Install with Singularity][singularity-badge]](https://www.sylabs.io/docs/)

[![Join us on Slack][slack-badge]](https://nfcore.slack.com/messages/CGFUX04HZ/)

Expand Down Expand Up @@ -77,7 +79,7 @@ The worflow steps and tools used are as follows:
* [GATK ApplyBQSR](https://github.com/broadinstitute/gatk)
2. **Germline variant calling** - `germlineVC.nf`
* SNVs and small indels
* [GATK HaplotyeCaller](https://github.com/broadinstitute/gatk)
* [GATK HaplotypeCaller](https://github.com/broadinstitute/gatk)
* [Strelka2](https://github.com/Illumina/strelka)
* Structural variants
* [Manta](https://github.com/Illumina/manta)
Expand Down Expand Up @@ -139,10 +141,14 @@ For further information or help, don't hesitate to get in touch on [Slack](https

[bioconda-badge]: https://img.shields.io/badge/install%20with-bioconda-brightgreen.svg?logo=data:image/png;base64,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
[btb-link]: https://ki.se/forskning/barntumorbanken-0
[docker-badge]: https://img.shields.io/docker/automated/nfcore/sarek.svg?logo=docker
[circleci-badge]: https://img.shields.io/circleci/project/github/nf-core/sarek.svg?logo=circleci
[docker-sarek-badge]: https://img.shields.io/docker/automated/nfcore/sarek.svg?logo=docker
[docker-snpeff-badge]: https://img.shields.io/docker/automated/nfcore/sareksnpeff.svg?logo=docker
[docker-vep-badge]: https://img.shields.io/docker/automated/nfcore/sarekvep.svg?logo=docker
[nbis-link]: https://nbis.se
[nextflow-badge]: https://img.shields.io/badge/nextflow-%E2%89%A519.04.0-brightgreen.svg?logo=data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PHN2ZyAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIgICB4bWxuczpzdmc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiICAgeG1sbnM6aW5rc2NhcGU9Imh0dHA6Ly93d3cuaW5rc2NhcGUub3JnL25hbWVzcGFjZXMvaW5rc2NhcGUiICAgd2lkdGg9IjEyLjc5OTIyOG1tIiAgIGhlaWdodD0iMTIuODA0ODA5bW0iICAgdmlld0JveD0iMCAwIDQ1LjM1MTU5NCA0NS4zNzEzNjkiICAgaWQ9InN2Zzc2NTIiICAgdmVyc2lvbj0iMS4xIiAgIGlua3NjYXBlOnZlcnNpb249IjAuOTEgcjEzNzI1IiAgIHNvZGlwb2RpOmRvY25hbWU9Im5leHRmbG93LWZhdmljb24td2hpdGUuc3ZnIj4gIDxkZWZzICAgICBpZD0iZGVmczc2NTQiIC8+ICA8c29kaXBvZGk6bmFtZWR2aWV3ICAgICBpZD0iYmFzZSIgICAgIHBhZ2Vjb2xvcj0iI2ZmZmZmZiIgICAgIGJvcmRlcmNvbG9yPSIjNjY2NjY2IiAgICAgYm9yZGVyb3BhY2l0eT0iMS4wIiAgICAgaW5rc2NhcGU6cGFnZW9wYWNpdHk9IjAuMCIgICAgIGlua3NjYXBlOnBhZ2VzaGFkb3c9IjIiICAgICBpbmtzY2FwZTp6b29tPSI3LjkxOTU5NTkiICAgICBpbmtzY2FwZTpjeD0iMjAuMTEzMjM1IiAgICAgaW5rc2NhcGU6Y3k9IjIzLjE2MzkwOCIgICAgIGlua3NjYXBlOmRvY3VtZW50LXVuaXRzPSJweCIgICAgIGlua3NjYXBlOmN1cnJlbnQtbGF5ZXI9ImxheWVyMSIgICAgIHNob3dncmlkPSJmYWxzZSIgICAgIGZpdC1tYXJnaW4tdG9wPSIwIiAgICAgZml0LW1hcmdpbi1sZWZ0PSIwIiAgICAgZml0LW1hcmdpbi1yaWdodD0iMCIgICAgIGZpdC1tYXJnaW4tYm90dG9tPSIwIiAgICAgaW5rc2NhcGU6d2luZG93LXdpZHRoPSIxOTIwIiAgICAgaW5rc2NhcGU6d2luZG93LWhlaWdodD0iMTAxNSIgICAgIGlua3NjYXBlOndpbmRvdy14PSIwIiAgICAgaW5rc2NhcGU6d2luZG93LXk9IjAiICAgICBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIxIiAvPiAgPG1ldGFkYXRhICAgICBpZD0ibWV0YWRhdGE3NjU3Ij4gICAgPHJkZjpSREY+ICAgICAgPGNjOldvcmsgICAgICAgICByZGY6YWJvdXQ9IiI+ICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3N2Zyt4bWw8L2RjOmZvcm1hdD4gICAgICAgIDxkYzp0eXBlICAgICAgICAgICByZGY6cmVzb3VyY2U9Imh0dHA6Ly9wdXJsLm9yZy9kYy9kY21pdHlwZS9TdGlsbEltYWdlIiAvPiAgICAgICAgPGRjOnRpdGxlPjwvZGM6dGl0bGU+ICAgICAgPC9jYzpXb3JrPiAgICA8L3JkZjpSREY+ICA8L21ldGFkYXRhPiAgPGcgICAgIGlua3NjYXBlOmxhYmVsPSJMYXllciAxIiAgICAgaW5rc2NhcGU6Z3JvdXBtb2RlPSJsYXllciIgICAgIGlkPSJsYXllcjEiICAgICB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMTQuMTA0MzcsLTQ1Mi41MzM2NikiPiAgICA8cGF0aCAgICAgICBzdHlsZT0iZmlsbDojZmZmZmZmIiAgICAgICBkPSJtIC0xMTQuMTA0MzcsNDU1LjQ2NTYyIDAsOC44NjEzMyAwLjIwMzEzLDAuMDYwNSBjIDMuODcyOTMsMS4xMzk0MyA4LjY1MjUxLDQuMzgzMiAxMi44MDA3OCw4LjY4NzUgMC45MTM2MywwLjk0ODAxIDEuOTcyNTY0LDIuMTA2ODQgMi4zNTM1MjQsMi41NzYxOCBsIDAuNjkxNCwwLjg1MzUxIC0wLjg2OTE0LDAuNzc1MzkgYyAtNC4xOTk5MDQsMy43NDE5MyAtOC45NzE5MDQsNi43NjYzNyAtMTQuMTA1NDc0LDguOTQxNDEgLTAuMzA5NzUsMC4xMzEyNCAtMC42OTcyMiwwLjI4MTIzIC0xLjA3NDIyLDAuNDI3NzMgbCAwLDkuMzA0NjkgYyAyLjY1OTkzLC0wLjg3NzkyIDUuMzA2MzksLTEuOTc1IDguMDYwNTUsLTMuMzUxNTYgNC4yNTYyMywtMi4xMjczMiA3LjU0MzI1NCwtNC4yNTc2NCAxMS4wMzcxMTQsLTcuMTU2MjUgMC45MjU4MSwtMC43NjgwOCAxLjgyMTA5LC0xLjUwNzAyIDEuOTkwMjMsLTEuNjQyNTggMC4yNzkzMSwtMC4yMjM4NCAwLjQ5MzMyLC0wLjA1MTQgMi4zMjQyMiwxLjg3ODkxIDYuMjIyNjUsNi41NjA0MSAxMy43ODMzNywxMC43NDQ0MyAyMS45Mzk0NiwxMi4yMjI2NSBsIDAsLTguOTQxNCBjIC00Ljc5NTM3LC0xLjE5NTkgLTkuNDIwMzEsLTMuNjQ1MTEgLTEzLjI1NzgyLC03LjA2NDQ2IC0xLjY4MzUxLC0xLjUwMDA2IC00LjI4NjgxLC00LjM1MDA5IC00LjM5MjU4LC00LjgwODU5IC0wLjA2ODYsLTAuMjk3MyA1LjQ3NDgsLTUuNzA5NzcgNy4yOTQ5MywtNy4xMjMwNSAzLjQ4MjczLC0yLjcwNDI0IDYuNTg4MjUsLTQuMTIwNDIgMTAuMjc1MzksLTQuNjg1NTQgMC4wMjc1LC0wLjAwNCAwLjA1MjcsLTAuMDA4IDAuMDgwMSwtMC4wMTE3IGwgMCwtOC43NSBjIC03LjkzOTI3LDIuMDIxMTQgLTE0Ljg3MDAxLDUuODc3MzggLTIxLjUsMTEuOTQzMzYgbCAtMS42MzA4NiwxLjQ5MjE4IC0yLjk5NjEsLTMuMDA3ODEgYyAtMS42NDc1NiwtMS42NTQ3IC0zLjc0MDI1LC0zLjYwMTU3IC00LjY1MjM0LC00LjMyNjE3IC01LjAwODU1NCwtMy45Nzg5OSAtMTAuMTUyOTU0LC02LjQ5OTIzIC0xNC41NzIyNzQsLTcuMTU2MjUgeiIgICAgICAgaWQ9InBhdGg3NjIwIiAgICAgICBpbmtzY2FwZTpjb25uZWN0b3ItY3VydmF0dXJlPSIwIiAgICAgICBzb2RpcG9kaTpub2RldHlwZXM9ImNjY3NjY2NzY2Nzc2NzY2NzY3NjY2NjY2NzYyIgLz4gIDwvZz48L3N2Zz4=
[ngi-link]: https://ngisweden.scilifelab.se/
[scilifelab-link]: https://scilifelab.se
[singularity-badge]: https://img.shields.io/badge/use%20with-singularity-purple.svg
[slack-badge]: https://img.shields.io/badge/slack-nfcore/sarek-blue.svg?logo=slack
[travis-badge]: https://img.shields.io/travis/nf-core/sarek.svg?logo=travis
38 changes: 38 additions & 0 deletions bin/build_reference.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
#!/bin/bash
set -xeuo pipefail

BUILD=false
TEST=ALL
TRAVIS_BUILD_DIR=${TRAVIS_BUILD_DIR:-.}
TRAVIS=${TRAVIS:-false}

while [[ $# -gt 0 ]]
do
key=$1
case $key in
-t|--test)
TEST=$2
shift # past argument
shift # past value
;;
-b|--build)
BUILD=true
shift # past value
;;
*) # unknown option
shift # past argument
;;
esac
done

# Always download test data
rm -rf data
git clone --single-branch --branch sarek https://github.com/nf-core/test-datasets.git data

# Build references for smallGRCh37
if [[ BUILD ]] && [[ $TEST != ANNOTATESNPEFF ]] && [[ $TEST != ANNOTATEVEP ]]
then
rm -rf references
nextflow run ${TRAVIS_BUILD_DIR}/build.nf -profile docker -ansi-log false --publishDirMode link --max_memory 7.GB --max_cpus 2 -dump-channels --genome smallGRCh37 --refdir data/reference --outdir references
rm -rf .nextflow* references/pipeline_info work
fi
32 changes: 32 additions & 0 deletions bin/download_docker.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#!/bin/bash
set -xeuo pipefail

TEST=ALL

while [[ $# -gt 0 ]]
do
key=$1
case $key in
-t|--test)
TEST=$2
shift # past argument
shift # past value
;;
*) # unknown option
shift # past argument
;;
esac
done

if [[ ALL,ANNOTATEALL,ANNOTATEVEP =~ $TEST ]]
then
docker pull nfcore/sarekvep:dev.GRCh37
docker tag nfcore/sarekvep:dev.GRCh37 nfcore/sarekvep:dev.smallGRCh37
elif [[ ALL,ANNOTATEALL,ANNOTATESNPEFF =~ $TEST ]]
then
docker pull nfcore/sareksnpeff:dev.GRCh37
docker tag nfcore/sareksnpeff:dev.GRCh37 nfcore/sareksnpeff:dev.smallGRCh37
else
docker pull nfcore/sarek:dev
docker tag nfcore/sarek:dev nfcore/sarek:dev
fi
66 changes: 66 additions & 0 deletions bin/run_tests.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
#!/bin/bash
set -xeuo pipefail

CPUS=2
TEST=ALL
TRAVIS_BUILD_DIR=${TRAVIS_BUILD_DIR:-.}
TRAVIS=${TRAVIS:-false}

while [[ $# -gt 0 ]]
do
key=$1
case $key in
-t|--test)
TEST=$2
shift # past argument
shift # past value
;;
-c|--cpus)
CPUS=$2
shift # past value
;;
*) # unknown option
shift # past argument
;;
esac
done

function run_sarek() {
nextflow run ${TRAVIS_BUILD_DIR}/main.nf -profile docker -ansi-log false --publishDirMode link --max_memory 7.GB --max_cpus 2 -dump-channels --genome smallGRCh37 --igenomes_base references $@
}

if [[ ALL,GERMLINE =~ $TEST ]]
then
run_sarek --sample data/testdata/tiny/normal --tools HaplotypeCaller,Strelka --noReports
run_sarek --step recalibrate --noReports
fi

if [[ ALL,SOMATIC =~ $TEST ]]
then
run_sarek --sample data/testdata/tsv/tiny-manta.tsv --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports
fi

if [[ ALL,TARGETED =~ $TEST ]]
then
run_sarek --sample data/testdata/tsv/tiny-manta.tsv --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports --targetBED data/testdata/target.bed
fi

if [[ ALL,ANNOTATEALL,ANNOTATESNPEFF,ANNOTATEVEP =~ $TEST ]]
then
if [[ $TEST = ANNOTATESNPEFF ]]
then
ANNOTATOR=snpEFF
elif [[ $TEST = ANNOTATEVEP ]]
then
ANNOTATOR=VEP
elif [[ ALL,ANNOTATEALL =~ $TEST ]]
then
ANNOTATOR=merge,snpEFF,VEP
fi
run_sarek --step annotate --tools ${ANNOTATOR} --annotateVCF data/testdata/vcf/Strelka_1234N_variants.vcf.gz --noReports
fi

if [[ MULTIPLE =~ $TEST ]]
then
run_sarek --sample data/testdata/tsv/tiny-multiple.tsv --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports
fi
Loading