Merge branch 'master' into hmtnote

This commit is contained in:
Subazini TK 2022-05-17 08:05:47 +02:00 committed by GitHub
commit 79c2c529fc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 135 additions and 0 deletions

View file

@ -0,0 +1,37 @@
process MAXQUANT_LFQ {
tag "$meta.id"
label 'process_long'
conda (params.enable_conda ? "bioconda::maxquant=2.0.3.0=py310hdfd78af_1" : null)
if (workflow.containerEngine == 'singularity' && !params.singularity_pull_docker_container) {
container "https://depot.galaxyproject.org/singularity/maxquant:2.0.3.0--py310hdfd78af_1"
} else {
container "quay.io/biocontainers/maxquant:2.0.3.0--py310hdfd78af_1"
}
input:
tuple val(meta), path(fasta), path(paramfile)
path raw
output:
tuple val(meta), path("*.txt"), emit: maxquant_txt
path "versions.yml" , emit: versions
when:
task.ext.when == null || task.ext.when
script:
def args = task.ext.args ?: ''
def prefix = task.ext.prefix ?: "${meta.id}"
"""
cat <<-END_VERSIONS > versions.yml
"${task.process}":
maxquant: \$(maxquant --version 2>&1 > /dev/null | cut -f2 -d\" \")
END_VERSIONS
sed \"s_<numThreads>.*_<numThreads>$task.cpus</numThreads>_\" ${paramfile} > mqpar_changed.xml
sed -i \"s|PLACEHOLDER|\$PWD/|g\" mqpar_changed.xml
mkdir temp
maxquant mqpar_changed.xml
mv combined/txt/*.txt .
"""
}

View file

@ -0,0 +1,52 @@
name: maxquant_lfq
description: Run standard proteomics data analysis with MaxQuant, mostly dedicated to label-free. Paths to fasta and raw files needs to be marked by "PLACEHOLDER"
keywords:
- sort
tools:
- maxquant:
description: MaxQuant is a quantitative proteomics software package designed for analyzing large mass-spectrometric data sets. License restricted.
homepage: None
documentation: None
tool_dev_url: None
doi: ""
licence: ["http://www.coxdocs.org/lib/exe/fetch.php?media=license_agreement.pdf"]
input:
- meta:
type: map
description: |
Groovy Map containing sample information
e.g. [ id:'test', single_end:false ]
- raw:
type: file
description: raw files with mass spectra
pattern: "*.{raw,RAW,Raw}"
- fasta:
type: file
description: fasta file with protein sequences
pattern: "*.{fasta}"
- parfile:
type: file
description: MaxQuant parameter file (XML)
pattern: "*.{xml}"
output:
- meta:
type: map
description: |
Groovy Map containing sample information
e.g. [ id:'test', single_end:false ]
- versions:
type: file
description: File containing software version
pattern: "versions.yml"
- maxquant_txt:
type: file
description: tables with peptides and protein information
pattern: "*.{txt}"
authors:
- "@veitveit"

View file

@ -1214,6 +1214,10 @@ maxbin2:
- modules/maxbin2/** - modules/maxbin2/**
- tests/modules/maxbin2/** - tests/modules/maxbin2/**
maxquant/lfq:
- modules/maxquant/lfq/**
- tests/modules/maxquant/lfq/**
md5sum: md5sum:
- modules/md5sum/** - modules/md5sum/**
- tests/modules/md5sum/** - tests/modules/md5sum/**

View file

@ -430,5 +430,17 @@ params {
ncbi_user_settings = "${test_data_dir}/generic/config/ncbi_user_settings.mkfg" ncbi_user_settings = "${test_data_dir}/generic/config/ncbi_user_settings.mkfg"
} }
} }
'proteomics' {
'msspectra' {
ups_file1 = "${test_data_dir}/proteomics/msspectra/OVEMB150205_12.raw"
ups_file2 = "${test_data_dir}/proteomics/msspectra/OVEMB150205_14.raw"
}
'database' {
yeast_ups = "${test_data_dir}/proteomics/database/yeast_UPS.fasta"
}
'parameter' {
maxquant = "${test_data_dir}/proteomics/parameter/mqpar.xml"
}
}
} }
} }

View file

@ -0,0 +1,17 @@
#!/usr/bin/env nextflow
nextflow.enable.dsl = 2
include { MAXQUANT_LFQ } from '../../../../modules/maxquant/lfq/main.nf' addParams( options: [:] )
workflow test_maxquant_lfq {
input = [ [ id:'test' ], // meta map
file(params.test_data['proteomics']['database']['yeast_ups'], checkIfExists: true), file(params.test_data['proteomics']['parameter']['maxquant'] , checkIfExists: true)
]
rawfiles = [file(params.test_data['proteomics']['msspectra']['ups_file1']) , file(params.test_data['proteomics']['msspectra']['ups_file2'])]
MAXQUANT_LFQ ( input, rawfiles.collect() )
}

View file

@ -0,0 +1,5 @@
process {
publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" }
}

View file

@ -0,0 +1,8 @@
- name: maxquant lfq
command: nextflow run ./tests/modules/maxquant/lfq -entry test_maxquant_lfq -c tests/config/nextflow.config
tags:
- maxquant
- maxquant/lfq
files:
- path: output/maxquant/proteinGroups.txt
md5sum: 0d0f6aab54fe6dc717d1307bbc207324