Repository revision
35:cbf3f518b668

Repository 'ncbi_blast_plus'
hg clone https://toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus

NCBI BLAST+ blastdbcmd entry(s) tool metadata
Miscellaneous
Extract sequence(s) from BLAST database
ncbi_blastdbcmd_wrapper
toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastdbcmd_wrapper/2.14.1+galaxy2
2.14.1+galaxy2
blastdbcmd -version
True
Version lineage of this tool (guids ordered most recent to oldest)
toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastdbcmd_wrapper/2.14.1+galaxy2 (this tool)
toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastdbcmd_wrapper/2.14.1+galaxy1
toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastdbcmd_wrapper/2.14.1+galaxy0
toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastdbcmd_wrapper/2.10.1+galaxy2
toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastdbcmd_wrapper/2.10.1+galaxy1
toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastdbcmd_wrapper/2.10.1+galaxy0
toolshed.g2.bx.psu.edu/repos/devteam/ncbi_blast_plus/ncbi_blastdbcmd_wrapper/0.0.3
ncbi_blastdbcmd_wrapper
Requirements (dependencies defined in the <requirements> tag set)
name version type
blast 2.14.1 package
Additional information about this tool
## The command is a Cheetah template which allows some Python based syntax.
## Lines starting hash hash are comments. Galaxy will turn newlines into spaces
blastdbcmd

-dbtype "$db_opts.db_type"
#if $db_opts.db_origin.db_origin_selector=="db":
  -db "${db_opts.db_origin.database.fields.path.replace(',',' ')}"
#else if $db_opts.db_origin.db_origin_selector=="histdb":
  -db '${os.path.join($db_opts.db_origin.histdb.extra_files_path, "blastdb")}'
#end if
    

#if $id_opts.id_type=="file":
-entry_batch '$id_opts.entries'
#else:
##Perform some simple search/replaces to remove whitespace
##and make it comma separated. Quoted so don't escape pipes.
-entry "$id_opts.entries.replace('\r',',').replace('\n',',').replace(' ','').replace(',,',',').replace(',,',',').strip(',')"
#end if

##When building a BLAST database, to ensure unique IDs makeblastdb will
##do things like turning a FASTA entry with ID of ERP44 into lcl|ERP44
##(if using -parse_seqids) or simply assign it an ID using the record
##number like gnl|BL_ORD_ID|123 (to cope with duplicate IDs in the FASTA
##file). In -parse_seqids mode, a duplicate FASTA ID gives an error.
##
##The BLAST plain text and XML output will contain these BLAST IDs, but
##the tabular output does not (at least, not in BLAST 2.2.25+).
##Therefore in general, Galaxy users won't care about the (internal)
##BLAST identifiers.
##
##The blastdbcmd FASTA output will also contain these IDs, but in the
##context of the BLAST tabular output they are not helpful. Therefore
##to recover the original ID as used in the FASTA file for makeblastdb
##we need a litte post processing.
##
##We remove the NCBI's lcl|... or gnl|BL_ORD_ID|123 prefixes
##using sed, however the exact syntax differs for Mac OS X's sed

#if str($outfmt)=="blastid":
-out '$seq'
#else if sys.platform == "darwin":
| sed -E 's/^>(lcl\||gnl\|BL_ORD_ID\|[0-9]* )/>/1' > "$seq"
#else:
| sed 's/>\(lcl|\|gnl|BL_ORD_ID|[0-9]* \)/>/1' > "$seq"
#end if
    
None
False
Functional tests
name inputs outputs required files
Test-1 db_opts|db_origin|database: four_human_proteins
db_opts|db_origin|db_origin_selector: db
db_opts|db_type: prot
id_opts|entries: all
id_opts|id_type: prompt
outfmt: original
name: value
value
Test-2 db_opts|db_origin|database: rhodopsin_nucs
db_opts|db_type: nucl
id_opts|entries: all
id_opts|id_type: prompt
outfmt: original
name: value
value
Test-3 db_opts|db_origin|database: rhodopsin_nucs
db_opts|db_type: nucl
id_opts|entries: rhodopsin_nucs.blastdbcmd.txt
id_opts|id_type: file
outfmt: original
name: value
rhodopsin_nucs.blastdbcmd.txt
value
Test-4 db_opts|db_origin|database: rhodopsin_nucs
db_opts|db_type: nucl
id_opts|entries: U59921.1
id_opts|id_type: prompt
outfmt: original
name: value
value
Test-5 db_opts|db_origin|database: ['rhodopsin_nucs', 'three_human_mRNA']
db_opts|db_type: nucl
id_opts|entries: gi|2734705|gb|U59921.1|BBU59921
id_opts|id_type: prompt
outfmt: original
name: value
value