Repository revision
9:cf0f0f05ba9f

Repository 'gemini_annotate'
hg clone https://toolshed.g2.bx.psu.edu/repos/iuc/gemini_annotate

GEMINI annotate tool metadata
Miscellaneous
the variants in an existing GEMINI database with additional information
gemini_annotate
toolshed.g2.bx.psu.edu/repos/iuc/gemini_annotate/gemini_annotate/0.20.1+galaxy2
0.20.1+galaxy2
gemini --version
True
Version lineage of this tool (guids ordered most recent to oldest)
toolshed.g2.bx.psu.edu/repos/iuc/gemini_annotate/gemini_annotate/0.20.1+galaxy2 (this tool)
toolshed.g2.bx.psu.edu/repos/iuc/gemini_annotate/gemini_annotate/0.20.1+galaxy1
toolshed.g2.bx.psu.edu/repos/iuc/gemini_annotate/gemini_annotate/0.20.1
toolshed.g2.bx.psu.edu/repos/iuc/gemini_annotate/gemini_annotate/0.18.1.2
toolshed.g2.bx.psu.edu/repos/iuc/gemini_annotate/gemini_annotate/0.18.1.1
toolshed.g2.bx.psu.edu/repos/iuc/gemini_annotate/gemini_annotate/0.18.1.0
gemini_annotate
Requirements (dependencies defined in the <requirements> tag set)
name version type
gemini 0.20.1 package
Additional information about this tool
## For GEMINI to work correctly, tabixed file must have form [name].[bed|vcf].gz
    #if $annotate_source.ext == 'vcf_bgzip':
        ## File is bgzipped and tabixed already -> just symlink data and index
        #set $tabixed_file = 'tabixed.vcf.gz'
        ln -s '$annotate_source' $tabixed_file &&
        ln -s '$annotate_source.metadata.tabix_index' ${tabixed_file}.tbi &&
    #else:
        ## bgzip and index vcf or bed
        #set $tabixed_file = "tabixed.%s.gz" % $annotate_source.ext
        bgzip -c '$annotate_source' > '$tabixed_file' &&
        tabix -p '$annotate_source.ext' '$tabixed_file' &&
    #end if
    ## gemini annotate modifies its input database in-place so, in Galaxy,
    ## we need to create a copy first!
    cp '$infile' '$outfile' &&

    gemini annotate
        -f '$tabixed_file'
        -a $a.a_selector
        #if $a.a_selector == 'extract':
            #set $types = []
            #set $elements = []
            #set $column_names = []
            #set $operations = []
            #for $action in $a.actions:
                $types.append(str($action.column_type))
                $elements.append(str($action.element_to_extract).strip())
                $column_names.append(str($action.column_name).strip())
                $operations.append(str($action.operation))
            #end for

            -t #echo ",".join($types)
            -e '#echo ",".join($elements)#'
            -o #echo ",".join($operations)
            -c '#echo ",".join($column_names)#'
        #else:
            -c '${a.column_name}'
        #end if
        #if str($annotate_source.ext) != "bed":
            $region_only
        #end if
        '$outfile'

    
None
False
Functional tests
name inputs outputs required files
Test-1 infile: gemini_load_result1.db
annotate_source: anno.bed
region_only: False
a|column_name: anno5
a|a_selector: count
name: value
gemini_load_result1.db
anno.bed
value
Test-2 infile: gemini_load_result1.db
annotate_source: gemini_amend.vcf
region_only: False
a|column_name: anno5
a|a_selector: count
name: value
gemini_load_result1.db
gemini_amend.vcf
value
Test-3 infile: gemini_load_result1.db
annotate_source: gemini_amend.vcf.gz
region_only: False
a|column_name: anno5
a|a_selector: count
name: value
gemini_load_result1.db
gemini_amend.vcf.gz
value
Test-4 infile: gemini_load_result1.db
annotate_source: anno.bed
a|actions_0|element_to_extract: 1
a|actions_0|column_name: anno5
a|actions_0|column_type: text
a|actions_0|operation: first
a|a_selector: extract
gemini_load_result1.db
anno.bed
Test-5 infile: gemini_load_result1.db
annotate_source: anno.bed
a|actions_0|element_to_extract: 1
a|actions_0|column_name: anno5
a|actions_0|column_type: text
a|actions_0|operation: first
a|actions_1|element_to_extract: 2
a|actions_1|column_name: anno6
a|actions_1|column_type: integer
a|actions_1|operation: first
a|a_selector: extract
gemini_load_result1.db
anno.bed