bf62c01cee8dc176445aa131e2fd6ea847a4eb68 lrnassar Thu May 28 11:32:52 2026 -0700 Adding UMD TP53 variant track (umdTp53) on hg19 and hg38 under a new Locus-Specific superTrack. refs #37648 Shows variants from the UMD TP53 database (p53.fr, Soussi & Leroy) as a bigBed 9+, one row per unique TP53 variant. Coloured by curator pathogenicity classification. Filters: pathogenicity, variantClassification, variantType, tumor frequency. Search by HGVS cDNA name and canonical protein change via extraIndex + trix. Linkouts to COSMIC and dbSNP. Otto pipeline polls p53.fr weekly; rebuilds only when the upstream zips actually change. Cron-silent on no-op so unchanged weeks don't email. Adds src/hg/utils/otto/umdTp53/ (build scripts + parser + .as schema), src/hg/makeDb/trackDb/human/umdTp53.ra (track stanza), src/hg/makeDb/trackDb/human/umdTp53.html (description page), src/hg/makeDb/trackDb/human/locusSpec.ra (shared superTrack definition). Includes locusSpec.ra and umdTp53.ra from human/trackDb.ra (alpha-gated). Adds include of ../locusSpec.ra to human/hs1/trackDb.ra so the strict trackDb checker resolves the parent in the same include chain as the existing mucins children. Drops the redundant locusSpec stanza from human/mucins.ra now that it lives in its own file. diff --git src/hg/utils/otto/umdTp53/doUmdTp53Update.sh src/hg/utils/otto/umdTp53/doUmdTp53Update.sh new file mode 100644 index 00000000000..929547036e5 --- /dev/null +++ src/hg/utils/otto/umdTp53/doUmdTp53Update.sh @@ -0,0 +1,43 @@ +#!/bin/bash +# +# Cron entry point for the UMD TP53 variant track. Designed for silent +# operation under cron: stdout/stderr stay empty whenever nothing needs to +# happen, so no mail is sent. Routine progress messages go to a dated log +# file. Only genuine errors propagate to stderr (and therefore to cron mail). +# +# Do not modify this script in /hive/data/outside/otto/umdTp53; edit the kent +# source at src/hg/utils/otto/umdTp53/doUmdTp53Update.sh and `make install`. + +set -o errexit -o pipefail -o nounset +umask 002 + +WORKDIR="/hive/data/outside/otto/umdTp53" +LOGDIR="${WORKDIR}/log" +mkdir -p "${LOGDIR}" +LOGFILE="${LOGDIR}/umdTp53.$(date +%F).log" + +cd "${WORKDIR}" + +# Step 1: download (silent on no-op; prints dated workdir on real change). +# Capture stdout into a marker; route stderr to the log so curl diagnostics +# are visible if something fails. +if ! marker=$(./download.sh 2>>"${LOGFILE}"); then + echo "ERROR: umdTp53 download.sh failed; see ${LOGFILE}" 1>&2 + exit 1 +fi + +if [ -z "${marker}" ]; then + # Nothing changed. Stay silent. + exit 0 +fi + +# Step 2: build + install. Everything goes to the log; only a non-zero exit +# bubbles out and triggers cron mail. +{ + echo "=== umdTp53 build $(date -Iseconds) on ${marker} ===" + if ! ./checkAndLoad.sh "${marker}"; then + echo "ERROR: umdTp53 checkAndLoad.sh failed on ${marker}" 1>&2 + exit 1 + fi + echo "=== umdTp53 build complete $(date -Iseconds) ===" +} >>"${LOGFILE}" 2>&1