d1013ef3c61b027b582a45612ebc3848fe480f3e hiram Mon Apr 7 13:42:08 2025 -0700 now sending to hgdownload3 refs #35402 diff --git src/hg/makeDb/doc/asmHubs/asmHubs.mk src/hg/makeDb/doc/asmHubs/asmHubs.mk index 885f399cbd9..a46880d15c0 100644 --- src/hg/makeDb/doc/asmHubs/asmHubs.mk +++ src/hg/makeDb/doc/asmHubs/asmHubs.mk @@ -8,49 +8,53 @@ # statsName, testStatsName, dataName, testDataName, genomesTxt, hubFile # testHubFile, Name and name # the .PHONY will make sure these targets run even if there happens to be # a file by the same name existing. These rules don't make these files, # they are just procedures to run. .PHONY: sanityCheck makeDirs mkJson mkGenomes symLinks hubIndex asmStats trackData groupsTxt toolsDir=${HOME}/kent/src/hg/makeDb/doc/asmHubs htdocsHgDownload=/usr/local/apache/htdocs-hgdownload hubsDownload=${htdocsHgDownload}/hubs/${name} asmHubSrc=/hive/data/genomes/asmHubs/${name} downloadDest1=hgdownload1.soe.ucsc.edu downloadDest2=hgdownload2.soe.ucsc.edu +downloadDest3=hgdownload3.gi.ucsc.edu +# 2025-04-06 hgdownload1.soe.ucsc.edu has address 128.114.119.163 # 2024-02-06 hgdownload2.gi.ucsc.edu has address 128.114.198.53 +# 2025-04-06 hgdownload3.gi.ucsc.edu has address 169.233.10.12 all:: sanityCheck makeDirs mkJson mkGenomes symLinks hubIndex asmStats trackData groupsTxt makeDirs: mkdir -p ${destDir} sanityCheck: @goodBad=$$(cut -d'_' -f1-2 ${orderList} | sort | uniq -c | awk '$$1 > 1' | wc -l); \ if [ $$goodBad -ne 0 ]; then \ tsvFile=$$(basename ${orderList}); \ echo "ERROR: duplicate accession in '$$tsvFile'"; \ cut -d'_' -f1-2 ${orderList} | sort | uniq -c | awk '$$1 > 1'; \ exit 255; \ fi sshKeyDownload: ssh -o PasswordAuthentication=no qateam@${downloadDest1} date ssh -o PasswordAuthentication=no qateam@${downloadDest2} date + ssh -o PasswordAuthentication=no qateam@${downloadDest3} date sshKeyDynablat: ssh -o PasswordAuthentication=no qateam@dynablat-01 date sshKeyCheck: sshKeyDownload sshKeyDynablat @printf "# ssh keys to hgdownload and dynablat-01 are good\n" mkJson:: if [ "$(name)" = "VGP" ]; then \ cat *.orderList.tsv | ${toolsDir}/tsvToJson.py stdin > ${destDir}/assemblyList.json 2> ${name}.jsonData.txt; \ else \ ${toolsDir}/tsvToJson.py ${orderList} > ${destDir}/assemblyList.json 2> ${name}.jsonData.txt; \ fi # mkGenomes needs symLinks to run before mkGenomes runs, and then @@ -100,31 +104,31 @@ asmStats:: rm -f ${destDir}/download.${statsName}.html ${destDir}/${statsName}.html ${destDir}/${testStatsName}.html ${toolsDir}/mkAsmStats.pl ${Name} ${name} ${orderList} > ${destDir}/download.${statsName}.html sed -e "s#genome.ucsc.edu/h/#genome-test.gi.ucsc.edu/h/#g; s/hgdownload.soe/hgdownload-test.gi/g;" ${destDir}/download.${statsName}.html > ${destDir}/${statsName}.html chmod +x ${destDir}/${statsName}.html ${destDir}/download.${statsName}.html # trackData makes different tables for the test vs. production version # mkHubIndex.pl and mkAsmStats.pl should do this too . . . TBD trackData:: rm -f ${destDir}/${testDataName}.html ${destDir}/${dataName}.html ${destDir}/download.${dataName}.html ${toolsDir}/trackData.pl ${Name} ${name} ${orderList} > ${destDir}/download.${dataName}.html ${toolsDir}/trackData.pl -test ${Name} ${name} ${orderList} > ${destDir}/${dataName}.html chmod +x ${destDir}/${dataName}.html chmod +x ${destDir}/download.${dataName}.html -indexPages: hubIndex asmStats trackData +indexPages: mkJson hubIndex asmStats trackData echo indexPages done ### obsolete, these hub.txt files are now static 2024-10-23 hubTxt: rm -f ${destDir}/${testHubFile}.txt ${destDir}/${hubFile}.txt sed -e "s#index.html#${indexName}.html#; s#genomes.txt#${genomesTxt}.txt#;" ${srcDir}/${hubTxtFile} > ${destDir}/${hubFile}.txt # all hubs have the same set of groups, no need for any name customization groupsTxt: rm -f ${destDir}/groups.txt rm -f ${destDir}/groups.txt cp -p ${toolsDir}/groups.txt ${destDir}/groups.txt clean:: rm -f ${destDir}/${hubFile}.txt @@ -134,89 +138,122 @@ rm -f ${destDir}/${indexName}.html rm -f ${destDir}/${testIndexName}.html rm -f ${destDir}/${statsName}.html rm -f ${destDir}/${testStatsName}.html sendDownload:: sshKeyCheck ${toolsDir}/mkSendList.pl ${orderList} | while read F; do \ ((N=N+1)); printf "### count %5d\t%s\t%s\n" $${N} $${F} "`date '+%F %T %s'`"; ${toolsDir}/sendToHgdownload.sh $$F < /dev/null; done rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/assemblyList.json \ qateam@${downloadDest1}:/mirrordata/hubs/${name}/ rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/assemblyList.json \ qateam@${downloadDest2}:/mirrordata/hubs/${name}/ rsync -L -a -P \ + /usr/local/apache/htdocs-hgdownload/hubs/${name}/assemblyList.json \ + qateam@${downloadDest3}:/mirrordata/hubs/${name}/ + rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/groups.txt \ qateam@${downloadDest1}:/mirrordata/hubs/${name}/ rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/groups.txt \ qateam@${downloadDest2}:/mirrordata/hubs/${name}/ rsync -L -a -P \ + /usr/local/apache/htdocs-hgdownload/hubs/${name}/groups.txt \ + qateam@${downloadDest3}:/mirrordata/hubs/${name}/ + rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/${hubFile}.txt \ qateam@${downloadDest1}:/mirrordata/hubs/${name}/ rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/${hubFile}.txt \ qateam@${downloadDest2}:/mirrordata/hubs/${name}/ rsync -L -a -P \ + /usr/local/apache/htdocs-hgdownload/hubs/${name}/${hubFile}.txt \ + qateam@${downloadDest3}:/mirrordata/hubs/${name}/ + rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${indexName}.html \ qateam@${downloadDest1}:/mirrordata/hubs/${name}/${indexName}.html rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${indexName}.html \ qateam@${downloadDest2}:/mirrordata/hubs/${name}/${indexName}.html rsync -L -a -P \ + /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${indexName}.html \ + qateam@${downloadDest3}:/mirrordata/hubs/${name}/${indexName}.html + rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${statsName}.html \ qateam@${downloadDest1}:/mirrordata/hubs/${name}/${statsName}.html rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${statsName}.html \ qateam@${downloadDest2}:/mirrordata/hubs/${name}/${statsName}.html rsync -L -a -P \ + /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${statsName}.html \ + qateam@${downloadDest3}:/mirrordata/hubs/${name}/${statsName}.html + rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${dataName}.html \ qateam@${downloadDest1}:/mirrordata/hubs/${name}/${dataName}.html rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${dataName}.html \ qateam@${downloadDest2}:/mirrordata/hubs/${name}/${dataName}.html + rsync -L -a -P \ + /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${dataName}.html \ + qateam@${downloadDest3}:/mirrordata/hubs/${name}/${dataName}.html # no longer sending genomes.txt file 2024-10-23 - becomes static obsolete: rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${genomesTxt}.txt \ qateam@${downloadDest1}:/mirrordata/hubs/${name}/${genomesTxt}.txt rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${genomesTxt}.txt \ qateam@${downloadDest2}:/mirrordata/hubs/${name}/${genomesTxt}.txt + rsync -L -a -P \ + /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${genomesTxt}.txt \ + qateam@${downloadDest3}:/mirrordata/hubs/${name}/${genomesTxt}.txt verifyTestDownload: ${toolsDir}/verifyOnDownload.sh api-test.gi.ucsc.edu ${orderList} verifyDownload: ${toolsDir}/verifyOnDownload.sh apibeta.soe.ucsc.edu ${orderList} verifyDynamicBlat: grep -v "^#" ${orderList} | cut -d'_' -f1-2 | while read asmId; do \ ${toolsDir}/testDynBlat.sh $$asmId < /dev/null; done sendIndexes:: rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/assemblyList.json \ qateam@${downloadDest1}:/mirrordata/hubs/${name}/ rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/assemblyList.json \ qateam@${downloadDest2}:/mirrordata/hubs/${name}/ rsync -L -a -P \ + /usr/local/apache/htdocs-hgdownload/hubs/${name}/assemblyList.json \ + qateam@${downloadDest3}:/mirrordata/hubs/${name}/ + rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${indexName}.html \ qateam@${downloadDest1}:/mirrordata/hubs/${name}/${indexName}.html rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${indexName}.html \ qateam@${downloadDest2}:/mirrordata/hubs/${name}/${indexName}.html rsync -L -a -P \ + /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${indexName}.html \ + qateam@${downloadDest3}:/mirrordata/hubs/${name}/${indexName}.html + rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${statsName}.html \ qateam@${downloadDest1}:/mirrordata/hubs/${name}/${statsName}.html rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${statsName}.html \ qateam@${downloadDest2}:/mirrordata/hubs/${name}/${statsName}.html rsync -L -a -P \ + /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${statsName}.html \ + qateam@${downloadDest3}:/mirrordata/hubs/${name}/${statsName}.html + rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${dataName}.html \ qateam@${downloadDest1}:/mirrordata/hubs/${name}/${dataName}.html rsync -L -a -P \ /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${dataName}.html \ qateam@${downloadDest2}:/mirrordata/hubs/${name}/${dataName}.html + rsync -L -a -P \ + /usr/local/apache/htdocs-hgdownload/hubs/${name}/download.${dataName}.html \ + qateam@${downloadDest3}:/mirrordata/hubs/${name}/${dataName}.html