2ce0876f4171ec948fb7705a9f42047e0f059eea hiram Wed Aug 16 09:24:11 2023 -0700 get the ebiGene and ensGene tests correct and protect against missing liftOver file in a blat directory refs #31844 diff --git src/hg/utils/automation/asmHubTrackDb.sh src/hg/utils/automation/asmHubTrackDb.sh index 53c3397..da9206a 100755 --- src/hg/utils/automation/asmHubTrackDb.sh +++ src/hg/utils/automation/asmHubTrackDb.sh @@ -851,87 +851,92 @@ ################################################################### # Ensembl/ebiGene for HPRC project if [ -d ${buildDir}/trackData/ebiGene ]; then export ebiGeneBb=`ls ${buildDir}/trackData/ebiGene/*.bb 2> /dev/null || true | head -1` if [ -s "${ebiGeneBb}" ]; then export ebiGeneLink=`echo $ebiGeneBb | sed -e 's#.*trackData#../trackData#;'` rm -f ${buildDir}/bbi/${asmId}.ebiGene.bb ln -s $ebiGeneLink ${buildDir}/bbi/${asmId}.ebiGene.bb rm -f ${buildDir}/ixIxx/${asmId}.ebiGene.ix rm -f ${buildDir}/ixIxx/${asmId}.ebiGene.ixx export ixLink=`echo $ebiGeneBb | sed -e 's#.*trackData#../trackData#; s#.bb#.ix#'` export ixxLink=`echo $ebiGeneBb | sed -e 's#.*trackData#../trackData#; s#.bb#.ixx#'` # optional ix/ixx files, this string used in the trackDb stanza below export searchTrix="" - if [ -s "${buildDir}/ixIxx/${asmId}.ebiGene.ix" ]; then + export ebiGeneIx=`ls ${buildDir}/trackData/ebiGene/*.ix 2> /dev/null || true | head -1` + if [ -s "${ebiGeneIx}" ]; then ln -s $ixLink ${buildDir}/ixIxx/${asmId}.ebiGene.ix ln -s $ixxLink ${buildDir}/ixIxx/${asmId}.ebiGene.ixx searchTrix=" -ixIxx/${asmId}.ebiGene.ix" +searchTrix ixIxx/${asmId}.ebiGene.ix" fi export ebiVersion="2022_08" if [ -s ${buildDir}/trackData/ebiGene/version.txt ]; then ebiVersion=`cat "${buildDir}/trackData/ebiGene/version.txt"` fi printf "track ebiGene shortLabel Ensembl %s longLabel Ensembl genes version %s group genes visibility pack color 150,0,0 itemRgb on type bigGenePred bigDataUrl bbi/%s.ebiGene.bb%s searchIndex name,name2 labelFields name,name2 defaultLabelFields name2 labelSeperator \" \" -html html/%s.ebiGene\n\n" "${ebiVersion}" "${ebiVersion}" "${asmId}" "${searchTrix}" "${asmId}" "${asmId}" +html html/%s.ebiGene\n\n" "${ebiVersion}" "${ebiVersion}" "${asmId}" "${searchTrix}" "${asmId}" $scriptDir/asmHubEbiGene.pl $asmId $buildDir/html/$asmId.names.tab $buildDir/bbi/$asmId > $buildDir/html/$asmId.ebiGene.html "${ebiVersion}" fi fi ################################################################### # hubLinks is for mouseStrains specific hub only export hubLinks="/hive/data/genomes/asmHubs/hubLinks" if [ -s ${hubLinks}/${asmId}/rnaSeqData/$asmId.trackDb.txt ]; then printf "include rnaSeqData/%s.trackDb.txt\n\n" "${asmId}" fi ## for mouse strain hubs only ## turned off 2022-11-02 until these can be correctly translated ## to GenArk naming schemes ### if [ -s "${buildDir}/$asmId.bigMaf.trackDb.txt" ]; then ### printf "include %s.bigMaf.trackDb.txt\n\n" "${asmId}" ### fi ################################################################### # check for blat sameSpecies liftOver, then link to lift over chain file export lo=`ls -d ${buildDir}/trackData/blat.* 2> /dev/null | wc -l` if [ "${lo}" -gt 0 ]; then mkdir -p ${buildDir}/liftOver for loS in `ls -d ${buildDir}/trackData/blat.* 2> /dev/null` do blatDir=`basename "${loS}"` - overChain=`ls ${loS}/*.over.chain.gz | awk -F'/' "{print \\$NF}"` + overChain=`(ls ${loS}/*.over.chain.gz || true) | awk -F'/' "{print \\$NF}"` + if [ "x${overChain}y" != "xy" ]; then rm -f ${buildDir}/liftOver/${overChain} + fi + if [ -s "${buildDir}/trackData/${blatDir}/${overChain}" ]; then ln -s ../trackData/${blatDir}/${overChain} ${buildDir}/liftOver + fi done fi ################################################################### # check for lastz/chain/net available export lz=`ls -d ${buildDir}/trackData/lastz.* 2> /dev/null | wc -l` if [ "${lz}" -gt 0 ]; then if [ "${lz}" -eq 1 ]; then printf "single chainNet\n" 1>&2 export lastzDir=`ls -d ${buildDir}/trackData/lastz.*` export oOrganism=`basename "${lastzDir}" | sed -e 's/lastz.//;'` # single chainNet here, no need for a composite track, does the symLinks too $scriptDir/asmHubChainNetTrackDb.sh $asmId $buildDir