21
21
strategy :
22
22
matrix :
23
23
# Nextflow versions
24
- include :
25
- # Test pipeline minimum Nextflow version
26
- - NXF_VER : " 21.10.3"
27
- NXF_EDGE : " "
28
- # Test latest edge release of Nextflow
29
- - NXF_VER : " "
30
- NXF_EDGE : " 1"
24
+ NXF_VER :
25
+ - " 22.10.1"
26
+ - " latest-everything"
31
27
steps :
32
28
- name : Check out pipeline code
33
29
uses : actions/checkout@v2
@@ -40,23 +36,18 @@ jobs:
40
36
environment.yml
41
37
- name : Build new docker image
42
38
if : env.MATCHED_FILES
43
- run : docker build --no-cache . -t qbicpipelines/rnadeseq:2.0. 1
39
+ run : docker build --no-cache . -t qbicpipelines/rnadeseq:2.1
44
40
45
41
- name : Pull docker image
46
42
if : ${{ !env.MATCHED_FILES }}
47
43
run : |
48
44
docker pull qbicpipelines/rnadeseq:dev
49
- docker tag qbicpipelines/rnadeseq:dev qbicpipelines/rnadeseq:2.0. 1
45
+ docker tag qbicpipelines/rnadeseq:dev qbicpipelines/rnadeseq:2.1
50
46
51
47
- name : Install Nextflow
52
- env :
53
- NXF_VER : ${{ matrix.NXF_VER }}
54
- # Uncomment only if the edge release is more recent than the latest stable release
55
- # See https://github.com/nextflow-io/nextflow/issues/2467
56
- # NXF_EDGE: ${{ matrix.NXF_EDGE }}
57
- run : |
58
- wget -qO- get.nextflow.io | bash
59
- sudo mv nextflow /usr/local/bin/
48
+ uses : nf-core/setup-nextflow@v1
49
+ with :
50
+ version : " ${{ matrix.NXF_VER }}"
60
51
61
52
- name : Run pipeline with test data
62
53
run : nextflow run ${GITHUB_WORKSPACE} -profile test,docker
@@ -65,20 +56,25 @@ jobs:
65
56
name : Test workflow parameters
66
57
runs-on : ubuntu-latest
67
58
env :
68
- NXF_VER : " 21 .10.3 "
59
+ NXF_VER : " 22 .10.1 "
69
60
NXF_ANSI_LOG : false
70
61
strategy :
62
+ # This tells github to continue running other profile tests if some tests fail (default cancels all tests upon failure)
63
+ fail-fast : false
71
64
matrix :
72
65
config :
73
66
[
67
+ " test" ,
68
+ " test_full" ,
74
69
" test_contrast_matrix" ,
75
70
" test_contrast_list" ,
71
+ " test_no_multiqc" ,
76
72
" test_relevel" ,
77
- " test_skip_pathway_analysis" ,
78
73
" test_star_rsem" ,
79
74
" test_star_salmon" ,
80
75
" test_use_vst" ,
81
76
" test_batcheffect" ,
77
+ " test_custom_gmt" ,
82
78
]
83
79
steps :
84
80
- name : Check out pipeline code
@@ -92,23 +88,49 @@ jobs:
92
88
environment.yml
93
89
- name : Build new docker image
94
90
if : env.MATCHED_FILES
95
- run : docker build --no-cache . -t qbicpipelines/rnadeseq:2.0. 1
91
+ run : docker build --no-cache . -t qbicpipelines/rnadeseq:2.1
96
92
97
93
- name : Pull docker image
98
94
if : ${{ !env.MATCHED_FILES }}
99
95
run : |
100
96
docker pull qbicpipelines/rnadeseq:dev
101
- docker tag qbicpipelines/rnadeseq:dev qbicpipelines/rnadeseq:2.0. 1
97
+ docker tag qbicpipelines/rnadeseq:dev qbicpipelines/rnadeseq:2.1
102
98
103
99
- name : Install Nextflow
104
- env :
105
- NXF_VER : ${{ matrix.NXF_VER }}
106
- # Uncomment only if the edge release is more recent than the latest stable release
107
- # See https://github.com/nextflow-io/nextflow/issues/2467
108
- # NXF_EDGE: ${{ matrix.NXF_EDGE }}
100
+ uses : nf-core/setup-nextflow@v1
101
+ with :
102
+ version : " ${{ matrix.NXF_VER }}"
103
+
104
+ - name : Set up Python
105
+ uses : actions/setup-python@v2
106
+ with :
107
+ python-version : " 3.x"
108
+
109
+ - name : Install dependencies
110
+ run : python -m pip install --upgrade pip pytest-workflow
111
+
112
+ - name : Run pipeline with tests settings
113
+
114
+ with :
115
+ command : pytest --tag ${{ matrix.config }} --kwdof --git-aware --color=yes
116
+ attempt_limit : 3
117
+
118
+ - name : Output log on failure
119
+ if : failure()
109
120
run : |
110
- wget -qO- get.nextflow.io | bash
111
- sudo mv nextflow /usr/local/bin/
121
+ sudo apt install bat > /dev/null
122
+ batcat --decorations=always --color=always /tmp/pytest_workflow_*/*/log.{out,err}
112
123
113
- - name : Run pipeline with test data
114
- run : nextflow run ${GITHUB_WORKSPACE} -profile ${{ matrix.config }},docker
124
+ - name : Upload logs on failure
125
+ if : failure()
126
+ uses : actions/upload-artifact@v2
127
+ with :
128
+ name : logs-${{ matrix.profile }}
129
+ path : |
130
+ /tmp/pytest_workflow_*/*/.nextflow.log
131
+ /tmp/pytest_workflow_*/*/log.out
132
+ /tmp/pytest_workflow_*/*/log.err
133
+ /tmp/pytest_workflow_*/*/work
134
+ !/tmp/pytest_workflow_*/*/work/conda
135
+ !/tmp/pytest_workflow_*/*/work/singularity
136
+ /tmp/pytest_workflow_*/**/.command.log
0 commit comments