cd9c0c51f9463d768c5eecdec14cb7c9aaf66cf7
braney
  Fri May 29 17:28:10 2026 -0700
Docker QA instances on hgwdev (tip/beta/rel): lifecycle scripts + autoBuild wiring, refs #37655

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

diff --git src/utils/qa/weeklybld/refresh-instance.sh src/utils/qa/weeklybld/refresh-instance.sh
new file mode 100755
index 00000000000..86a571862c7
--- /dev/null
+++ src/utils/qa/weeklybld/refresh-instance.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+#
+# refresh-instance.sh <tip|beta|rel>
+#
+# Stop and remove the named container, then start a fresh one from the current
+# image. For rel, pull genomebrowser/server:latest from Docker Hub first; tip
+# and beta are built locally on hgwdev so there is nothing to pull. Persistent
+# state under ~build/dockerStuff/state/<name> survives because it is on host
+# volumes.
+# refs #37655
+#
+set -eEu -o pipefail
+
+selfDir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
+
+usage() {
+    echo "usage: $(basename "$0") tip|beta|rel" >&2
+    exit 1
+}
+
+[[ $# -eq 1 ]] || usage
+name="$1"
+case "$name" in
+    tip|beta) ;;
+    rel)      docker pull genomebrowser/server:latest ;;
+    *)        usage ;;
+esac
+container="kent-$name"
+
+docker stop "$container" >/dev/null 2>&1 || true
+docker rm   "$container" >/dev/null 2>&1 || true
+
+exec "$selfDir/run-instance.sh" "$name"