First complete Projects/Tasks build.
authorTim Reddy Tim <treddy@hudsonalpha.org>
Thu, 28 Aug 2008 23:39:33 +0000 (23:39 +0000)
committerTim Reddy Tim <treddy@hudsonalpha.org>
Thu, 28 Aug 2008 23:39:33 +0000 (23:39 +0000)
htswanalysis/scripts/ConfigureTasks.pm
htswanalysis/scripts/LibrariesMakefile
htswanalysis/scripts/SummarizeProject2.pm

index bf7b5e00655dd303b35fed0fb96315fd6c26882f..ab5f785376d0d75645d6846c35e8497de727fd6f 100755 (executable)
@@ -21,6 +21,11 @@ my $root_dir = shift;
 my $data_dir = shift;
 my $parm = shift;
 
+if(!defined($root_dir) || !defined($data_dir)) { 
+  print "Usage: ./ConfigureTasks.pm [root_dir] [data_dir] {option} \n";
+  exit();
+}
+
 my %libs;
 
 my $BIOP = "$root_dir/bin/BioProspector.mac";
@@ -89,12 +94,12 @@ my $index_list = "";
 for(split(/ /,$projects)) { $index_list .= "$_/index.html "; }
 
 open(MAKE,">$data_dir/Projects/ProjectMakefile");
-print MAKE "all: $index_list | .start\n\n.PHONY: $index_list .start\n\n.start:\n\ttouch .start; echo \"Projects updated at `date`\";\n\n$index_list:\n\t".'cd `dirname $@` && $SUMMARIZE_PROJECT ../../LibraryInfo.xml > `basename $@`'."\n";
+print MAKE "all: $index_list | .start\n\n.PHONY: $index_list .start\n\n.start:\n\ttouch .start; echo \"Projects updated at `date`\";\n\n$index_list:\n\t".'cd `dirname $@` && '.$SUMMARIZE_PROJECT.' '.$root_dir.' '.$data_dir.'/LibraryInfo.xml > `basename $@`'."\n";
 close(MAKE);
 
 print STDERR "Project makefile compete. Starting to build tasks\n";
 
