6b8b18fac6940d56a6317b23f1aedf107079a277 lrnassar Fri Nov 8 17:12:59 2024 -0800 Adding archiving to the mane otto, refs #34761 diff --git src/hg/utils/otto/mane/doMane.py src/hg/utils/otto/mane/doMane.py index bf346cb..df94218 100644 --- src/hg/utils/otto/mane/doMane.py +++ src/hg/utils/otto/mane/doMane.py @@ -8,37 +8,39 @@ rawBashOutput = subprocess.run(cmd, check=True, shell=True,\ stdout=subprocess.PIPE, universal_newlines=True, stderr=subprocess.STDOUT) bashStdoutt = rawBashOutput.stdout except subprocess.CalledProcessError as e: raise RuntimeError("command '{}' return with error (code {}): {}".format(e.cmd, e.returncode, e.output)) return(bashStdoutt) def doMane(): latestRelease = bash('curl -s https://ftp.ncbi.nlm.nih.gov/refseq/MANE/trackhub/data/ | grep "release_" | tail -1') dirName = latestRelease.split(">")[1].split("<")[0] version = dirName.split("_")[1].split("/")[0] latestReleaseUrl = "https://ftp.ncbi.nlm.nih.gov/refseq/MANE/trackhub/data/"+dirName+"MANE.GRCh38.v"+version+".ensembl.bb" workindDir = "/hive/data/outside/otto/mane/mane."+version filePathBB = workindDir+"/our.bb" filePathBed = workindDir+"/our.bed" + filePathArchive = "/usr/local/apache/htdocs-hgdownload/goldenPath/archive/hg38/mane/mane."+version+".bb" if not os.path.isfile(filePathBB): print("New MANE update: "+latestReleaseUrl) bash("mkdir -p "+workindDir) bash("bigBedToBed "+latestReleaseUrl+" "+filePathBed) bash("bedToBigBed -extraIndex=name "+filePathBed+" /cluster/data/hg38/chrom.sizes "+filePathBB+" -type=bed12+13 -as=$HOME/kent/src/hg/lib/mane.as -tab") bash("mkdir -p /gbdb/hg38/mane") print("Previous version itemCount:") print(bash("bigBedInfo /gbdb/hg38/mane/mane.bb | grep -i itemCount")) bash("rm -f /gbdb/hg38/mane/mane.bb") bash("ln -s "+filePathBB+" /gbdb/hg38/mane/mane.bb") + bash("ln -sf "+filePathBB+" "+filePathArchive) print("New version itemCount:") print(bash("bigBedInfo /gbdb/hg38/mane/mane.bb | grep -i itemCount")) bash("tawk '{print $13, $18, $19, $21, $22, $23, $24}' "+filePathBed+" > "+workindDir+"/our.ixInput") bash("ixIxx "+workindDir+"/our.ixInput "+workindDir+"/mane.ix "+workindDir+"/mane.ixx") bash("rm -f /gbdb/hg38/mane/mane.ix /gbdb/hg38/mane/mane.ixx") bash("ln -s "+workindDir+"/mane.ix /gbdb/hg38/mane") bash("ln -s "+workindDir+"/mane.ixx /gbdb/hg38/mane") bash("wget https://ftp.ncbi.nlm.nih.gov/refseq/MANE/MANE_human/release_"+version+"/README_versions.txt -O "+workindDir+"/README_versions.txt") bash("rm -f /gbdb/hg38/mane/README_versions.txt") bash("ln -s "+workindDir+"/README_versions.txt /gbdb/hg38/mane") doMane()