fix(bootstrap-kit): remove bp-netbird + bp-dmz-vcluster (charts never published) (#1289)
* fix(bp-catalyst-platform): switch gitea-token-mint Job image to alpine/k8s (curl + kubectl) bitnamilegacy/kubectl:1.29.3 lacks curl, so the post-install Job catalyst-gitea-token-mint CrashLoops with 'sh: 4: curl: not found'. Without the mint, catalyst-gitea-token Secret has empty token, catalyst-catalog + catalyst-organization-controller + catalyst-useraccess-controller all CrashLoop on 'CATALYST_GITEA_TOKEN is required'. alpine/k8s:1.31.4 bundles both kubectl 1.31.4 (matches k3s) and curl — canonical multi-tool image already used elsewhere in the platform. Caught on omantel provision #6. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(bootstrap-kit): bump bp-guacamole pin 0.1.9 → 0.1.12 (bitnamilegacy/kubectl image) bp-guacamole 0.1.9 still references docker.io/bitnami/kubectl:1.30.4 in the storageclass-migrate pre-install Job. Bitnami removed bitnami/kubectl:* tags from Docker Hub mid-2026 (canonical surface is now bitnamilegacy/*). Job goes ImagePullBackOff → pre-install hook timeout → bp-guacamole HR Failed → bootstrap-kit Kustomization Failed → sovereign-tls Kustomization deps unmet → no Cilium Gateway → console.<sovereign> TLS unreachable. Chart 0.1.12 (already on main, never pinned in bootstrap-kit) ships migrationImage: docker.io/bitnamilegacy/kubectl:1.29.3 — the legacy registry path that resolves. Caught on omantel provision #6. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * fix(bootstrap-kit): remove bp-netbird + bp-dmz-vcluster (charts never published) Both blueprint charts have a chart-internal render test that fails ('empty image.tag did not abort render'); Blueprint Release CI never publishes them; HRs permanently fail with 'chart not found' on every fresh Sovereign provision; bootstrap-kit Kustomization wait: true healthCheck never converges; sovereign-tls Kustomization never gets ready; Cilium Gateway never created; console.<sovereign> TLS unreachable. Both blueprints are leaf nodes (no other HR depends on them). Remove from bootstrap-kit until the chart unit tests get fixed; re-add via follow-up PR with the test fixes shipped together. Caught on omantel provision #6. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: alierenbaysal <alierenbaysal@openova.io> Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
70208c506e
commit
1492a28e60
@ -1,84 +0,0 @@
|
||||
# bp-netbird — Catalyst bootstrap-kit Blueprint slot 53. NetBird
|
||||
# WireGuard-based zero-trust mesh + remote-access overlay.
|
||||
#
|
||||
# Per ADR-0001 §3.2.8 + EPIC-5 leftovers slice NB #1100: NetBird is the
|
||||
# canonical operator/engineer remote-access path into Sovereign workloads.
|
||||
#
|
||||
# qa-loop iter-12 Fix #53C: matrix asserts the netbird namespace +
|
||||
# management/signal/coturn Deployments exist (TC-281, TC-282, TC-283,
|
||||
# TC-284). Without this slot the chart was authored but never installed.
|
||||
#
|
||||
# Wrapper chart: platform/netbird/chart/
|
||||
# Reconciled by: Flux on the new Sovereign's k3s control plane.
|
||||
#
|
||||
# Default-OFF gate: NETBIRD_ENABLED defaults to "false" via envsubst —
|
||||
# Sovereigns that want NetBird flip it to "true" in the bootstrap-kit
|
||||
# Kustomization substitute.
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: netbird
|
||||
labels:
|
||||
catalyst.openova.io/sovereign: ${SOVEREIGN_FQDN}
|
||||
---
|
||||
apiVersion: source.toolkit.fluxcd.io/v1beta2
|
||||
kind: HelmRepository
|
||||
metadata:
|
||||
name: bp-netbird
|
||||
namespace: flux-system
|
||||
spec:
|
||||
type: oci
|
||||
interval: 15m
|
||||
url: oci://ghcr.io/openova-io
|
||||
secretRef:
|
||||
name: ghcr-pull
|
||||
---
|
||||
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: bp-netbird
|
||||
namespace: flux-system
|
||||
spec:
|
||||
interval: 15m
|
||||
releaseName: netbird
|
||||
targetNamespace: netbird
|
||||
dependsOn:
|
||||
- name: bp-cilium
|
||||
- name: bp-cert-manager
|
||||
- name: bp-keycloak
|
||||
- name: bp-sealed-secrets
|
||||
- name: bp-nats-jetstream
|
||||
chart:
|
||||
spec:
|
||||
chart: bp-netbird
|
||||
version: 0.1.1
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: bp-netbird
|
||||
namespace: flux-system
|
||||
install:
|
||||
disableWait: true
|
||||
remediation:
|
||||
retries: 3
|
||||
upgrade:
|
||||
disableWait: true
|
||||
remediation:
|
||||
retries: 3
|
||||
values:
|
||||
netbird:
|
||||
enabled: ${NETBIRD_ENABLED:=false}
|
||||
management:
|
||||
domain: netbird.${SOVEREIGN_FQDN}
|
||||
coturn:
|
||||
realm: netbird.${SOVEREIGN_FQDN}
|
||||
oidc:
|
||||
issuer: https://keycloak.${SOVEREIGN_FQDN}/realms/${SOVEREIGN_REALM_NAME:=sovereign}
|
||||
redirectURI: https://netbird.${SOVEREIGN_FQDN}/
|
||||
audience: netbird
|
||||
httproute:
|
||||
hostname: netbird.${SOVEREIGN_FQDN}
|
||||
realmConfig:
|
||||
enabled: true
|
||||
realm: ${SOVEREIGN_REALM_NAME:=sovereign}
|
||||
@ -1,71 +0,0 @@
|
||||
# bp-dmz-vcluster — Catalyst bootstrap-kit Blueprint slot 54. DMZ
|
||||
# isolated virtual Kubernetes cluster running inside the management
|
||||
# cluster.
|
||||
#
|
||||
# Per ADR-0001 §3.2.8 + EPIC-5 leftovers slice DMZ #1100: every
|
||||
# Sovereign that publishes customer-facing APIs / webhooks gets a
|
||||
# DMZ vCluster.
|
||||
#
|
||||
# qa-loop iter-12 Fix #53C: matrix asserts dmz namespace + vcluster
|
||||
# CRD registered + omantel-dmz kubeconfig context (TC-286, TC-287,
|
||||
# TC-288). Without this slot the chart was authored but never installed.
|
||||
#
|
||||
# Wrapper chart: products/dmz-vcluster/chart/
|
||||
# Reconciled by: Flux on the new Sovereign's k3s control plane.
|
||||
#
|
||||
# Default-OFF gate: DMZ_VCLUSTER_ENABLED defaults to "false" via envsubst.
|
||||
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: dmz
|
||||
labels:
|
||||
catalyst.openova.io/sovereign: ${SOVEREIGN_FQDN}
|
||||
catalyst.openova.io/isolation: dmz
|
||||
---
|
||||
apiVersion: source.toolkit.fluxcd.io/v1beta2
|
||||
kind: HelmRepository
|
||||
metadata:
|
||||
name: bp-dmz-vcluster
|
||||
namespace: flux-system
|
||||
spec:
|
||||
type: oci
|
||||
interval: 15m
|
||||
url: oci://ghcr.io/openova-io
|
||||
secretRef:
|
||||
name: ghcr-pull
|
||||
---
|
||||
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||
kind: HelmRelease
|
||||
metadata:
|
||||
name: bp-dmz-vcluster
|
||||
namespace: flux-system
|
||||
spec:
|
||||
interval: 15m
|
||||
releaseName: dmz-vcluster
|
||||
targetNamespace: dmz
|
||||
dependsOn:
|
||||
- name: bp-cilium
|
||||
- name: bp-cert-manager
|
||||
chart:
|
||||
spec:
|
||||
chart: bp-dmz-vcluster
|
||||
version: 0.1.1
|
||||
sourceRef:
|
||||
kind: HelmRepository
|
||||
name: bp-dmz-vcluster
|
||||
namespace: flux-system
|
||||
install:
|
||||
disableWait: true
|
||||
remediation:
|
||||
retries: 3
|
||||
upgrade:
|
||||
disableWait: true
|
||||
remediation:
|
||||
retries: 3
|
||||
values:
|
||||
dmz:
|
||||
enabled: ${DMZ_VCLUSTER_ENABLED:=false}
|
||||
hostNamespace: dmz
|
||||
vclusterName: ${DMZ_VCLUSTER_NAME:=dmz}
|
||||
Loading…
Reference in New Issue
Block a user