-`make -j 4 -f TaskMakefile > make_tasks.log 2> make_tasks.err`;
+`cd $data_dir/Projects && make -j 4 -f TaskMakefile > make_tasks.log 2> make_tasks.err`;
 
 sub writeProject {
   my $project = shift;
index ec291729d8fbd0e2b7a606a3af76e6f480ffc7ad..4a779dd1f3105e7c8bc797a17d06a588927289e8 100644 (file)
@@ -30,7 +30,7 @@ CMPLX_FILES=$(shell ls -1d $(DATA_DIR)/Flowcells/**/*.align*.txt 2>> LibrariesMa
 PROFILE_FILES=$(shell ls -1d $(DATA_DIR)/Flowcells/**/*.align*.txt 2>> LibrariesMakefile.err | sed -e s/txt/txt.profile/)
 LIBFILES=$(shell ls -1d $(DATA_DIR)/Libraries/.*.config 2>> LibrariesMakefile.err | sed -e s/config/txt/ -e "s/\/\./\//")
 
-all: $(QPCR_FILES) $(COUNT_FILES) $(FILES) qPCR_summary.txt LibraryInfo.xml $(LIBFILES) SequencingSummary.html Distribute
+all: $(QPCR_FILES) $(COUNT_FILES) $(FILES) $(DATA_DIR)/qPCR_summary.txt $(DATA_DIR)/LibraryInfo.xml $(LIBFILES) $(DATA_DIR)/SequencingSummary.html Distribute
 
 %.txt.complexity: %.txt
        $(ROOT_DIR)/bin/complexity_count `basename $<` $< > $@
@@ -48,17 +48,17 @@ all: $(QPCR_FILES) $(COUNT_FILES) $(FILES) qPCR_summary.txt LibraryInfo.xml $(LI
 $(DATA_DIR)/Libraries/%.txt: $(DATA_DIR)/Libraries/.%.config | LibraryInfo.xml
        cat `cat $<` > $@;
 
-qPCR_summary.txt: $(QPCR_FILES)
-       rm -f qPCR_summary.txt;
-       for f in $^; do echo `echo $$f`       `cat $$f | head -n 1` >> qPCR_summary.txt; done;
-       cat qPCR_summary.txt | sort -k 2,1 -g -r > t; mv t qPCR_summary.txt;
+$(DATA_DIR)/qPCR_summary.txt: $(QPCR_FILES)
+       rm -f $@;
+       for f in $^; do echo `echo $$f`       `cat $$f | head -n 1` >> $@; done;
+       cat $@ | sort -k 2,1 -g -r > t && mv t $@;
 
-LibraryInfo.xml: $(COUNT_FILES) $(CMPLX_FILES)
-       $(ROOT_DIR)/scripts/CollectLibraries.pm $(DATA_DIR) > LibraryInfo.xml
-       $(ROOT_DIR)/scripts/RecompileLibraries.pm LibraryInfo.xml $(DATA_DIR)
+$(DATA_DIR)/LibraryInfo.xml: $(COUNT_FILES) $(CMPLX_FILES)
+       $(ROOT_DIR)/scripts/CollectLibraries.pm $(DATA_DIR) > $@;
+       $(ROOT_DIR)/scripts/RecompileLibraries.pm $@ $(DATA_DIR)
 
-SequencingSummary.html: LibraryInfo.xml
-       $(ROOT_DIR)/scripts/SummarizeLibrary.pm LibraryInfo.xml > SequencingSummary.html
+$(DATA_DIR)/SequencingSummary.html: $(DATA_DIR)/LibraryInfo.xml
+       $(ROOT_DIR)/scripts/SummarizeLibrary.pm $< > $@;
 
 Distribute: SequencingSummary.html qPCR_summary.txt
        cp $^ $(HTML_DIR);
index 470e0a9546181f106e8cf242152f4163684e6fc0..546dd45af2e5a1aece1f14d38ad0b49d1b3fd8e7 100755 (executable)
@@ -2,6 +2,7 @@
 use strict;
 use warnings;
 use XML::Simple;
+my $root_dir = shift;
 my $library_info = shift;
 my %libs; 
 my %quest;
@@ -27,17 +28,17 @@ for my $i (0..scalar(@{$xml->{PeakCalling}})-1) {
   $desc{outfile} = "";
   $desc{fasta} = "";
   if($caller eq "QuEST") {
-    $desc{Summary} = `~/EXPTRACK/ProjectScripts/SummarizeQuEST.pm $caller_dir`;
+    $desc{Summary} = `$root_dir/scripts/SummarizeQuEST.pm $caller_dir`;
     $desc{outfile} = "$caller_dir/peak_caller.ChIP.out.bedgraph";
     $desc{fasta} = "$caller_dir/peak_caller.ChIP.out.fasta";
   } elsif($caller eq "WingPeaks") {
-    $desc{Summary} = `~/EXPTRACK/ProjectScripts/SummarizeWingPeaks.pm $caller_dir/$name.peaks`;
+    $desc{Summary} = `$root_dir/scripts/SummarizeWingPeaks.pm $caller_dir/$name.peaks`;
     $desc{outfile} = "$caller_dir/$name.peaks.bed";
     $desc{fasta} = "$caller_dir/$name.peaks.fasta";
   } elsif($caller eq "MACS") {
     my $peakfile = $caller_dir.'/'.$name.'_peaks.xls';
     my $negpeakfile = $caller_dir.'/'.$name.'_negative_peaks.xls';
-    $desc{Summary} = `~/EXPTRACK/ProjectScripts/SummarizeMACS.pm $peakfile $negpeakfile`;
+    $desc{Summary} = `$root_dir/scripts/SummarizeMACS.pm $peakfile $negpeakfile`;
     $desc{outfile} = "$caller_dir/".$name."_peaks.bed";
     $desc{fasta} = "$caller_dir/".$name."_peaks.fasta";
   }
@@ -62,7 +63,7 @@ for my $i (0..scalar(@{$xml->{qPCR}})-1) {
   $libs{$lib} = 0;
  
   if( ! -e $outfile ) {  $qPCR_Summary .= "<TR BCOLOR=#FFBBBB><TD>$name</TD><TD>Processing...</TD></TR>\n"; } else {
-    my $summary_line = `~/EXPTRACK/ProjectScripts/Summarize_qPCR.pm $name $lib $outfile`;
+    my $summary_line = `$root_dir/scripts/Summarize_qPCR.pm $name $lib $outfile`;
     if($summary_line eq "") { $qPCR_Summary .= "<TR BCOLOR=#FFBBBB><TD>$name</TD><TD>Processing...</TD></TR>\n"; }
     else {
       $qPCR_Summary .= $summary_line; 
@@ -99,18 +100,20 @@ for my $i (0..scalar(@{$xml->{CompareLibraries}})-1) {
   my $task = $xml->{CompareLibraries}->[$i]->{TaskId};
   my $tf = $xml->{CompareLibraries}->[$i]->{TF};
   my $genome = $xml->{CompareLibraries}->[$i]->{Genome};
-  my $features = "~/EXPTRACK/compare_peak_calls/".$genome."_uptream5k_downtream1k";
+  my $features = "$root_dir/reference_data/".$genome."_uptream5k_downtream1k";
   my $name1 = $xml->{CompareLibraries}->[$i]->{Library}->[0]->{Library};
   my $name2 = $xml->{CompareLibraries}->[$i]->{Library}->[1]->{Library};
   my $outfile = "../../Tasks/".$task.'/'.$name1."_".$name2.".compare";
   $libs{$name1} = 0; $libs{$name2} = 0;
   my $correlation;
-  if(-e $outfile) { $correlation = `cat $outfile | awk '{print \$8}'`; }
-  my $color; 
   if( !(-e $outfile) ) { $correlation = "In Progress..."; $color = "#FFBBBB"; } 
-  elsif($correlation > 0.9) { $color = "#BBFFBB"; }
-  elsif($correlation > 0.6) { $color = "#BBBBFF"; }
-  else { $color = "#FFBBBB"; }
+  else {
+    if(-e $outfile) { $correlation = `cat $outfile | awk '{print \$8}'`; }
+    my $color; 
+    elsif($correlation > 0.9) { $color = "#BBFFBB"; }
+    elsif($correlation > 0.6) { $color = "#BBBBFF"; }
+    else { $color = "#FFBBBB"; }
+  }
   $library_comparisons .= "<TR BGCOLOR=$color><TD>$tf</TD><TD>$name1</TD><TD>$name2</TD<TD>$correlation</TD></TR>\n";
 }
 $library_comparisons .= "</TABLE>\n";