diff --git a/.markdownlint.yml b/.markdownlint.yml new file mode 100644 index 00000000..9e605fcf --- /dev/null +++ b/.markdownlint.yml @@ -0,0 +1,14 @@ +# Markdownlint configuration file +default: true +line-length: false +ul-indent: + indent: 4 +no-duplicate-header: + siblings_only: true +no-inline-html: + allowed_elements: + - img + - p + - kbd + - details + - summary diff --git a/.nf-core.yml b/.nf-core.yml new file mode 100644 index 00000000..aa51329f --- /dev/null +++ b/.nf-core.yml @@ -0,0 +1,10 @@ +lint: + files_exist: + - assets/nf-core-ARETE_logo.png + - docs/images/nf-core-ARETE_logo.png + files_unchanged: + - assets/email_template.html + - assets/multiqc_config.yaml + nextflow_config: + - params.input + - manifest.name diff --git a/modules/local/blast_databases.nf b/modules/local/blast_databases.nf index bc830e27..2751b3f4 100644 --- a/modules/local/blast_databases.nf +++ b/modules/local/blast_databases.nf @@ -16,6 +16,10 @@ process GET_VFDB{ """ curl http://www.mgc.ac.cn/VFs/Down/VFDB_setB_pro.fas.gz --output VFDB_setB_pro.fas.gz """ + stub: + """ + touch VFDB_setB_pro.fas.gz + """ } process GET_BACMET{ @@ -26,4 +30,8 @@ process GET_BACMET{ """ curl http://bacmet.biomedicine.gu.se/download/BacMet2_predicted_database.fasta.gz --output BacMet2_predicted_database.fasta.gz """ + stub: + """ + touch BacMet2_predicted_database.fasta.gz + """ } diff --git a/modules/local/get_minikraken.nf b/modules/local/get_minikraken.nf index cdbba50e..fdf6827c 100644 --- a/modules/local/get_minikraken.nf +++ b/modules/local/get_minikraken.nf @@ -17,4 +17,8 @@ process KRAKEN2_DB { mkdir -p k2_standard_8gb_20201202 tar xvf k2_standard_8gb_20201202.tar.gz -C k2_standard_8gb_20201202 """ + stub: + """ + mkdir -p k2_standard_8gb_20201202 + """ } diff --git a/modules/local/mobsuite.nf b/modules/local/mobsuite.nf index 9956cc5f..fe55b147 100644 --- a/modules/local/mobsuite.nf +++ b/modules/local/mobsuite.nf @@ -37,6 +37,12 @@ process MOB_RECON { mob_recon --version > ${software}.version.txt """ //--database_directory $mob_db \\ + stub: + def software = getSoftwareName(task.process) + """ + mkdir ${meta.id}_mob_recon + mob_recon --version > ${software}.version.txt + """ } // MOB_INIT also exists but seems to be unneeded. diff --git a/modules/local/rgi.nf b/modules/local/rgi.nf index cff35265..cf5f8229 100644 --- a/modules/local/rgi.nf +++ b/modules/local/rgi.nf @@ -53,4 +53,11 @@ process RGI { echo \$(rgi main --version 2>&1) > ${software}.version.txt """ + stub: + def software = getSoftwareName(task.process) + def prefix = options.suffix ? "${meta.id}${options.suffix}" : "${meta.id}" + """ + touch ${prefix}_rgi.txt + echo \$(rgi main --version 2>&1) > ${software}.version.txt + """ } diff --git a/modules/nf-core/modules/blast/blastn/main.nf b/modules/nf-core/modules/blast/blastn/main.nf index 0d65f1d0..ffdfff95 100644 --- a/modules/nf-core/modules/blast/blastn/main.nf +++ b/modules/nf-core/modules/blast/blastn/main.nf @@ -41,4 +41,13 @@ process BLAST_BLASTN { ${getSoftwareName(task.process)}: \$(blastn -version 2>&1 | sed 's/^.*blastn: //; s/ .*\$//') END_VERSIONS """ + stub: + def prefix = options.suffix ? "${meta.id}${options.suffix}" : "${meta.id}" + """ + touch ${prefix}.blastn.txt + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$(blastn -version 2>&1 | sed 's/^.*blastn: //; s/ .*\$//') + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/blast/makeblastdb/main.nf b/modules/nf-core/modules/blast/makeblastdb/main.nf index 0538e0db..7ad18ff0 100644 --- a/modules/nf-core/modules/blast/makeblastdb/main.nf +++ b/modules/nf-core/modules/blast/makeblastdb/main.nf @@ -37,4 +37,12 @@ process BLAST_MAKEBLASTDB { ${getSoftwareName(task.process)}: \$(blastn -version 2>&1 | sed 's/^.*blastn: //; s/ .*\$//') END_VERSIONS """ + stub: + """ + mkdir blast_db + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$(blastn -version 2>&1 | sed 's/^.*blastn: //; s/ .*\$//') + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/checkm/lineagewf/main.nf b/modules/nf-core/modules/checkm/lineagewf/main.nf index e2f95446..fb56f361 100644 --- a/modules/nf-core/modules/checkm/lineagewf/main.nf +++ b/modules/nf-core/modules/checkm/lineagewf/main.nf @@ -48,4 +48,14 @@ process CHECKM_LINEAGEWF { checkm: \$( checkm 2>&1 | grep '...:::' | sed 's/.*CheckM v//;s/ .*//' ) END_VERSIONS """ + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + mkdir ${prefix} + touch ${prefix}.tsv + cat <<-END_VERSIONS > versions.yml + "${task.process}": + checkm: \$( checkm 2>&1 | grep '...:::' | sed 's/.*CheckM v//;s/ .*//' ) + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/diamond/blastx/main.nf b/modules/nf-core/modules/diamond/blastx/main.nf index d5588efd..8a759091 100644 --- a/modules/nf-core/modules/diamond/blastx/main.nf +++ b/modules/nf-core/modules/diamond/blastx/main.nf @@ -47,4 +47,13 @@ process DIAMOND_BLASTX { ${getSoftwareName(task.process)}: \$(diamond --version 2>&1 | tail -n 1 | sed 's/^diamond version //') END_VERSIONS """ + stub: + def prefix = options.suffix ? "${meta.id}${options.suffix}" : "${meta.id}" + """ + touch ${prefix}_${label}.txt + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$(diamond --version 2>&1 | tail -n 1 | sed 's/^diamond version //') + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/diamond/makedb/main.nf b/modules/nf-core/modules/diamond/makedb/main.nf index e4533f8f..2907c831 100644 --- a/modules/nf-core/modules/diamond/makedb/main.nf +++ b/modules/nf-core/modules/diamond/makedb/main.nf @@ -41,4 +41,13 @@ process DIAMOND_MAKEDB { ${getSoftwareName(task.process)}: \$(diamond --version 2>&1 | tail -n 1 | sed 's/^diamond version //') END_VERSIONS """ + + stub: + """ + touch ${fasta}.dmnd + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$(diamond --version 2>&1 | tail -n 1 | sed 's/^diamond version //') + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/fastp/main.nf b/modules/nf-core/modules/fastp/main.nf index e99540d5..86733148 100644 --- a/modules/nf-core/modules/fastp/main.nf +++ b/modules/nf-core/modules/fastp/main.nf @@ -79,4 +79,16 @@ process FASTP { END_VERSIONS """ } + stub: + def prefix = options.suffix ? "${meta.id}${options.suffix}" : "${meta.id}" + """ + touch ${prefix}.trim.fastq.gz + touch ${prefix}.trim.fastp.html + touch ${prefix}.trim.fastp.json + touch ${prefix}.trim.fastp.log + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$(fastp --version 2>&1 | sed -e "s/fastp //g") + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/fastqc/main.nf b/modules/nf-core/modules/fastqc/main.nf index bfa4aba7..410a4efb 100644 --- a/modules/nf-core/modules/fastqc/main.nf +++ b/modules/nf-core/modules/fastqc/main.nf @@ -45,4 +45,13 @@ process FASTQC { fastqc --version | sed -e "s/FastQC v//g" > ${software}.version.txt """ } + + stub: + def software = getSoftwareName(task.process) + def prefix = "${meta.id}.${run_name}" + """ + touch ${prefix}.fastqcstub.html + touch ${prefix}.fastqcstub.zip + fastqc --version | sed -e "s/FastQC v//g" > ${software}.version.txt + """ } diff --git a/modules/nf-core/modules/iqtree/main.nf b/modules/nf-core/modules/iqtree/main.nf index bec879df..d3ad9203 100644 --- a/modules/nf-core/modules/iqtree/main.nf +++ b/modules/nf-core/modules/iqtree/main.nf @@ -43,4 +43,13 @@ process IQTREE { ${getSoftwareName(task.process)}: \$(echo \$(iqtree -version 2>&1) | sed 's/^IQ-TREE multicore version //;s/ .*//') END_VERSIONS """ + + stub: + """ + touch faketree.treefile + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$(echo \$(iqtree -version 2>&1) | sed 's/^IQ-TREE multicore version //;s/ .*//') + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/kraken2/kraken2/main.nf b/modules/nf-core/modules/kraken2/kraken2/main.nf index 4156f2a4..8ff7793c 100644 --- a/modules/nf-core/modules/kraken2/kraken2/main.nf +++ b/modules/nf-core/modules/kraken2/kraken2/main.nf @@ -52,4 +52,17 @@ process KRAKEN2_KRAKEN2 { pigz: \$( pigz --version 2>&1 | sed 's/pigz //g' ) END_VERSIONS """ + + stub: + def prefix = options.suffix ? "${meta.id}${options.suffix}" : "${meta.id}" + """ + touch ${prefix}.classified.fastq.gz + touch ${prefix}.unclassified.fastq.gz + touch ${prefix}.kraken2.report.txt + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$(echo \$(kraken2 --version 2>&1) | sed 's/^.*Kraken version //; s/ .*\$//') + pigz: \$( pigz --version 2>&1 | sed 's/pigz //g' ) + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/multiqc/main.nf b/modules/nf-core/modules/multiqc/main.nf index 63f57ad1..472fc377 100644 --- a/modules/nf-core/modules/multiqc/main.nf +++ b/modules/nf-core/modules/multiqc/main.nf @@ -32,4 +32,13 @@ process MULTIQC { multiqc -f $options.args . multiqc --version | sed -e "s/multiqc, version //g" > ${software}.version.txt """ + + stub: + def software = getSoftwareName(task.process) + """ + touch stub_multiqc_report.html + mkdir multiqc_stub_data + mkdir multiqc_stub_reports + multiqc --version | sed -e "s/multiqc, version //g" > ${software}.version.txt + """ } diff --git a/modules/nf-core/modules/prokka/main.nf b/modules/nf-core/modules/prokka/main.nf index 35ed00d7..4c97a9de 100644 --- a/modules/nf-core/modules/prokka/main.nf +++ b/modules/nf-core/modules/prokka/main.nf @@ -57,4 +57,26 @@ process PROKKA { ${getSoftwareName(task.process)}: \$(echo \$(prokka --version 2>&1) | sed 's/^.*prokka //') END_VERSIONS """ + + stub: + prefix = options.suffix ? "${meta.id}${options.suffix}" : "${meta.id}" + """ + mkdir ${prefix} + touch ${prefix}/${prefix}_stub.err + touch ${prefix}/${prefix}_stub.ffn + touch ${prefix}/${prefix}_stub.faa + touch ${prefix}/${prefix}_stub.gbk + touch ${prefix}/${prefix}_stub.fna + touch ${prefix}/${prefix}_stub.fsa + touch ${prefix}/${prefix}_stub.gff + touch ${prefix}/${prefix}_stub.log + touch ${prefix}/${prefix}_stub.sqn + touch ${prefix}/${prefix}_stub.tbl + touch ${prefix}/${prefix}_stub.tsv + touch ${prefix}/${prefix}_stub.txt + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$(echo \$(prokka --version 2>&1) | sed 's/^.*prokka //') + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/quast/main.nf b/modules/nf-core/modules/quast/main.nf index a4e2b343..187c3d46 100644 --- a/modules/nf-core/modules/quast/main.nf +++ b/modules/nf-core/modules/quast/main.nf @@ -48,4 +48,16 @@ process QUAST { ${getSoftwareName(task.process)}: \$(quast.py --version 2>&1 | sed 's/^.*QUAST v//; s/ .*\$//') END_VERSIONS """ + + stub: + def software = getSoftwareName(task.process) + prefix = options.suffix ?: software + """ + mkdir ${prefix} + touch ${prefix}_quast_stub.tsv + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$(quast.py --version 2>&1 | sed 's/^.*QUAST v//; s/ .*\$//') + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/roary/main.nf b/modules/nf-core/modules/roary/main.nf index 9dc948fb..ddb27f03 100644 --- a/modules/nf-core/modules/roary/main.nf +++ b/modules/nf-core/modules/roary/main.nf @@ -40,4 +40,14 @@ process ROARY { ${getSoftwareName(task.process)}: \$( roary --version ) END_VERSIONS """ + + stub: + """ + mkdir results + touch results/roary_stub.aln + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$( roary --version ) + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/snpsites/main.nf b/modules/nf-core/modules/snpsites/main.nf index 543ee01c..abdb42d6 100644 --- a/modules/nf-core/modules/snpsites/main.nf +++ b/modules/nf-core/modules/snpsites/main.nf @@ -42,4 +42,14 @@ process SNPSITES { ${getSoftwareName(task.process)}: \$(snp-sites -V 2>&1 | sed 's/snp-sites //') END_VERSIONS """ + stub: + """ + touch snpsites_stub.fas + echo acgt > snpsites_stub.sites.txt + CONSTANT_SITES=\$(cat snpsites_stub.sites.txt) + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$(snp-sites -V 2>&1 | sed 's/snp-sites //') + END_VERSIONS + """ } diff --git a/modules/nf-core/modules/unicycler/main.nf b/modules/nf-core/modules/unicycler/main.nf index 185780de..0da9ebeb 100644 --- a/modules/nf-core/modules/unicycler/main.nf +++ b/modules/nf-core/modules/unicycler/main.nf @@ -56,4 +56,16 @@ process UNICYCLER { ${getSoftwareName(task.process)}: \$(echo \$(unicycler --version 2>&1) | sed 's/^.*Unicycler v//; s/ .*\$//') END_VERSIONS """ + stub: + + def prefix = options.suffix ? "${meta.id}${options.suffix}" : "${meta.id}" + """ + touch ${prefix}_stub.scaffolds.fa + touch ${prefix}_stub.assembly.gfa + touch ${prefix}_stub.unicylcer.log + cat <<-END_VERSIONS > versions.yml + ${getProcessName(task.process)}: + ${getSoftwareName(task.process)}: \$(echo \$(unicycler --version 2>&1) | sed 's/^.*Unicycler v//; s/ .*\$//') + END_VERSIONS + """ }