1268543255ec6202fedc7d12bf2054d031f2fb89
hiram
  Thu May 19 15:44:49 2022 -0700
the new rmsk track can be done without the align file refs #29464

diff --git src/hg/utils/automation/asmHubTrackDb.sh src/hg/utils/automation/asmHubTrackDb.sh
index d0803f2..8aaa97a 100755
--- src/hg/utils/automation/asmHubTrackDb.sh
+++ src/hg/utils/automation/asmHubTrackDb.sh
@@ -176,63 +176,67 @@
     bigDataUrl bbi/%s.tandemDups.bb
     type bigBed 12\n\n" "${asmId}"
   fi
 
   $scriptDir/asmHubTanDups.pl $asmId $buildDir/html/$asmId.names.tab $buildDir/trackData > $buildDir/html/$asmId.tanDups.html
 
   else
     printf "# skipping the tanDups track\n" 1>&2
   fi	#	the else clause of: if [ -z ${not_tanDups+x} ]
 fi	#	if [ "${gapOverlapCount}" -gt 0 -o "${tanDupCount}" -gt 0 ]
 
 # see if there are repeatMasker bb files
 export rmskCount=`(ls $buildDir/trackData/repeatMasker/bbi/${asmId}.rmsk.*.bb 2> /dev/null | wc -l) || true`
 export newRmsk=`(ls $buildDir/trackData/repeatMasker/${asmId}.rmsk.align.bb $buildDir/trackData/repeatMasker/${asmId}.rmsk.bb 2> /dev/null | wc -l) || true`
 
-if [ "${newRmsk}" -eq 2 -o "${rmskCount}" -gt 0 ]; then
+if [ "${newRmsk}" -gt 0 -o "${rmskCount}" -gt 0 ]; then
 
 if [ ! -s "$buildDir/trackData/repeatMasker/$asmId.sorted.fa.out.gz" ]; then
   printf "ERROR: can not find trackData/repeatMasker/$asmId.sorted.fa.out.gz\n" 1>&2
   exit 255
 fi
 
 rm -f $buildDir/$asmId.repeatMasker.out.gz
 ln -s trackData/repeatMasker/$asmId.sorted.fa.out.gz $buildDir/$asmId.repeatMasker.out.gz
 if [ -s "$buildDir/trackData/repeatMasker/versionInfo.txt" ]; then
    rm -f "$buildDir/${asmId}.repeatMasker.version.txt"
    ln -s trackData/repeatMasker/versionInfo.txt "$buildDir/${asmId}.repeatMasker.version.txt"
 fi
 
-if [ "${newRmsk}" -eq 2 ]; then
+if [ "${newRmsk}" -gt 0 ]; then
   rm -f $buildDir/bbi/${asmId}.rmsk.align.bb
   rm -f $buildDir/bbi/${asmId}.rmsk.bb
   rm -f $buildDir/${asmId}.fa.align.tsv.gz
   rm -f $buildDir/${asmId}.fa.join.tsv.gz
+  if [ -s "$buildDir/bbi/${asmId}.rmsk.align.bb" ]; then
     ln -s ../trackData/repeatMasker/${asmId}.rmsk.align.bb $buildDir/bbi/${asmId}.rmsk.align.bb
-  ln -s ../trackData/repeatMasker/${asmId}.rmsk.bb $buildDir/bbi/${asmId}.rmsk.bb
     ln -s trackData/repeatMasker/${asmId}.fa.align.tsv.gz $buildDir/${asmId}.fa.align.tsv.gz
+  fi
+  ln -s ../trackData/repeatMasker/${asmId}.rmsk.bb $buildDir/bbi/${asmId}.rmsk.bb
   ln -s trackData/repeatMasker/${asmId}.sorted.fa.join.tsv.gz $buildDir/${asmId}.fa.join.tsv.gz
 
 printf "track repeatMasker
 shortLabel RepeatMasker
 longLabel RepeatMasker Repetitive Elements
 type bigRmsk 9 +
 visibility pack
 group varRep
-bigDataUrl bbi/%s.rmsk.bb
-xrefDataUrl bbi/%s.rmsk.align.bb
-html html/%s.repeatMasker\n\n" "${asmId}" "${asmId}" "${asmId}"
+bigDataUrl bbi/%s.rmsk.bb\n" "${asmId}"
+if [ -s "$buildDir/bbi/${asmId}.rmsk.align.bb" ]; then
+printf "xrefDataUrl bbi/%s.rmsk.align.bb\n" "${asmId}"
+fi
+printf "html html/%s.repeatMasker\n\n" "${asmId}"
 $scriptDir/asmHubRmskJoinAlign.pl $asmId $buildDir > $buildDir/html/$asmId.repeatMasker.html
 
 else	#	if [ "${newRmsk}" -eq 2 ]; then
 
 printf "track repeatMasker
 compositeTrack on
 shortLabel RepeatMasker
 longLabel Repeating Elements by RepeatMasker
 group varRep
 visibility dense
 type bigBed 6 +
 colorByStrand 50,50,150 150,50,50
 maxWindowToDraw 10000000
 spectrum on
 html html/%s.repeatMasker\n\n" "${asmId}"