feat(kind): self-contained vTeam catalog lab + fleet-skip provisioning#369
feat(kind): self-contained vTeam catalog lab + fleet-skip provisioning#369jeremyeder wants to merge 1 commit into
Conversation
jsell-rh
left a comment
There was a problem hiding this comment.
🤖 Amber Review — PR #369: vTeam catalog self-contained lab + fleet-skip provisioning
Summary: Makefile, script, and docs-only change. No Go, frontend, or API surface touched. Scope is exactly what the PR description claims — clean and well-bounded.
What I checked
Makefile fleet loop (kind-up):
[ -f "examples/overlays/$$ns/kustomization.yaml" ] || continue— correct guard. Skips gracefully for tenants without an overlay; fails loudly when one exists but apply fails. TheFLEET_FAILEDaccumulation +exit 1at the end is the right pattern (collect all failures, fail at the end, not immediately — so you see all broken tenants in one run).OPENSHELL_TENANTSdefault reduced from 4 → 2 (tenant-a tenant-b). This is a behavior change for anyone with a custom cluster that previously relied onvteam-product-swarm/codebase-maintainersbeing in the default list. The PR description calls this out and the comment block in the Makefile explains it clearly — acceptable given this is a local Kind dev target, not production.
setup-kind-openshell.sh:
- Default in the script updated to match the Makefile (
tenant-a tenant-b). Consistent. ✅
Docs (vteam-lab.md, QUICKSTART.md, examples/README.md, examples/vteam-catalog/README.md):
- The "self-contained" framing is accurate: applying the catalog creates the Project, and the control plane reconciler provisions namespace + gateway. The
kubectl waitcommands replacing the simplekubectl getchecks are strictly better — they give the user a concrete ready signal with a timeout rather than requiring manual re-checking. QUICKSTART.mdstep reordering is cleaner: apply catalog first (step 4), secrets after (step 5). Matches the actual dependency order (namespace must exist before secrets can be created there). ✅- Provider secret docs are now more accurate: correct key names (
tokenfor vertex/github,JIRA_URL/JIRA_USERNAME/JIRA_API_TOKENfor jira), correct namespace, and explicit "do not usemake kind-setup-vertex" warning. This was a gap — users following the old guide would have created secrets in the wrong place or with wrong keys. ✅ - Removed
export AMBIENT_PROJECT=vteam-product-swarmfrom the login step — correct, since the project doesn't exist at that point in the flow. ✅
No issues
No Go code, no frontend changes, no K8s resource changes, no API schema changes. The change is limited to:
- 2 fleet hunks in Makefile (guard + failure accumulation)
- 1 default change in
setup-kind-openshell.sh - Docs-only updates across 4 markdown files
ACP constitution compliance: N/A for Makefile/docs. No panic(), no any types, no token logging, no RBAC paths touched.
Confidence: High (95%) — small, well-scoped, testable with make -n kind-up.
— Amber
|
Applying |
|
Tested this branch (196d009) end-to-end on a clean cluster : Fedora, podman 5.7.1 (rootless), kind 0.33.0-alpha:
For context: the same machine hit both missing-overlay errors on a fresh LGTM from a first-time-user perspective. |
… vTeam catalog lab - kind-up now provisions only the demo fleet (tenant-a, tenant-b): the fleet loop applies an overlay only when examples/overlays/<ns>/ exists and fails loudly if any tenant apply fails (no silent partial provisioning). Reduced OPENSHELL_TENANTS default accordingly. - vTeam catalog lab is self-contained against a clean cluster: applying a catalog creates the Project and the control plane provisions the backing namespace + gateway from that record. Rewrote QUICKSTART/vteam-lab/READMEs accordingly, including correct provider-secret setup (vertex/github token key; jira url/email/token).
196d009 to
4673b9e
Compare
Summary
Splits the vTeam lab work out on its own. Two changes, both about making the
vTeam catalog lab work against a clean cluster instead of relying on
make kind-uppre-provisioning the tenants:
kind-upnow provisions only the demo fleet (tenant-a,tenant-b). The fleet loop applies an overlay only whenexamples/overlays/<ns>/exists, and fails loudly (collects failures,
exit 1) if any tenant applyfails — no silent partial provisioning.
OPENSHELL_TENANTSdefault reduced to match.Project, and thecontrol plane provisions the backing namespace + gateway from that record — no
kubectl create namespaceneeded. RewroteQUICKSTART.md,vteam-lab.md, and theexample READMEs accordingly, including correct provider-secret setup (vertex/github
use a single
tokenkey; jira usesJIRA_URL/JIRA_USERNAME/JIRA_API_TOKEN).Why draft
Opened as a draft for review of the lab flow before marking ready.
Scope
Makefile (2 fleet hunks),
scripts/setup-kind-openshell.sh, and docs only. No Go,no frontend, no API/K8s resource changes.
Verification
make -n kind-statusparses;make -n kind-upmatchesmainbehavior (pre-existingprereq exit, unrelated to this change).
make kind-status/awkapproach (nodependency on unrelated tooling).