fix: move OpenShift Route out of kustomize base#686
Conversation
The ambient-api-server Route (route.openshift.io/v1) was in the base kustomization, which is inherited by all overlays including kind and e2e. Since kind clusters don't have the Route CRD, kubectl apply fails and aborts the entire make kind-up pipeline — preventing MinIO bucket initialization, token extraction, and other post-deploy steps from running. Move the Route resource into the production and local-dev overlays where OpenShift CRDs are available. The base file is kept for reference but no longer included in the base kustomization. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Claude Code ReviewSummaryThis PR correctly fixes a real blocker: the base kustomization included a Issues by Severity🚫 Blocker IssuesNone. 🔴 Critical IssuesNone. 🟡 Major IssuesOrphaned file: The PR removes the route from
Recommendation: Delete 🔵 Minor Issues1. Duplicated identical content between overlays
2. File extension inconsistency The original base file used 3. Missing Other routes in the production overlay (e.g. Positive Highlights
Recommendations
The PR is good to merge once the orphaned base file is removed. 🤖 Reviewed by Claude Code 🔍 View AI decision process (logs available for 90 days) 📋 View memory system files loaded (click to expand)What Amber Loaded for Code ReviewAmber automatically loaded these repository standards from the memory system:
Impact: This review used your repository's specific code quality standards, security patterns, and best practices from the memory system (PRs #359, #360) - not just generic code review guidelines. |
Summary
ambient-api-server-route.yml(OpenShift Route) from the base kustomizationproductionandlocal-devoverlays where OpenShift CRDs are availablekubectl applycompletes without errorRoot cause
The base kustomization included an
route.openshift.io/v1Route resource. On kind/e2e clusters (no OpenShift CRDs),kubectl applyfails with:This aborted
make kind-upat thekubectl applystep, preventing all subsequent steps from running:wait-for-ready.sh(pod readiness checks)init-minio.sh(bucket creation)extract-token.sh(test user token)Sessions then failed because the MinIO bucket was never created.
Verification
All four overlays build cleanly with
kubectl kustomize:Test plan
make kind-upcompletes without errors (full pipeline including MinIO init)make kind-down && make kind-upfrom scratch🤖 Generated with Claude Code