Skip to content

Instantly share code, notes, and snippets.

@iracooke
Last active August 29, 2015 13:57
Show Gist options
  • Save iracooke/9908355 to your computer and use it in GitHub Desktop.
Save iracooke/9908355 to your computer and use it in GitHub Desktop.
bpipe script for Trinotate
executor="slurm"
jobtype="single"
queue="compute"
walltime="10-30:00"
procs=16
commands {
blastx {
procs=16
walltime="10-30:00"
}
blastp {
procs=16
walltime="10-30:00"
}
hmmscan {
procs=16
walltime="10-30:00"
}
transdecoder {
procs=16
walltime="10-30:00"
}
}
SWISSPROTDB="/usr/local/blastdb/swissprot"
transdecoder = {
transform("fasta.transdecoder.pep","fasta.transdecoder.cds","fasta.transdecoder.bed","fasta.transdecoder.gff3"){
exec """
module load trinotate
TransDecoder -t $input.fasta -m 50 --search_pfam Pfam-A.hmm --CPU 16
"""
}
}
blastx = {
exec """
module load blast+/2.2.29
module load blastdb
blastx -query $input.fasta -db $SWISSPROTDB -num_threads 16 -max_target_seqs 1 -outfmt 6 > $output
"""
}
blastp = {
exec """
module load blast+/2.2.29
module load blastdb;
blastp -query $input.pep -db $SWISSPROTDB -num_threads 16 -max_target_seqs 1 -outfmt 6 > $output
"""
}
hmmscan = {
produce("hmmscan.out"){
exec """
module load trinotate
hmmscan --cpu 16 --domtblout hmmscan.out Pfam-A.hmm $input.pep > pfam.log
"""
}
}
signalp = {
produce("signalp.out"){
exec """
module load trinotate
signalp -f short -n signalp.out $input.pep
"""
}
}
tmhmm = {
produce("tmhmm.out"){
exec """
module load trinotate
tmhmm --short < $input.pep > tmhmm.out
"""
}
}
run { transdecoder+[blastx,blastp,hmmscan,signalp,tmhmm] }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment