diff multiqc.xml @ 0:8f25feb85166 draft

planemo upload for repository https://github.com/EnginesOn/galaxy_tools/tree/master/tools/multiqc commit 1110117e9b07da7913ea4480566a00d1bb373531-dirty
author engineson
date Fri, 27 May 2016 06:22:43 -0400
parents
children ff22ea7aa6bb
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/multiqc.xml	Fri May 27 06:22:43 2016 -0400
@@ -0,0 +1,246 @@
+<tool id="multiqc" name="multiqc" version="0.6">
+    <description>aggregate results from bioinformatics analyses across many samples into a single report</description>
+    <requirements>
+       <requirement type="package" version="0.6">multiqc</requirement>
+    </requirements>
+    <stdio>
+        <exit_code range="1:" />
+    </stdio>
+    <command>
+        mkdir multiqc_WDir;
+        
+        #for $i, $repeat in enumerate( $results )
+
+          mkdir multiqc_WDir/${repeat.software}_${i};
+
+          #if $repeat.software == "fastqc"
+
+              #for $k, $file in enumerate ( $repeat.input_file )
+                  ## create a directory for each file because of the unqiue name file parsing
+                  mkdir multiqc_WDir/${repeat.software}_${i}/file_${k};
+                  ##cat ${file} > multiqc_WDir/${repeat.software}_${i}/file_$k/fastqc_data.txt;
+                  ln -s ${file} multiqc_WDir/${repeat.software}_${i}/file_$k/fastqc_data.txt;
+              #end for           
+
+          #else if $repeat.software == "tophat"
+
+              #for $file in $repeat.input_file
+                  ## test if input file name contains align_summary
+                  if [[ '${file.display_name}' =~ align_summary$ ]]; then
+                       ##cat ${file} > multiqc_WDir/${repeat.software}_${i}/'${file.display_name}'.txt; else
+                       ln -s  ${file} multiqc_WDir/${repeat.software}_${i}/'${file.display_name}'.txt; else
+                       ##cat ${file} > multiqc_WDir/${repeat.software}_${i}/'${file.display_name}'_align_summary.txt; 
+                       ln -s ${file} multiqc_WDir/${repeat.software}_${i}/'${file.display_name}'_align_summary.txt;
+                  fi;
+              #end for
+
+          #else if $repeat.software == "cutadapt"
+
+              #for $file in $repeat.input_file
+                  cat ${file} > multiqc_WDir/${repeat.software}_${i}/'${file.display_name}'.txt;
+                  ## replace header for old cutadapt release
+                  sed -i 's/You are running/This is/' multiqc_WDir/${repeat.software}_${i}/'${file.display_name}'.txt;               
+              #end for
+
+          #else if $repeat.software == "featurecounts"
+
+              #for $file in $repeat.input_file
+                  ## remove spaces and colon to skip multiqc crash
+                  cat ${file} > multiqc_WDir/${repeat.software}_${i}/featurecounts_result.summary;
+                  ## remove spaces and colon to skip multiqc crash
+                  sed -i 's/:/_/g' multiqc_WDir/${repeat.software}_${i}/featurecounts_result.summary;
+                  sed -i 's/ /_/g' multiqc_WDir/${repeat.software}_${i}/featurecounts_result.summary;
+              #end for
+
+         #else if $repeat.software == "bismark"
+
+               #for $file in $repeat.input_file
+                  ##cat ${file} > multiqc_WDir/${repeat.software}_${i}/'${file.display_name}'_SE_report.txt;
+                  ln -s ${file} multiqc_WDir/${repeat.software}_${i}/'${file.display_name}'_SE_report.txt;
+               #end for
+
+          #else
+
+              #for $file in $repeat.input_file
+              cat ${file} > multiqc_WDir/${repeat.software}_${i}/'${file.display_name}';
+                  #if $repeat.software == "picard"
+		      sed -i 's/picard.sam.markduplicates.MarkDuplicates/picard.sam.MarkDuplicates/' multiqc_WDir/${repeat.software}_${i}/'${file.display_name}';                
+		  #end if
+              #end for 
+
+         #end if
+        #end for
+
+        multiqc multiqc_WDir; 
+       
+    </command>
+    <inputs>
+        <!--param name="inputs" type="data" format="txt" multiple="true" label="Tools logs-outputs" /-->
+        <repeat name="results" title="Results" min="1">
+                <param name="software" type="select" label="Software name">
+                     <option value="fastqc">FastQC (RawData file)</option>
+                     <option value="cutadapt">Cutadapt (Report file)</option>
+                     <option value="tophat">Tophat2 (align_summary file)</option>
+                     <option value="featurecounts">FeatureCounts (Summary file)</option>
+                     <option value="samtools_stats">Samtools Stats (Stats file)</option>
+                     <option value="picard">Picard (MarkDuplicates metrics file, CollectGTBiasMetrics Summary data file, CollectInsertSizeMetrics file)</option>
+                     <option value="bismark">Bismark (Report file)</option>
+                     <!--option value="bowtie2">Bowtie2</option>
+                     <option value="snpeff">SnpEff</option-->
+                </param>
+                <param name="input_file" type="data" format="txt, tabular" multiple="true" label="Result file" />
+        </repeat>
+    </inputs>
+    <outputs>
+        <data format="html" from_work_dir="multiqc_report.html" name="html_file" label="${tool.name} on ${on_string}: Webpage" />
+        <data format="txt" name="text_file" from_work_dir="multiqc_data/.multiqc.log" label="${tool.name} on ${on_string}: Log"/>
+    </outputs>
+    <tests>
+      <test>
+         <repeat name="results">
+            <param name="software" value="fastqc" />
+            <param name="input_file" value="fastqc_data.txt" />
+         </repeat>
+         <output name="html_file" file="report_fastqc.html" compare="sim_size" delta="1000"/>
+         <output name="text_file" file="log_fastqc.txt" compare="sim_size" delta="1000"/>     
+       </test>
+       <test>
+         <repeat name="results">
+            <param name="software" value="fastqc" />
+            <param name="input_file" value="fastqc_data.txt,fastqc_data_2.txt" />
+         </repeat>
+         <output name="html_file" file="report_fastqc_2.html" compare="sim_size" delta="1000"/>
+         <output name="text_file" file="log_fastqc_2.txt" compare="sim_size" delta="1000"/>
+      </test>
+      <test>
+         <repeat name="results">
+            <param name="software" value="cutadapt" />
+            <param name="input_file" value="cutadapt.txt" />
+         </repeat>
+         <output name="html_file" file="report_cutadapt.html" compare="sim_size" delta="1000"/>
+         <output name="text_file" file="log_cutadapt.txt" compare="sim_size" delta="1000"/>
+       </test>
+      <test>
+         <repeat name="results">
+            <param name="software" value="tophat" />
+            <param name="input_file" value="tophat_data.txt" />
+         </repeat>
+         <output name="html_file" file="report_tophat.html" compare="sim_size" delta="1000"/>
+         <output name="text_file" file="log_tophat.txt" compare="sim_size" delta="1000"/>
+       </test>
+       <test>
+         <repeat name="results">
+            <param name="software" value="featurecounts" />
+            <param name="input_file" value="featurecounts_data.txt" />
+         </repeat>
+         <output name="html_file" file="report_featurecounts.html" compare="sim_size" delta="1000"/>
+         <output name="text_file" file="log_featurecounts.txt" compare="sim_size" delta="1000"/>
+       </test>
+       <test>
+         <repeat name="results">
+            <param name="software" value="picard" />
+            <param name="input_file" value="collectGcBias_data.txt,CollectInsertSizeMetrics.txt,MarkDuplicates_data.txt" />
+         </repeat>
+         <output name="html_file" file="report_picard.html" compare="sim_size" delta="1000"/>
+         <output name="text_file" file="log_picard.txt" compare="sim_size" delta="1000"/>
+       </test>
+       <test>
+         <repeat name="results">
+            <param name="software" value="bismark" />
+            <param name="input_file" value="bismark_data.txt" />
+         </repeat>
+         <output name="html_file" file="report_bismark.html" compare="sim_size" delta="1000"/>
+         <output name="text_file" file="log_bismark.txt" compare="sim_size" delta="1000"/>
+       </test>
+       <test>
+         <repeat name="results">
+            <param name="software" value="samtools_stats" />
+            <param name="input_file" value="samtools_data.txt" />
+         </repeat>
+         <output name="html_file" file="report_samtools.html" compare="sim_size" delta="1000"/>
+         <output name="text_file" file="log_samtools.txt" compare="sim_size" delta="1000"/>
+       </test>
+    <test>
+        <repeat name="results">
+            <param name="software" value="fastqc" />
+            <param name="input_file" value="fastqc_data.txt,fastqc_data_2.txt" />
+         </repeat>
+         <repeat name="results">
+            <param name="software" value="cutadapt" />
+            <param name="input_file" value="cutadapt.txt" />
+         </repeat>
+         <repeat name="results">
+            <param name="software" value="tophat" />
+            <param name="input_file" value="tophat_data.txt" />
+         </repeat>
+         <repeat name="results">
+            <param name="software" value="featurecounts" />
+            <param name="input_file" value="featurecounts_data.txt" />
+         </repeat>
+         <repeat name="results">
+            <param name="software" value="picard" />
+            <param name="input_file" value="collectGcBias_data.txt,CollectInsertSizeMetrics.txt,MarkDuplicates_data.txt" />
+         </repeat>
+         <repeat name="results">
+            <param name="software" value="bismark" />
+            <param name="input_file" value="bismark_data.txt" />
+         </repeat>
+         <repeat name="results">
+            <param name="software" value="samtools_stats" />
+            <param name="input_file" value="samtools_data.txt" />
+         </repeat>
+
+         <output name="html_file" file="report_all.html" compare="sim_size" delta="3000"/>
+         <output name="text_file" file="log_all.txt" compare="sim_size" delta="3000"/>
+       </test>
+    </tests>
+
+
+    <help>
+**What it does**
+
+MultiQC aggregates results from bioinformatics analyses across many samples into a single report
+
+----
+
+**Description**
+
+MultiQC searches a given directory for analysis logs and compiles a HTML report. It's a general use tool, perfect for summarising the output from numerous bioinformatics tools.
+
+----
+
+**Inputs**
+
+MultiQC takes software outputs summary in order to create a single report. Below a list of compatible Galaxy tools :
+
+ - Fastqc
+ - Cutadapt
+ - Tophat2
+ - FeatureCounts
+ - Samtools stats
+ - Picard MarkDuplicates metrics
+ - Picard CollectGTBiasMetrics
+ - Picard CollectInsertSizeMetrics
+ - Bismark
+
+----
+
+**Integrated by:**
+
+Cyril Monjeaud and Yvan Le Bras
+
+`EnginesOn &lt;http://engineson.fr/&gt;`_ and Rennes GenOuest Bio-informatics Core Facility
+
+    </help>
+
+ <citations>
+<citation type="bibtex">@proceedings{proceedings,
+    author = {Phil Ewels, Måns Magnusson, Max Käller},
+    title = {Quality control at scale: MultiQC - Intelligent analysis reporting},
+    journal = {Epigenomics of Common Disease},
+    year = {2015},
+    }
+</citation>
+  </citations>
+</tool>
+