-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add InterProScan to Pipeline and integrate in AMPcombi #428
Changes from 22 commits
86592d9
491f25d
bbd456e
5b5cb3e
d8c5bf2
fd1ef46
b54f1ea
fee3adb
8b44ed5
ed81b0b
0340ba9
7e1f164
5be17ef
b782b54
e58b322
310a0be
8c8aeaf
804da18
186d351
f88fe9c
5d1f4b7
a7e681d
f14990f
9ecac2e
bdf0a98
b10dd7d
a54d7aa
5dd1a8f
d4c6ce6
f68d316
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -91,7 +91,7 @@ process { | |
].join(' ').trim() | ||
} | ||
|
||
withName: SEQKIT_SEQ { | ||
withName: SEQKIT_SEQ_LENGTH { | ||
ext.prefix = { "${meta.id}_long" } | ||
publishDir = [ | ||
path: { "${params.outdir}/bgc/seqkit/" }, | ||
|
@@ -104,6 +104,45 @@ process { | |
].join(' ').trim() | ||
} | ||
|
||
withName: SEQKIT_SEQ_FILTER { | ||
ext.prefix = { "${meta.id}_cleaned.faa" } | ||
publishDir = [ | ||
path: { "${params.outdir}/protein_annotation/interproscan/" }, | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Are we sure we want the output in If not, what do you think of renaming the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The other annotation tools in the annotation workflow are annotating CDS which also can be proteins. I would leave the annotation workflow as is because thats the baseline annotation step of the pipeline. This annotation step is more of an accessory annotation to the pipeline if the user wants more information from diff DB and (1) its technically not correct protein_annotation because those are nnot necessary proteins and (2) the plan is that we add more to this workflow (e.g. the functional annotation of those CDS) so protein annotation will no longer be valid. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The ouput im not sure if its a good idea to add it in the same folder because those are two diff workflows There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Okay. No strong opinion from my side. I still don't find the naming super intuitive, but it can be. Or why not |
||
mode: params.publish_dir_mode, | ||
enabled: { params.run_protein_annotation }, | ||
saveAs: { filename -> filename.equals('versions.yml') ? null : filename } | ||
] | ||
ext.args = [ | ||
"--gap-letters '* \t.' --remove-gaps" | ||
].join(' ').trim() | ||
} | ||
|
||
withName: INTERPROSCAN_DATABASE { | ||
publishDir = [ | ||
path: { "${params.outdir}/databases/interproscan/" }, | ||
mode: params.publish_dir_mode, | ||
enabled: params.save_db, | ||
saveAs: { filename -> filename.equals('versions.yml') ? null : filename } | ||
] | ||
} | ||
|
||
withName: INTERPROSCAN { | ||
ext.prefix = { "${meta.id}_interproscan.faa" } | ||
Darcy220606 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
publishDir = [ | ||
path: { "${params.outdir}/protein_annotation/interproscan/" }, | ||
mode: params.publish_dir_mode, | ||
enabled: params.run_protein_annotation, | ||
saveAs: { filename -> filename.equals('versions.yml') ? null : filename } | ||
] | ||
ext.args = [ | ||
"--applications ${params.protein_annotation_interproscan_applications}", | ||
params.protein_annotation_interproscan_enableprecalc ? '' : '--disable-precalc', | ||
params.protein_annotation_interproscan_enableresidueannot ? '' : '--disable-residue-annot', | ||
params.protein_annotation_interproscan_disableresidueannottsv ? '--enable-tsv-residue-annot' : '', | ||
Darcy220606 marked this conversation as resolved.
Show resolved
Hide resolved
|
||
"--formats tsv" | ||
].join(' ').trim() | ||
} | ||
|
||
withName: PROKKA { | ||
ext.prefix = { "${meta.id}_prokka" } | ||
publishDir = [ | ||
|
@@ -686,7 +725,7 @@ process { | |
|
||
withName: AMP_DATABASE_DOWNLOAD { | ||
publishDir = [ | ||
path: { "${params.outdir}/databases/${params.amp_ampcombi_db}" }, | ||
path: { "${params.outdir}/databases/ampcombi/" }, | ||
mode: params.publish_dir_mode, | ||
enabled: params.save_db, | ||
saveAs: { filename -> filename.equals('versions.yml') ? null : filename }, | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
process INTERPROSCAN_DATABASE { | ||
tag "interproscan_database_download" | ||
label 'process_medium' | ||
|
||
conda "conda-forge::sed=4.7" | ||
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? | ||
'https://depot.galaxyproject.org/singularity/curl:7.80.0' : | ||
'biocontainers/curl:7.80.0' }" | ||
|
||
input: | ||
val database_url | ||
|
||
output: | ||
path("interproscan_db/*"), emit: db | ||
path "versions.yml", emit: versions | ||
|
||
when: | ||
task.ext.when == null || task.ext.when | ||
|
||
script: | ||
""" | ||
mkdir -p interproscan_db/ | ||
|
||
filename=\$(basename ${database_url}) | ||
|
||
curl -L ${database_url} -o interproscan_db/\$filename | ||
tar -xzf interproscan_db/\$filename -C interproscan_db/ | ||
|
||
cat <<-END_VERSIONS > versions.yml | ||
"${task.process}": | ||
tar: \$(tar --version 2>&1 | sed -n '1s/tar (busybox) //p') | ||
curl: "\$(curl --version 2>&1 | sed -n '1s/^curl \\([0-9.]*\\).*/\\1/p')" | ||
END_VERSIONS | ||
""" | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.