Mercurial > repos > iuc > bcftools_mpileup
changeset 2:cf06b44624c7 draft
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/bcftools commit 2684e1443f03bfe2ae20c31d23817415ec8f7e69
author | iuc |
---|---|
date | Thu, 21 Feb 2019 16:09:57 -0500 |
parents | 9c711df3258d |
children | 4e1d23e5c691 |
files | bcftools_mpileup.xml macros.xml test-data/summary.pdf test-data/view.bcf test-data/view.bcf.csi test-data/view.vcf_bgzip |
diffstat | 6 files changed, 81 insertions(+), 77 deletions(-) [+] |
line wrap: on
line diff
--- a/bcftools_mpileup.xml Tue Dec 12 14:05:31 2017 -0500 +++ b/bcftools_mpileup.xml Thu Feb 21 16:09:57 2019 -0500 @@ -1,5 +1,5 @@ <?xml version='1.0' encoding='utf-8'?> -<tool name="bcftools @EXECUTABLE@" id="bcftools_@EXECUTABLE@" version="@VERSION@.0"> +<tool name="bcftools @EXECUTABLE@" id="bcftools_@EXECUTABLE@" version="@TOOL_VERSION@"> <description>Generate VCF or BCF containing genotype likelihoods for one or multiple alignment (BAM or CRAM) files</description> <macros> <token name="@EXECUTABLE@">mpileup</token> @@ -16,7 +16,7 @@ <option value="256">The alignment or this read is not primary</option> <option value="512">The read fails platform/vendor quality checks</option> <option value="1024">The read is a PCR or optical duplicate</option> - </xml> + </xml> </macros> <expand macro="requirements"> <expand macro="samtools_requirement"/> @@ -37,9 +37,9 @@ #silent $bam_list.append($input_name) ln -s '${input.input_bam}' ${input_name} && #if $input.input_bam.ext == 'bam': - ln -s '${input.input_bam.metadata.bam_index}' ${input_name}.${idx_ext} && + ln -s '${input.input_bam.metadata.bam_index}' ${input_name}.${idx_ext} && #else: - ln -s '${input.input_bam.metadata.cram_index}' ${input_name}.${idx_ext} && + ln -s '${input.input_bam.metadata.cram_index}' ${input_name}.${idx_ext} && #end if #else: #for $bam_count, $input_bam in enumerate( $input.input_bams ): @@ -59,11 +59,11 @@ #set $input_fa_ref = None #if $reference_source.reference_source_selector == "history": - #set $input_fa_ref = 'ref.fa' - ln -s '${reference_source.ref_file}' $input_fa_ref && - samtools faidx $input_fa_ref && + #set $input_fa_ref = 'ref.fa' + ln -s '${reference_source.ref_file}' $input_fa_ref && + samtools faidx $input_fa_ref && #elif $reference_source.reference_source_selector == "cached": - #set $input_fa_ref = $reference_source.ref_file.fields.path + #set $input_fa_ref = $reference_source.ref_file.fields.path #end if #set $section = $sec_restrict @@ -81,53 +81,53 @@ ## Indel Calling section #set $section = $sec_indel #if $section.perform_indel_calling.perform_indel_calling_selector == 'do_not_perform_indel_calling': - --skip-indels + --skip-indels #elif $section.perform_indel_calling.perform_indel_calling_selector == 'perform_indel_calling': - -o "${section.perform_indel_calling.gap_open_sequencing_error_probability}" - -e "${section.perform_indel_calling.gap_extension_sequencing_error_probability}" - -h "${section.perform_indel_calling.coefficient_for_modeling_homopolymer_errors}" - -L "${section.perform_indel_calling.skip_indel_calling_above_sample_depth}" - -m "${section.perform_indel_calling.minimum_gapped_reads_for_indel_candidates}" - --open-prob "${section.perform_indel_calling.open_seq_error_probability}" - -F "${section.perform_indel_calling.minimum_gapped_read_fraction}" - ${section.perform_indel_calling.gapped_read_per_sample} - #if len( $section.perform_indel_calling.platform_list_repeat ): - -P "${ ",".join( [ str( platform.platform_entry ) for platform in $section.perform_indel_calling.platform_list_repeat ] ) }" - #end if + -o "${section.perform_indel_calling.gap_open_sequencing_error_probability}" + -e "${section.perform_indel_calling.gap_extension_sequencing_error_probability}" + -h "${section.perform_indel_calling.coefficient_for_modeling_homopolymer_errors}" + -L "${section.perform_indel_calling.skip_indel_calling_above_sample_depth}" + -m "${section.perform_indel_calling.minimum_gapped_reads_for_indel_candidates}" + --open-prob "${section.perform_indel_calling.open_seq_error_probability}" + -F "${section.perform_indel_calling.minimum_gapped_read_fraction}" + ${section.perform_indel_calling.gapped_read_per_sample} + #if len( $section.perform_indel_calling.platform_list_repeat ): + -P "${ ",".join( [ str( platform.platform_entry ) for platform in $section.perform_indel_calling.platform_list_repeat ] ) }" + #end if #end if ## Filter section #set $section = $sec_filtering #if str( $section.filter_by_flags.filter_flags ) == "filter": - #if $section.filter_by_flags.require_flags: - --rf ${sum([int(flag) for flag in str($section.filter_by_flags.require_flags).split(',')])} - #end if - #if $section.filter_by_flags.exclude_flags: - --ff ${sum([int(flag) for flag in str($section.filter_by_flags.exclude_flags).split(',')])} - #end if + #if $section.filter_by_flags.require_flags: + --rf ${sum([int(flag) for flag in str($section.filter_by_flags.require_flags).split(',')])} + #end if + #if $section.filter_by_flags.exclude_flags: + --ff ${sum([int(flag) for flag in str($section.filter_by_flags.exclude_flags).split(',')])} + #end if #end if -d "${section.max_reads_per_bam}" ${section.skip_anomalous_read_pairs} #if str( $section.quality.quality_settings ) == "adjust": - $section.quality.baq - -q "${section.quality.minimum_mapping_quality}" - -Q "${section.quality.minimum_base_quality}" - -C "${section.quality.coefficient_for_downgrading}" + $section.quality.baq + -q "${section.quality.minimum_mapping_quality}" + -Q "${section.quality.minimum_base_quality}" + -C "${section.quality.coefficient_for_downgrading}" #end if #if str( $section.read_groups.read_groups_selector ) == "ignore_rg": - --ignore-RG + --ignore-RG #elif str( $section.read_groups.read_groups_selector ) == "paste": - -G "${section.read_groups.rg_action}${read_groups_file}" + -G "${section.read_groups.rg_action}${read_groups_file}" #elif str( $section.read_groups.read_groups_selector ) == "history" - -G "${section.read_groups.rg_action}${section.read_groups.read_groups}" + -G "${section.read_groups.rg_action}${section.read_groups.read_groups}" #end if #set $section = $sec_output_options #if $section.output_tags: - --annotate "$section.output_tags" + --annotate "$section.output_tags" #end if #if $section.gvcf: - --gvcf "$section.gvcf" + --gvcf "$section.gvcf" #end if ## Subset section @@ -147,18 +147,17 @@ #echo ' '.join($bam_list)# > '$output_file' #if str( $sec_filtering.read_groups.read_groups_selector ) == "paste": -&& echo 'read-groups:' -&& cat ${read_groups_file} + && echo 'read-groups:' + && cat ${read_groups_file} #end if -]]> - </command> + ]]></command> <configfiles> <configfile name="read_groups_file"> <![CDATA[#slurp #set pasted_data = '' #set $section = $sec_filtering #if str( $section.read_groups.read_groups_selector ) == "paste": - #set pasted_data = '\t'.join( str( $section.read_groups.group_paste).split() ) + #set pasted_data = '\t'.join( str( $section.read_groups.group_paste).split() ) #end if #slurp ${pasted_data} @@ -444,7 +443,6 @@ @BCFTOOLS_MANPAGE@#@EXECUTABLE@ @BCFTOOLS_WIKI@ -]]> - </help> + ]]></help> <expand macro="citations" /> </tool>
--- a/macros.xml Tue Dec 12 14:05:31 2017 -0500 +++ b/macros.xml Thu Feb 21 16:09:57 2019 -0500 @@ -1,5 +1,5 @@ <macros> - <token name="@VERSION@">1.4.0</token> + <token name="@TOOL_VERSION@">1.9</token> <xml name="stdio"> <stdio> <exit_code range="1:" /> @@ -10,13 +10,13 @@ </xml> <xml name="requirements"> <requirements> - <requirement type="package" version="1.4">bcftools</requirement> - <requirement type="package" version="1.4">htslib</requirement> + <requirement type="package" version="@TOOL_VERSION@">bcftools</requirement> + <requirement type="package" version="1.9">htslib</requirement> <yield /> </requirements> </xml> <xml name="samtools_requirement"> - <requirement type="package" version="1.3.1">samtools</requirement> + <requirement type="package" version="1.9">samtools</requirement> </xml> <xml name="version_command"> <version_command>bcftools 2>&1 | grep 'Version:'</version_command> @@ -39,7 +39,7 @@ ]]> </token> <xml name="macro_input"> - <param name="input_file" type="data" format="vcf,vcf_bgzip,bcf,bcf_bgzip" label="VCF/BCF Data" /> + <param name="input_file" type="data" format="vcf,vcf_bgzip,bcf" label="VCF/BCF Data" /> </xml> <token name="@PREPARE_INPUT_FILE@"> <![CDATA[ @@ -50,6 +50,11 @@ bcftools index $input_vcf && #elif $input_file.is_of_type('vcf_bgzip') ln -s '$input_file' $input_vcf && + #if $input_file.metadata.tabix_index: + ln -s '${input_file.metadata.tabix_index}' ${input_vcf}.tbi && + #else + bcftools index $input_vcf && + #end if #elif $input_file.is_of_type('bcf') #set $input_vcf = 'input.bcf' ln -s '$input_file' $input_vcf && @@ -58,8 +63,6 @@ #else bcftools index $input_vcf && #end if -#elif $input_file.is_of_type('bcf_bgzip') - ln -s '$input_file' $input_vcf && #end if ]]> </token> @@ -68,7 +71,7 @@ </token> <xml name="macro_inputs"> - <param name="input_files" type="data" format="vcf,bcf" label="Other VCF/BCF Datasets" multiple="True" /> + <param name="input_files" type="data" format="vcf,vcf_bgzip,bcf" label="Other VCF/BCF Datasets" multiple="True" /> </xml> <token name="@PREPARE_INPUT_FILES@"> <![CDATA[ @@ -80,8 +83,13 @@ #if $input_file.is_of_type('vcf') bgzip -c '$input_file' > $input_vcf && bcftools index $input_vcf && - #elif $input_file.is_of_type('vcf_bgz') - ln -s '$input_file' $input_vcf + #elif $input_file.is_of_type('vcf_bgzip') + ln -s '$input_file' $input_vcf && + #if $input_file.metadata.tabix_index: + ln -s '${input_file.metadata.tabix_index}' ${input_vcf}.tbi && + #else + bcftools index $input_vcf && + #end if #elif $input_file.is_of_type('bcf') #set $input_vcf = 'input' + str($i) + '.bcf.gz' ln -s '$input_file' $input_vcf && @@ -90,8 +98,6 @@ #else bcftools index $input_vcf && #end if - #elif $input_file.is_of_type('bcfvcf_bgz') - ln -s '$input_file' $input_vcf && #end if echo '$input_vcf' >> $vcfs_list_file && $input_vcfs.append($input_vcf) @@ -106,7 +112,7 @@ </token> <xml name="macro_fasta_ref"> - <param name="fasta_ref" argument="--fasta-ref" type="data" format="data" label="Reference sequence in FASTA format" optional="True" /> + <param name="fasta_ref" argument="--fasta-ref" type="data" format="data" optional="true" label="Reference sequence in FASTA format" /> </xml> <token name="@PREPARE_FASTA_REF@"> <![CDATA[ @@ -148,7 +154,7 @@ <xml name="macro_AF_file"> - <param name="AF_file" argument="--AF-file" type="data" format="tabular" label="Allele frequencies file" optional="True" help="Tab-delimited file containing the columns CHR,POS,REF,ALT,AF" /> + <param name="AF_file" argument="--AF-file" type="data" format="tabular" optional="true" label="Allele frequencies file" help="Tab-delimited file containing the columns CHR,POS,REF,ALT,AF" /> </xml> <!-- This may need to bgzip and tabix the file --> <token name="@PREPARE_AF_FILE@"> @@ -165,7 +171,7 @@ </token> <xml name="macro_estimate_AF"> - <param name="estimate_AF" argument="--estimate-AF" type="data" format="data" label="Estimate allele frequency" optional="True" help="calculate AC,AN counts on the fly, using either all samples ("-") or samples listed in <file>" /> + <param name="estimate_AF" argument="--estimate-AF" type="data" format="data" optional="true" label="Estimate allele frequency" help="Calculate AC,AN counts on the fly, using either all samples ("-") or samples listed in <file>" /> </xml> <token name="@ESTIMATE_AF@"> #if 'estimate_AF' in $section and $section.estimate_AF: @@ -174,7 +180,7 @@ </token> <xml name="macro_exons_file"> - <param name="exons_file" type="data" format="tabular" label="exons file" optional="True" help="tab-delimited file with exons for indel frameshifts (chr,from,to; 1-based, inclusive, bgzip compressed)" /> + <param name="exons_file" type="data" format="tabular" optional="true" label="Exons file" help="Tab-delimited file with exons for indel frameshifts (chr,from,to; 1-based, inclusive, bgzip compressed)" /> </xml> <token name="@PREPARE_EXONS_FILE@"> <![CDATA[ @@ -193,7 +199,7 @@ </token> <xml name="macro_ploidy_file"> - <param name="ploidy_file" type="data" format="tabular" label="Ploidy file" optional="True" help="tab-delimited list of CHROM,FROM,TO,SEX,PLOIDY" /> + <param name="ploidy_file" type="data" format="tabular" optional="true" label="Ploidy file" help="Tab-delimited list of CHROM,FROM,TO,SEX,PLOIDY" /> </xml> <token name="@PLOIDY_FILE@"> #if 'ploidy_file' in $section and $section.ploidy_file: @@ -208,7 +214,7 @@ <option value="id">id - only records with identical ID column are compatible. </option> </xml> <xml name="macro_collapse"> - <param name="collapse" type="select" label="Collapse" optional="True" help="Controls how to treat records with duplicate positions and defines compatible records across multiple input files"> + <param name="collapse" type="select" optional="true" label="Collapse" help="Controls how to treat records with duplicate positions and defines compatible records across multiple input files"> <option value="snps">snps - allow different alleles, as long as they all are SNPs</option> <option value="indels">indels - allow different alleles, as long as they all are indels</option> <option value="both">both - indels and snps </option> @@ -224,8 +230,8 @@ </token> <xml name="macro_apply_filters"> - <param name="apply_filters" type="text" value="" label="Apply Filters" optional="true" - help="(-f --apply-filters) Skip sites where FILTER column does not contain any of the strings listed (e.g. "PASS,.")"> + <param argument="--apply_filters" type="text" value="" optional="true" label="Apply filters" + help="Skip sites where FILTER column does not contain any of the strings listed (e.g. "PASS,.")"> <validator type="regex" message="FILTER terms separated by commas">^([^ \t\n\r\f\v,]+(,[^ \t\n\r\f\v,]+)*)?$</validator> </param> </xml> @@ -271,13 +277,13 @@ </param> <when value="__none__"/> <when value="regions"> - <param name="regions" type="text" value="" label="restrict to comma-separated list of regions" optional="true" + <param name="regions" type="text" value="" optional="true" label="Restrict to comma-separated list of regions" help="Each region is specifed as: chr or chr:pos or chr:from-to"> <validator type="regex" message="">^(\w+(:\d+(-\d+)?)?(,\w+(:\d+(-\d+)?)?)*)?$</validator> </param> </when> <when value="regions_file"> - <param name="regions_file" type="data" format="vcf,bed,tabular" label="Regions File" optional="True" help="restrict to regions listed in a file" /> + <param name="regions_file" type="data" format="vcf,bed,tabular" optional="true" label="Regions file" help="Restrict to regions listed in a file" /> </when> </conditional> </xml> @@ -346,7 +352,7 @@ </param> <when value="__none__"/> <when value="targets"> - <param name="targets" type="text" value="" label="Restrict to comma-separated list of targets" optional="true" + <param name="targets" type="text" value="" optional="true" label="Restrict to comma-separated list of targets" help="Each target is specifed as: chr or chr:pos or chr:from-to"> <validator type="regex" message="">^(\w+(:\d+(-\d+)?)?(,\w+(:\d+(-\d+)?)?)*)?$</validator> </param> @@ -373,16 +379,16 @@ </token> <xml name="macro_samples"> - <param name="samples" type="text" value="" label="Samples" optional="true" - help="(-s) comma separated list of samples to annotate (or exclude)"> + <param argument="--samples" type="text" value="" optional="true" label="Samples" + help="Comma separated list of samples to annotate (or exclude)"> <validator type="regex" message="">^(\w+(,\w+)*)?$</validator> </param> <param name="invert_samples" type="boolean" truevalue="^" falsevalue="" checked="false" label="Invert Samples" - help="inverts the query/filtering applied by Samples (adds "^" prefix to exclude)" /> - <param name="samples_file" type="data" format="tabular" label="Samples File" optional="True" - help="(-S) file of samples to include" /> - <param name="invert_samples_file" type="boolean" truevalue="^" falsevalue="" checked="false" label="Invert Samples File" - help="inverts the query/filtering applied by Samples File" /> + help="Inverts the query/filtering applied by Samples (adds "^" prefix to exclude)" /> + <param argument="--samples_file" type="data" format="tabular" optional="true" label="Samples file" + help="File of samples to include" /> + <param name="invert_samples_file" type="boolean" truevalue="^" falsevalue="" checked="false" label="Invert Samples file" + help="inverts the query/filtering applied by Samples file" /> </xml> <token name="@SAMPLES@"> #set $samples_defined = False @@ -397,7 +403,7 @@ </token> <xml name="macro_sample"> - <param name="sample" type="text" label="Sample" optional="True" help="apply variants of the given sample" /> + <param name="sample" type="text" optional="true" label="Sample" help="Apply variants of the given sample" /> </xml> <token name="@SAMPLE@"> #if $section.sample: @@ -407,7 +413,7 @@ <xml name="macro_include"> - <param name="include" type="text" label="Include" optional="True" help="(-i) select sites for which the expression is true"> + <param argument="--include" type="text" optional="true" label="Include" help="Select sites for which the expression is true"> <validator type="regex" message="Single quote not allowed">^[^']*$</validator> <sanitizer sanitize="False"/> </param> @@ -419,7 +425,7 @@ </token> <xml name="macro_exclude"> - <param name="exclude" type="text" label="Exclude" optional="True" help="(-e) exclude sites for which the expression is true"> + <param argument="--exclude" type="text" optional="true" label="Exclude" help="Exclude sites for which the expression is true"> <validator type="regex" message="Single quote not allowed">^[^']*$</validator> <sanitizer sanitize="False"/> </param> @@ -431,8 +437,8 @@ </token> <xml name="macro_columns"> - <param name="columns" type="text" value="" label="Columns" optional="true" - help="list of columns in the annotation file, e.g. CHROM,POS,REF,ALT,-,INFO/TAG. See man page for details"> + <param name="columns" type="text" value="" optional="true" label="Columns" + help="List of columns in the annotation file, e.g. CHROM,POS,REF,ALT,-,INFO/TAG. See man page for details"> <validator type="regex" message="COLUMN names separated by commas">^([^,]+(,[^,]+)*)?$</validator> </param> </xml>