mirror of
https://github.com/MillironX/nf-core_modules.git
synced 2024-12-22 11:08:17 +00:00
Update UNTAR to account for file-only or multi-directory tar archives (#2055)
* Update main.nf * Update meta.yml * Re-add logos as not staged in a way that works with MultiQC config files * Fix when only files or multiple directories * Add test for only-files tar * Fix bash check
This commit is contained in:
parent
c9b29c7686
commit
393dbd6dda
5 changed files with 44 additions and 10 deletions
|
@ -25,12 +25,23 @@ process UNTAR {
|
||||||
"""
|
"""
|
||||||
mkdir output
|
mkdir output
|
||||||
|
|
||||||
tar \\
|
## Ensures --strip-components only applied when top level of tar contents is a directory
|
||||||
-C output --strip-components 1 \\
|
## If just files or multiple directories, place all in output
|
||||||
-xzvf \\
|
if [[ \$(tar -tzf ${archive} | grep "/\$" | wc -l) -eq 1 ]]; then
|
||||||
$args \\
|
tar \\
|
||||||
$archive \\
|
-C output --strip-components 1 \\
|
||||||
$args2
|
-xzvf \\
|
||||||
|
$args \\
|
||||||
|
$archive \\
|
||||||
|
$args2
|
||||||
|
else
|
||||||
|
tar \\
|
||||||
|
-C output \\
|
||||||
|
-xzvf \\
|
||||||
|
$args \\
|
||||||
|
$archive \\
|
||||||
|
$args2
|
||||||
|
fi
|
||||||
|
|
||||||
mv output ${untar}
|
mv output ${untar}
|
||||||
|
|
||||||
|
|
|
@ -26,9 +26,9 @@ output:
|
||||||
Groovy Map containing sample information
|
Groovy Map containing sample information
|
||||||
e.g. [ id:'test', single_end:false ]
|
e.g. [ id:'test', single_end:false ]
|
||||||
- untar:
|
- untar:
|
||||||
type: file
|
type: directory
|
||||||
description:
|
description: Directory containing contents of archive
|
||||||
pattern: "*.*"
|
pattern: "*/"
|
||||||
- versions:
|
- versions:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software versions
|
description: File containing software versions
|
||||||
|
@ -36,3 +36,5 @@ output:
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
- "@drpatelh"
|
- "@drpatelh"
|
||||||
|
- "@matthdsm"
|
||||||
|
- "@jfy133"
|
||||||
|
|
|
@ -446,6 +446,9 @@ params {
|
||||||
ipython_md = "${test_data_dir}/generic/notebooks/jupyter/ipython_notebook.md"
|
ipython_md = "${test_data_dir}/generic/notebooks/jupyter/ipython_notebook.md"
|
||||||
ipython_ipynb = "${test_data_dir}/generic/notebooks/jupyter/ipython_notebook.ipynb"
|
ipython_ipynb = "${test_data_dir}/generic/notebooks/jupyter/ipython_notebook.ipynb"
|
||||||
}
|
}
|
||||||
|
'tar' {
|
||||||
|
tar_gz = "${test_data_dir}/generic/tar/hello.tar.gz"
|
||||||
|
}
|
||||||
'tsv' {
|
'tsv' {
|
||||||
test_tsv = "${test_data_dir}/generic/tsv/test.tsv"
|
test_tsv = "${test_data_dir}/generic/tsv/test.tsv"
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,3 +22,13 @@ workflow test_untar_different_output_path {
|
||||||
|
|
||||||
UNTAR ( input )
|
UNTAR ( input )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
workflow test_untar_onlyfiles {
|
||||||
|
input = [
|
||||||
|
[],
|
||||||
|
file(params.test_data['generic']['tar']['tar_gz'], checkIfExists: true)
|
||||||
|
]
|
||||||
|
|
||||||
|
UNTAR ( input )
|
||||||
|
}
|
||||||
|
|
|
@ -15,5 +15,13 @@
|
||||||
tags:
|
tags:
|
||||||
- untar
|
- untar
|
||||||
files:
|
files:
|
||||||
- path: output/untar/flowcell/RunInfo.xml
|
- path: output/untar/flowcell/220422_M11111_0222_000000000-K9H97/RunInfo.xml
|
||||||
md5sum: 03038959f4dd181c86bc97ae71fe270a
|
md5sum: 03038959f4dd181c86bc97ae71fe270a
|
||||||
|
|
||||||
|
- name: untar test_untar_onlyfiles
|
||||||
|
command: nextflow run ./tests/modules/untar -entry test_untar_onlyfiles -c ./tests/config/nextflow.config -c ./tests/modules/untar/nextflow.config
|
||||||
|
tags:
|
||||||
|
- untar
|
||||||
|
files:
|
||||||
|
- path: output/untar/hello/hello.txt
|
||||||
|
md5sum: e59ff97941044f85df5297e1c302d260
|
||||||
|
|
Loading…
Reference in a new issue