Update: uLTRA (#1081)

* 👌 IMPROVE: Update .gitignore

* 📦 Add ultra module

* 👌 IMPROVE: Update test input

* 👌 IMPROVE: Update and clean code

- Update to last versions.yml file
- Update meta.yml
- Correct typos

* 👌 IMPROVE: Update output channels + Rename following subtool

* 👌 IMPROVE: Remove old ultre files

* 👌 IMPROVE: Update of pytest_modules.yml

* 👌 IMPROVE: Update test.yml

* 👌 IMPROVE: Keep md5sum as much as possible

* 👌 IMPROVE: Remove old ultra files

* 👌 IMPROVE: Update of pytest_modules.yml

* 👌 IMPROVE: Update test.yml

* 👌 IMPROVE: Keep md5sum as much as possible

* 🐛 Fix: add unsaved modifications

* 🐛 FIX: Remove one inconstant md5sum

* 🐛 FIX: Grab software name using ${getSoftwareName(task.process)}

* 🐛 FIX: Remove md5sums for pickle files (not constant).

* Update modules/ultra/pipeline/main.nf

Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>

* Update modules/ultra/pipeline/main.nf

Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>

* 👌 IMPROVE: update output directory, update meta.yml

* 👌 IMPROVE: Use modules to gunzip and sort gtf

* 🐛 FIX: Set up channel correctly

* 👌 IMPROVE: Remove pickles files and databases

Those data might be useful in a debugging purpose.

* Apply suggestions from code review

* Update main.nf

* 🐛 FIX: Update uLTRA to version 0.0.4.1 + remove $(pwd)

* 👌 IMPROVE: Sort tags in test.yml

* align order of input between main.nf and meta.yml. Add ksahlin as co-author (he did update his package to overcome the pwd-problem

* Update main.nf

* Update main.nf

Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>
Co-authored-by: Lasse Folkersen <lassefolkersen@gmail.com>
Co-authored-by: Robert A. Petit III <robbie.petit@gmail.com>
This commit is contained in:
Sébastien Guizard 2021-11-21 13:00:53 +00:00 committed by GitHub
parent d30bf235b1
commit c25c3fe466
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 20 additions and 21 deletions

View file

@ -11,11 +11,11 @@ process ULTRA_PIPELINE {
mode: params.publish_dir_mode, mode: params.publish_dir_mode,
saveAs: { filename -> saveFiles(filename:filename, options:params.options, publish_dir:getSoftwareName(task.process), meta:meta, publish_by_meta:['id']) } saveAs: { filename -> saveFiles(filename:filename, options:params.options, publish_dir:getSoftwareName(task.process), meta:meta, publish_by_meta:['id']) }
conda (params.enable_conda ? "bioconda::ultra_bioinformatics=0.0.4" : null) conda (params.enable_conda ? "bioconda::ultra_bioinformatics=0.0.4.1" : null)
if (workflow.containerEngine == 'singularity' && !params.singularity_pull_docker_container) { if (workflow.containerEngine == 'singularity' && !params.singularity_pull_docker_container) {
container "https://depot.galaxyproject.org/singularity/ultra_bioinformatics:0.0.4--pyh5e36f6f_1" container "https://depot.galaxyproject.org/singularity/ultra_bioinformatics:0.0.4.1--pyh5e36f6f_0"
} else { } else {
container "quay.io/biocontainers/ultra_bioinformatics:0.0.4--pyh5e36f6f_1" container "quay.io/biocontainers/ultra_bioinformatics:0.0.4.1--pyh5e36f6f_0"
} }
input: input:
@ -35,9 +35,9 @@ process ULTRA_PIPELINE {
--t $task.cpus \\ --t $task.cpus \\
--prefix $prefix \\ --prefix $prefix \\
$options.args \\ $options.args \\
\$(pwd)/$genome \\ $genome \\
\$(pwd)/$gtf \\ $gtf \\
\$(pwd)/$reads \\ $reads \\
./ ./
cat <<-END_VERSIONS > versions.yml cat <<-END_VERSIONS > versions.yml

View file

@ -18,6 +18,10 @@ input:
description: | description: |
Groovy Map containing sample information Groovy Map containing sample information
e.g. [ id:'test', single_end:false ] e.g. [ id:'test', single_end:false ]
- reads:
type: file
description: A fasta or fastq file of reads to align
pattern: "*.{fasta,fastq}"
- genome: - genome:
type: file type: file
description: fasta file of reference genome description: fasta file of reference genome
@ -26,10 +30,6 @@ input:
type: file type: file
description: A annotation of use the genome description: A annotation of use the genome
pattern: "*.gtf" pattern: "*.gtf"
- reads:
type: file
description: A fasta or fastq file of reads to align
pattern: "*.{fasta,fastq}"
output: output:
- meta: - meta:
@ -48,3 +48,5 @@ output:
authors: authors:
- "@sguizard" - "@sguizard"
- "@lassefolkersen"
- "@ksahlin"

View file

@ -8,18 +8,15 @@ include { GFFREAD } from '../../../../modules/gffread/main.nf' add
workflow test_ultra_pipeline { workflow test_ultra_pipeline {
fastq = file(params.test_data['homo_sapiens']['pacbio']['hifi'] , checkIfExists: true) input = [
[ id:'test', single_end:false ],
file(params.test_data['homo_sapiens']['pacbio']['hifi'], checkIfExists: true)
]
GUNZIP ( input )
gtf = file(params.test_data['homo_sapiens']['genome']['genome_gtf'] , checkIfExists: true) gtf = file(params.test_data['homo_sapiens']['genome']['genome_gtf'] , checkIfExists: true)
genome = file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true) genome = file(params.test_data['homo_sapiens']['genome']['genome_fasta'], checkIfExists: true)
GUNZIP ( fastq )
GFFREAD ( gtf ) GFFREAD ( gtf )
GUNZIP ULTRA_PIPELINE ( GUNZIP.out.gunzip, genome, GFFREAD.out.gtf )
.out
.gunzip
.map { [ [ id:'test', single_end:false ], it ] }
.set { input }
ULTRA_PIPELINE ( input, genome, GFFREAD.out.gtf )
} }

View file

@ -1,8 +1,8 @@
- name: ultra pipeline test_ultra_pipeline - name: ultra pipeline test_ultra_pipeline
command: nextflow run tests/modules/ultra/pipeline -entry test_ultra_pipeline -c tests/config/nextflow.config command: nextflow run tests/modules/ultra/pipeline -entry test_ultra_pipeline -c tests/config/nextflow.config
tags: tags:
- ultra/pipeline
- ultra - ultra
- ultra/pipeline
files: files:
- path: output/gffread/genome_sorted.gtf - path: output/gffread/genome_sorted.gtf
md5sum: c0b034860c679a354cd093109ed90437 md5sum: c0b034860c679a354cd093109ed90437