92509db0231e9b1ae83aa0c85182883dd8eabc9b hiram Wed Sep 14 13:59:35 2022 -0700 fixup chainNet trackDb and now sending files to dynablat and arranging hub files to place it in use refs #29811 diff --git src/hg/utils/automation/oneAndDoneBrowser.sh src/hg/utils/automation/oneAndDoneBrowser.sh index 4c6755b..f3810b1 100755 --- src/hg/utils/automation/oneAndDoneBrowser.sh +++ src/hg/utils/automation/oneAndDoneBrowser.sh @@ -19,31 +19,32 @@ hgCentralClade is one of: ancestor bacteria ciliate deuterostome haplotypes insect mammal other protista simulation vertebrate virus worm trackDbDir is one of the directories under makeDb/trackDb// where this genome trackDb//dbName/trackDb.ra will exist " 1>&2 exit 255 fi #### default build parameters, will be adjusted below depending upon clade export augustusSpecies="-augustusSpecies=human" export ncbiRmsk="-ncbiRmsk" export noRmsk="" -export ucscNames="-ucscNames" +# export ucscNames="-ucscNames" +export ucscNames="" #### export asmId="${1}" export dbName="${2}" export clade="${3}" export hgCentralClade="${4}" export trackDbDir="${5}" export export gcX=${asmId:0:3} export d0=${asmId:4:3} export d1=${asmId:7:3} export d2=${asmId:10:3} export srcDir="/hive/data/outside/ncbi/genomes/${gcX}/${d0}/${d1}/${d2}/$asmId" if [ ! -d "${srcDir}" ]; then @@ -120,34 +121,32 @@ printf "# ucscNames: %s\n" "${ucscNames}" 1>&2 printf "# rmskSpecies: %s\n" "${rmskSpecies}" 1>&2 printf "# augustusSpecies: %s\n" "${augustusSpecies}" 1>&2 printf "# ncbiRmsk: %s\n" "${ncbiRmsk}" 1>&2 if [ "x${noRmsk}y" != "xy" ]; then printf "# noRmsk: '%s'\n" "${noRmsk}" 1>&2 fi printf "\n" 1>&2 # possible steps in order: # download sequence assemblyGap chromAlias gatewayPage cytoBand gc5Base # repeatMasker simpleRepeat allGaps idKeys windowMasker addMask gapOverlap # tandemDups cpgIslands ncbiGene ncbiRefSeq xenoRefGene augustus trackDb cleanup -## export stepStart="download" -## export stepEnd="sequence" -export stepStart="ncbiGene" -export stepEnd="augustus" +export stepStart="download" +export stepEnd="trackDb" printf "cd \"${buildDir}\"\n" 1>&2 cd "${buildDir}" printf "\$HOME/kent/src/hg/utils/automation/doAssemblyHub.pl \\ -continue=\"${stepStart}\" -stop=\"${stepEnd}\" -dbName=\"${dbName}\" \\ -rmskSpecies=\"${rmskSpecies}\" -bigClusterHub=ku -buildDir=\`pwd\` \\ -fileServer=hgwdev -smallClusterHub=hgwdev \\ ${noRmsk} ${ncbiRmsk} ${ucscNames} ${augustusSpecies} \\ -workhorse=hgwdev \"${asmId}\" >> build.log 2>&1\n" 1>&2 $HOME/kent/src/hg/utils/automation/doAssemblyHub.pl \ -continue="${stepStart}" -stop="${stepEnd}" -dbName="${dbName}" \ -rmskSpecies="${rmskSpecies}" -bigClusterHub=ku -buildDir=`pwd` \ -fileServer=hgwdev -smallClusterHub=hgwdev \ @@ -165,30 +164,62 @@ export taxId=`grep "^taxId" ${dbName}.config.ra | awk '{print $NF}'` export asmDate=`grep "^assemblyDate" ${dbName}.config.ra | sed -e "s/assemblyDate \+//"` export asmName=`grep "^ncbiAssemblyName" ${dbName}.config.ra | sed -e "s/ncbiAssemblyName \+//"` export comName=`grep "^commonName" ${dbName}.config.ra | sed -e "s/commonName \+//"` export sciName=`grep "^scientificName" ${dbName}.config.ra | sed -e "s/scientificName \+//"` export orderKey=`grep "^orderKey" ${dbName}.config.ra | sed -e "s/orderKey \+//"` export accessionID=`grep "^genBankAccessionID" ${dbName}.config.ra | sed -e "s/genBankAccessionID \+//"` export defaultPos=`head -1 $dbName.chrom.sizes | awk '{end=int($2/2)+9999; if (end > $2){end = $2}; printf "%s:%d-%d", $1, int($2/2), end}'` printf "DELETE from dbDb where name = \"%s\";\n" "${dbName}" > dbDbInsert.sql printf "INSERT INTO dbDb (name, description, nibPath, organism, defaultPos, active, orderKey, genome, scientificName, htmlPath, hgNearOk, hgPbOk, sourceName, taxId) VALUES\n" >> dbDbInsert.sql -printf "(\"%s\", \"%s (%s/%s)\", \"/gbdb/%s\", \"%s\", +printf "(\"%s\", \"%s (%s/%s)\", \"hub:/gbdb/%s/hubs\", \"%s\", \"%s\", 1, %d, \"%s\", \"%s\", \"/gbdb/%s/html/description.html\", 0, 1, \"%s\", %d);\n" "${dbName}" "${asmDate}" "${asmName}" "${dbName}" "${dbName}" "${comName}" "${defaultPos}" "${orderKey}" "${comName}" "${sciName}" "${dbName}" "${accessionID}" "${taxId}" >> dbDbInsert.sql fi printf "# dbDbInsert.sql statement is completed:\n" 1>&2 -cat dbDbInsert.sql 1>&2 +printf "# to add to hgcentraltest: hgsql hgcentraltest < dbDbInsert.sql\n" 1>&2 if [ ! -s "chrom.sizes" ]; then ln -s $dbName.chrom.sizes chrom.sizes fi if [ ! -d "bed" ]; then ln -s trackData bed fi + +# establish symLinks to make this browser appear +cd "${buildDir}" +mkdir -p hubs /gbdb/$dbName +for F in "$dbName.2bit" bbi ixIxx hubs html +do + rm -f /gbdb/$dbName/${F} + ln -s `pwd`/${F} /gbdb/$dbName/${F} +done +rm -f hubs/chromAlias.bb hubs/chromSizes.txt hubs/groups.txt +ln -s `pwd`/trackData/chromAlias/mpxv2022.chromAlias.bb hubs/chromAlias.bb +ln -s `pwd`/mpxv2022.chrom.sizes hubs/chromSizes.txt +cp -p ~/kent/src/hg/makeDb/doc/asmHubs/groups.txt hubs/groups.txt + +if [ -s "$dbName.trans.gfidx" ]; then + printf "# sending files for dynamic blat\n#\t$dbName.2bit $dbName.trans.gfidx $dbName.untrans.gfidx\n" 1>&2 + rsync -a ./$dbName.2bit ./$dbName.trans.gfidx ./$dbName.untrans.gfidx \ + qateam@dynablat-01:/scratch/hubs/$dbName/ +fi + +export blatServerPresent=`hgsql -N -e 'select * from blatServers where db="'$dbName'";' hgcentraltest | wc -l` +if [ "$blatServerPresent" != 2 ]; then + printf "# adding blatServers entry\n" 1>&2 + hgsql -e 'delete from blatServers where db="'$dbName'";' hgcentraltest + hgsql -e 'INSERT INTO blatServers (db, host, port, isTrans, canPcr, dynamic) \ + VALUES ("'$dbName'", "dynablat-01", "4040", "1", "0", "1"); \ + INSERT INTO blatServers (db, host, port, isTrans, canPcr, dynamic) \ + VALUES ("'$dbName'", "dynablat-01", "4040", "0", "1", "1");' \ + hgcentraltest +fi +printf "# blatServers entry:\n" 1>&2 +hgsql -e 'select * from blatServers where db="'$dbName'";' hgcentraltest 1>&2