From 2a4bc4c7051f846356c463db2afafcc76e5b2f98 Mon Sep 17 00:00:00 2001 From: JonJagger Date: Sun, 13 Sep 2026 09:53:31 +0100 Subject: [PATCH] Give each start-point create its own build tag Every create built to one fixed tag, cyberdojo/temporary_start_points, and then tagged it to the name asked for. Two creates at once meant the second build took the tag from the first, which then shipped an image holding the other start-point, under its own name and with no error anywhere. Seen while making the start-point traffic-light tests runnable in parallel: a run of bash-shunit2 was served bash-unit files and scored 33 failures. RAND was already computed for the check container name, so the tag now carries it too. Five concurrent pairs pass. Co-Authored-By: Claude Opus 5 (1M context) --- app/sh/start-point-create.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/sh/start-point-create.sh b/app/sh/start-point-create.sh index 0482a36..42c844e 100755 --- a/app/sh/start-point-create.sh +++ b/app/sh/start-point-create.sh @@ -3,11 +3,14 @@ set -Eeu shift # start-point shift # create -readonly TMP_IMAGE_NAME=cyberdojo/temporary_start_points +readonly RAND=$(uuidgen) +# The tag carries RAND so two creates at once each build their own image. +# Sharing one tag means the second build takes it from the first, which then +# tags and ships an image holding the other one's start-point. +readonly TMP_IMAGE_NAME=cyberdojo/temporary_start_points:${RAND} readonly IMAGE_NAME="${1:-}" # cyberdojo/languages-start-points readonly IMAGE_TYPE="${2:-}" # --languages declare -ar GIT_REPO_URLS="(${@:3})" # ... -readonly RAND=$(uuidgen) # --------------------------------------------------------------------- # The ABC_REPLACED expressions are replaced by their