-
Notifications
You must be signed in to change notification settings - Fork 27
Travis Tests for ExoSeq #13
Changes from 3 commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,37 @@ | ||
| sudo: required | ||
| language: java | ||
| jdk: openjdk8 | ||
| services: | ||
| - docker | ||
| python: | ||
| - "2.7" | ||
|
|
||
| node_js: "node" | ||
|
|
||
| cache: pip | ||
|
|
||
| matrix: | ||
| fast_finish: true | ||
|
|
||
| install: | ||
| - "./scripts/install.sh --tool $TOOL_INSTALL" | ||
| # Install nf-core/tools | ||
| - git clone https://github.com/nf-core/tools.git /tmp/nf-core-tools | ||
| - cd /tmp/nf-core-tools | ||
| - pip install --user -e . | ||
| # Get Kit Files | ||
| - wget -O kits.tar.bz2 https://qbic-intranet.am10.uni-tuebingen.de/owncloud/index.php/s/Qvku3etEqb3PW58/download | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Maybe time to start playing with https://github.com/nf-core/test-datasets ?
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I just wondered how we should do that. My plan was to use the smallGrch37 by @maxulysse and @szilvajuhos https://github.com/szilvajuhos/smallRef, together with the Kit files and a very tiny small dataset that I already have. So maybe we should quickly have a decision on how to structure the test-datasets repository in a ticket there?
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. By the way, https://github.com/SciLifeLab/Sarek-data is now used for testing in Sarek. |
||
| # Get tiny Reference Files | ||
| # Reset | ||
| - cd ${TRAVIS_BUILD_DIR}/tests | ||
|
|
||
| env: | ||
| global: | ||
| - NXF_VER=0.27.6 SGT_VER=2.4.2 | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Should use the minimum version of Nextflow but also the latest, that way we catch new bugs triggered by new releases. |
||
| matrix: | ||
| - PROFILE=docker TEST=TOOLS TOOL_INSTALL=ALL | ||
| - PROFILE=singularity TEST=TOOLS TOOL_INSTALL=ALL | ||
|
|
||
| script: | ||
| - "nf-core lint ${TRAVIS_BUILD_DIR}" | ||
| - "./scripts/test.sh --profile $PROFILE --test $TEST" | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,42 @@ | ||
| #!/bin/bash | ||
| #Credit to the Sarek devs at https://github.com/SciLifeLab/Sarek | ||
| TOOL="all" | ||
|
|
||
| while [[ $# -gt 0 ]] | ||
| do | ||
| key="$1" | ||
| case $key in | ||
| -t|--tool) | ||
| TOOL="$2" | ||
| shift # past argument | ||
| shift # past value | ||
| ;; | ||
| *) # unknown option | ||
| shift # past argument | ||
| ;; | ||
| esac | ||
| done | ||
|
|
||
| # Install Nextflow | ||
| if [[ "$TOOL" = nextflow ]] || [[ "$TOOL" = all ]] | ||
| then | ||
| cd $HOME | ||
| curl -fsSL get.nextflow.io | bash | ||
| chmod +x nextflow | ||
| sudo mv nextflow /usr/local/bin/ | ||
| fi | ||
|
|
||
| # Install Singularity | ||
| if [[ "$TOOL" = singularity ]] || [[ "$TOOL" = all ]] | ||
| then | ||
| sudo apt-get install squashfs-tools | ||
| cd $HOME | ||
| wget https://github.com/singularityware/singularity/releases/download/$SGT_VER/singularity-$SGT_VER.tar.gz | ||
| tar xvf singularity-$SGT_VER.tar.gz | ||
| cd singularity-$SGT_VER | ||
| ./configure --prefix=/usr/local | ||
| make | ||
| sudo make install | ||
| cd .. | ||
| rm -rf singularity-$SGT_VER* | ||
| fi |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you really need
node?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No :-) I'll remove that, just copied some ideas from Sarek ;-) Why do you even have it there?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's for a bonus package thing that I came across which prints the amount of time taken between each line of stdoutput. So a way to see how long each pipeline step is taking.
It was a bit of a faff though and made the Travis output kind of hard to read (looks lovely locally).
https://github.com/paypal/gnomon
https://github.com/SciLifeLab/Sarek/pull/572/files
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch, totally forgot that I had it there.
Thanks
The other problem with gnomon is that it was hiding the fact that there were problems in the test.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is fairly simple to fix with
/bin/bash -euo pipefail(this is in all of our pipelines because piping to samtools etc had the same effect of changing the exit code).