89cf9546eeccf2c5d1d519943114bf86bf280306
hiram
  Mon May 17 12:50:23 2021 -0700
better location for download files for assembly hub results no redmine

diff --git src/hg/utils/automation/doBlastzChainNet.pl src/hg/utils/automation/doBlastzChainNet.pl
index b48cadd..536ed63 100755
--- src/hg/utils/automation/doBlastzChainNet.pl
+++ src/hg/utils/automation/doBlastzChainNet.pl
@@ -1638,30 +1638,31 @@
   return if ($opt_skipDownload);
   &installDownloads();
 }
 
 sub cleanup {
   # Remove intermediate files.
   my $runDir = $buildDir;
   my $outRoot = $opt_blastzOutRoot ? "$opt_blastzOutRoot/psl" : "$buildDir/psl";
   my $rootCanal = ($opt_blastzOutRoot ?
 		   "rmdir --ignore-fail-on-non-empty $opt_blastzOutRoot" :
 		   '');
   my $doSymLink = 0;
   my $baseName = basename($buildDir);
   my $dirName = dirname($buildDir);
   $doSymLink = 1 if ($dirName =~ m#.*/$tDb/bed$#);
+  $doSymLink = 1 if ($dirName =~ m#.*/trackData$#);
   my $whatItDoes =
 "It cleans up files after a successful blastz/chain/net/install series.
 It uses rm -f so failures should be ignored (e.g. if a partial cleanup has
 already been performed).";
   my $bossScript = new HgRemoteScript("$buildDir/cleanUp.csh", $fileServer,
 				      $runDir, $whatItDoes, $DEF);
   $bossScript->add(<<_EOF_
 rm -fr $outRoot/
 $rootCanal
 rm -fr $buildDir/axtChain/run/chain/
 rm -fr $buildDir/axtChain/run/err/
 rm -fr $buildDir/run.blastz/err/
 # avoid no-match error exit when *.2bit does not exist
 /bin/csh -c "rm -fr $buildDir/run.blastz/tParts/*.2bit || true"
 /bin/csh -c "rm -fr $buildDir/run.blastz/qParts/*.2bit || true"
@@ -1701,60 +1702,64 @@
   }
   my $runDir = "$buildDir/axtChain";
   # First, make sure we're starting clean.
   my $successDir = "$buildDir/mafSynNet";
   if (-e $successDir) {
       die "doSyntenicNet: looks like this was run successfully already " .
           "($successDir).  To re-run, " .
           "move aside/remove $successDir and run again.\n";
   }
   # Make sure previous stage was successful.
   my $successFile = "$runDir/$tDb.$qDb.net.gz";
   if (! -e "$successFile" && ! $opt_debug) {
       die "doSyntenicNet: looks like previous stage was not successful " .
           "(can't find $successFile).\n";
   }
+  my $goldenPath = $HgAutomate::goldenPath;
+  if ($tDb =~ m/^GC/) {
+     $goldenPath = &HgAutomate::asmHubDownloadDir($tDb);
+  }
   my $bossScript = new HgRemoteScript("$runDir/netSynteny.csh", $workhorse,
                                     $runDir, $whatItDoes, $DEF);
   if ($opt_loadChainSplit && $splitRef) {
     $bossScript->add(<<_EOF_
 # filter net for synteny and create syntenic net mafs
 netFilter -syn $tDb.$qDb.net.gz  \\
     | netSplit stdin synNet
 chainSplit chain $tDb.$qDb.all.chain.gz
 cd ..
 mkdir -p $successDir
 foreach f (axtChain/synNet/*.net)
   netToAxt \$f axtChain/chain/\$f:t:r.chain \\
     $defVars{'SEQ1_DIR'} $defVars{'SEQ2_DIR'} stdout \\
   | axtSort stdin stdout \\
   | axtToMaf -tPrefix=$tDb. -qPrefix=$qDb. stdin \\
     $defVars{SEQ1_LEN} $defVars{SEQ2_LEN} \\
     stdout \\
 | gzip -c > mafSynNet/\$f:t:r:r:r:r:r.maf.gz
 end
 rm -fr $runDir/synNet
 rm -fr $runDir/chain
 cd mafSynNet
 md5sum *.maf.gz > md5sum.txt
 _EOF_
       );
 
     if (! $opt_skipDownload) {
        $bossScript->add(<<_EOF_
-mkdir -p $HgAutomate::goldenPath/$tDb/vs$QDb/mafSynNet
-cd $HgAutomate::goldenPath/$tDb/vs$QDb/mafSynNet
+mkdir -p $goldenPath/$tDb/vs$QDb/mafSynNet
+cd $goldenPath/$tDb/vs$QDb/mafSynNet
 ln -s $buildDir/mafSynNet/* .
 _EOF_
        );
     }
   } else {
 # scaffold-based assembly
 # filter net for synteny and create syntenic net mafs
     $bossScript->add(<<_EOF_
 netFilter -syn $tDb.$qDb.net.gz | gzip -c > $tDb.$qDb.syn.net.gz
 netChainSubset -verbose=0 $tDb.$qDb.syn.net.gz $tDb.$qDb.all.chain.gz stdout \\
   | chainStitchId stdin stdout | gzip -c > $tDb.$qDb.syn.chain.gz
 _EOF_
       );
 
     if (! $opt_trackHub && $dbExists) {
@@ -1826,33 +1831,35 @@
         ../axtChain/$tDb.$qDb.synNet.maf.gz
   cut -f2- $tDb.$qDb.synNet.summary.tab | sort -k1,1 -k2,2n \\
         > $tDb.$qDb.synNet.summary.bed
   bedToBigBed -type=bed3+4 -as=mafSummary.as -tab \\
         $tDb.$qDb.synNet.summary.bed \\
         $defVars{SEQ1_LEN} $tDb.$qDb.synNet.summary.bb
   rm -f $tDb.$qDb.synNet.txt $tDb.$qDb.synNet.summary.tab \\
         $tDb.$qDb.synNet.summary.bed
 endif
 _EOF_
       );
     }
 
     if (! $opt_skipDownload) {
       $bossScript->add(<<_EOF_
-mkdir -p $HgAutomate::goldenPath/$tDb/vs$QDb
-cd $HgAutomate::goldenPath/$tDb/vs$QDb
+mkdir -p $goldenPath/$tDb/vs$QDb
+cd $goldenPath/$tDb/vs$QDb
 if (-s $runDir/synNet.md5sum.txt ) then
+  rm -f $tDb.$qDb.syn.net.gz
+  rm -f $tDb.$qDb.synNet.maf.gz
   ln -s $runDir/$tDb.$qDb.syn.net.gz .
   ln -s $runDir/$tDb.$qDb.synNet.maf.gz .
   cat $runDir/synNet.md5sum.txt >> md5sum.txt
   sort -u md5sum.txt > tmp.sum
   cat tmp.sum > md5sum.txt
   rm -f tmp.sum
 endif
 _EOF_
       );
     }
 
     if (! $opt_trackHub && $dbExists) {
       $bossScript->add(<<_EOF_
 cd "$buildDir"
 if (\$lineCount > 0) then