Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion infra/runbooks/runtime-image.md
Original file line number Diff line number Diff line change
Expand Up @@ -389,7 +389,8 @@ plan may differ only by entries Core already records on the target artifact,
and each entry is reconciled before acting — already on target is verified and
skipped, an identical in-flight upgrade request is awaited (Core never
enqueues a duplicate), and anything else executes normally. The same wrapper
covers lat3, lat4, and lat5 with `--host lat3`, `--host lat4`, or `--host lat5` (default `lat1`
covers lat3, lat4, lat5, and lat7 with `--host lat3`, `--host lat4`,
`--host lat5`, or `--host lat7` (default `lat1`
is leftover/inactive only). The plan is provably single-host and mixed-host
plans are refused. Core CLI calls always run on lat2; only provider facts
and Runner addressing follow `--host`.
Expand Down
11 changes: 9 additions & 2 deletions scripts/rollout-lat1-runtime-artifact
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ LAT1="${LAT1:-root@64.34.82.77}"
LAT3="${LAT3:-root@207.188.7.157}"
LAT4="${LAT4:-root@152.236.34.15}"
LAT5="${LAT5:-root@64.34.93.213}"
LAT7="${LAT7:-root@64.34.89.107}"
ROLLOUT_HOST=lat1
SOURCE_HOST_ID=finite-lat-1
RUNNER_DEST="$LAT1"
Expand All @@ -20,7 +21,7 @@ ROLLOUT_STATE_ROOT="${ROLLOUT_STATE_ROOT:-$REPO_ROOT/.local-state/runtime-rollou

usage() {
cat >&2 <<'EOF'
usage: scripts/rollout-lat1-runtime-artifact [--validate-only] [--host lat1|lat3|lat4|lat5] \
usage: scripts/rollout-lat1-runtime-artifact [--validate-only] [--host lat1|lat3|lat4|lat5|lat7] \
(--prepare | --execute-plan-hash 64_LOWERCASE_HEX | --summarize) \
--roll-runtime-artifact ID \
--roll-admin-email EMAIL \
Expand Down Expand Up @@ -51,6 +52,7 @@ validate_local_inputs() {
[[ $LAT3 =~ ^[A-Za-z0-9][A-Za-z0-9_.@:-]{0,254}$ ]] || { invalid_value "LAT3 destination"; return; }
[[ $LAT4 =~ ^[A-Za-z0-9][A-Za-z0-9_.@:-]{0,254}$ ]] || { invalid_value "LAT4 destination"; return; }
[[ $LAT5 =~ ^[A-Za-z0-9][A-Za-z0-9_.@:-]{0,254}$ ]] || { invalid_value "LAT5 destination"; return; }
[[ $LAT7 =~ ^[A-Za-z0-9][A-Za-z0-9_.@:-]{0,254}$ ]] || { invalid_value "LAT7 destination"; return; }
[[ $RUNNER_DEST =~ ^[A-Za-z0-9][A-Za-z0-9_.@:-]{0,254}$ ]] || { invalid_value "rollout host destination"; return; }
validate_id "runtime artifact id" "$ROLLOUT_ARTIFACT_ID" || return
[[ $ROLLOUT_ADMIN_EMAIL =~ ^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+$ ]] || { invalid_value "admin email"; return; }
Expand Down Expand Up @@ -90,7 +92,7 @@ parse_args() {
--host)
[[ $# -ge 2 && -n $2 ]] || { usage; return 64; }
case "$2" in
lat1|lat3|lat4|lat5) ROLLOUT_HOST="$2" ;;
lat1|lat3|lat4|lat5|lat7) ROLLOUT_HOST="$2" ;;
*)
echo "unknown runtime rollout host: $2" >&2
return 64
Expand Down Expand Up @@ -185,6 +187,11 @@ parse_args() {
RUNNER_DEST="$LAT5"
RUNNER_WORK_ROOT=/data/finite-saas-runner
;;
lat7)
SOURCE_HOST_ID=finite-lat-7
RUNNER_DEST="$LAT7"
RUNNER_WORK_ROOT=/data/finite-saas-runner
;;
esac
if [[ $ROLLOUT_MODE == summarize ]]; then
[[ $ROLLOUT_STATE_ROOT == /* ]] || invalid_value "ROLLOUT_STATE_ROOT: expected an absolute path"
Expand Down
Loading
Loading