feat(iso): stage zot agent (pinned) + populate ZOT_HOME/auth.json (Sam & Claude) #38

Merged
clawdie merged 1 commit from feat/stage-zot-agent into main 2026-06-13 10:35:42 +02:00
Owner

First concrete step of the zot consolidation (colibri ADR). Opt-in FEATURE_ZOT
(default NO; Pi stays default during migration).

  • build.cfg: FEATURE_ZOT, ZOT_VERSION (pinned v0.2.29), ZOT_REPO,
    ZOT_ARTIFACT_DIR, ZOT_DEEPSEEK_KEY (optional bake).
  • scripts/stage-zot-iso.sh: install the prebuilt zot binary -> /usr/local/bin/zot;
    populate the operator's $ZOT_HOME (~/.local/state/zot) with auth.json
    ({"deepseek":{"api_key":...}}, 0600) when a key is given, else an
    auth.json.sample template + README (telegram via zot telegram-bot setup).
  • build.sh: status line, resolve_zot_paths, preflight_zot_artifacts (errors with
    the GOOS=freebsd go-build hint — zot has no FreeBSD release), install_zot_agent
    (+ chown operator state), wired into preflight + install sequences.

zot is built on the FreeBSD host from the pinned tag:
(cd $ZOT_REPO && git checkout v0.2.29 && GOOS=freebsd GOARCH=amd64
go build -trimpath -o bin/zot ./cmd/zot)

sh -n clean; staging smoke-tested (binary staged, auth.json 0600 valid).
Credentials use zot's own resolution (--api-key -> env -> auth.json), replacing
baked-into-binary keys. Default build unchanged (FEATURE_ZOT=NO).

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com

First concrete step of the zot consolidation (colibri ADR). Opt-in FEATURE_ZOT (default NO; Pi stays default during migration). - build.cfg: FEATURE_ZOT, ZOT_VERSION (pinned v0.2.29), ZOT_REPO, ZOT_ARTIFACT_DIR, ZOT_DEEPSEEK_KEY (optional bake). - scripts/stage-zot-iso.sh: install the prebuilt zot binary -> /usr/local/bin/zot; populate the operator's $ZOT_HOME (~/.local/state/zot) with auth.json ({"deepseek":{"api_key":...}}, 0600) when a key is given, else an auth.json.sample template + README (telegram via `zot telegram-bot setup`). - build.sh: status line, resolve_zot_paths, preflight_zot_artifacts (errors with the GOOS=freebsd go-build hint — zot has no FreeBSD release), install_zot_agent (+ chown operator state), wired into preflight + install sequences. zot is built on the FreeBSD host from the pinned tag: (cd $ZOT_REPO && git checkout v0.2.29 && GOOS=freebsd GOARCH=amd64 \ go build -trimpath -o bin/zot ./cmd/zot) sh -n clean; staging smoke-tested (binary staged, auth.json 0600 valid). Credentials use zot's own resolution (--api-key -> env -> auth.json), replacing baked-into-binary keys. Default build unchanged (FEATURE_ZOT=NO). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
clawdie added 1 commit 2026-06-13 10:34:54 +02:00
First concrete step of the zot consolidation (colibri ADR). Opt-in FEATURE_ZOT
(default NO; Pi stays default during migration).

- build.cfg: FEATURE_ZOT, ZOT_VERSION (pinned v0.2.29), ZOT_REPO,
  ZOT_ARTIFACT_DIR, ZOT_DEEPSEEK_KEY (optional bake).
- scripts/stage-zot-iso.sh: install the prebuilt zot binary -> /usr/local/bin/zot;
  populate the operator's $ZOT_HOME (~/.local/state/zot) with auth.json
  ({"deepseek":{"api_key":...}}, 0600) when a key is given, else an
  auth.json.sample template + README (telegram via `zot telegram-bot setup`).
- build.sh: status line, resolve_zot_paths, preflight_zot_artifacts (errors with
  the GOOS=freebsd go-build hint — zot has no FreeBSD release), install_zot_agent
  (+ chown operator state), wired into preflight + install sequences.

zot is built on the FreeBSD host from the pinned tag:
  (cd $ZOT_REPO && git checkout v0.2.29 && GOOS=freebsd GOARCH=amd64 \
     go build -trimpath -o bin/zot ./cmd/zot)

sh -n clean; staging smoke-tested (binary staged, auth.json 0600 valid).
Credentials use zot's own resolution (--api-key -> env -> auth.json), replacing
baked-into-binary keys. Default build unchanged (FEATURE_ZOT=NO).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
clawdie merged commit 8a19ac213b into main 2026-06-13 10:35:41 +02:00
clawdie deleted branch feat/stage-zot-agent 2026-06-13 10:35:43 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: clawdie/clawdie-iso#38
No description provided.