ce8ebc71ce
**HOLD until v0.1.3 is tagged/built** (operator #4 merged + tagged) — this PR bumps the operator to v0.1.3, whose CRD adds the `clusterRef` field these keys use. ## Why Put all BIND DNS services in one `bind-internal` namespace and name the StatefulSets clearly. ## Changes - 3 clusters consolidated into `bind-internal`, StatefulSets renamed **bind-authoritative** / **bind-resolvers** / **bind-externaldns**; LBs kept on 198.18.200.6/.7/.8; external-dns hostnames renamed to match - `clusterRef` added to `transfer-key` (→ bind-authoritative) and `externaldns-key` (→ bind-externaldns) so keys are scoped per cluster - removed the old `ns-auth`/`ns-resolver`/`ns-externaldns` apps; ApplicationSet + AppProject now list `bind-internal` - bumped `bind-system` operator to **v0.1.3** (CRD link + image) - operator stays in `bind-system` ## Deploy impact ArgoCD prunes the old ns-* namespaces (StatefulSets/PVCs — data is only seed SOA+NS, no migrated records yet) and creates the renamed clusters in bind-internal. ## Validated `kustomize build` → 28 docs (3 BindCluster, 20 BindZone, 2 catalog, 2 keys, ns); kubeconform clean. Reviewed-on: #225 Co-authored-by: Ben Vincent <ben@unkin.net> Co-committed-by: Ben Vincent <ben@unkin.net>
84 lines
2.7 KiB
YAML
84 lines
2.7 KiB
YAML
---
|
|
apiVersion: argoproj.io/v1alpha1
|
|
kind: AppProject
|
|
metadata:
|
|
name: platform
|
|
namespace: argocd
|
|
spec:
|
|
description: Platform infrastructure and core services
|
|
sourceRepos:
|
|
- https://git.unkin.net/unkin/argocd-apps
|
|
- https://artifactapi.k8s.syd1.au.unkin.net/api/v1/virtual/helm
|
|
- https://purelb.github.io/purelb/charts
|
|
- oci://gcr.io/k8s-staging-nfd/charts
|
|
- oci://ghcr.io/woodpecker-ci/helm/woodpecker
|
|
destinations:
|
|
- namespace: '*-system'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'artifactapi'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'age-api'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'authentik'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'bind-internal'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'cert-manager'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'certificates'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'consul'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'externaldns'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'jfrog'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'kanidm'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'node-feature-discovery'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'priority-classes'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'purelb'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'puppet'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'reposync'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'vault'
|
|
server: https://kubernetes.default.svc
|
|
- namespace: 'woodpecker'
|
|
server: https://kubernetes.default.svc
|
|
clusterResourceWhitelist:
|
|
- group: ''
|
|
kind: Namespace
|
|
- group: 'rbac.authorization.k8s.io'
|
|
kind: ClusterRole
|
|
- group: 'rbac.authorization.k8s.io'
|
|
kind: ClusterRoleBinding
|
|
- group: 'apiextensions.k8s.io'
|
|
kind: CustomResourceDefinition
|
|
- group: 'admissionregistration.k8s.io'
|
|
kind: MutatingWebhookConfiguration
|
|
- group: 'admissionregistration.k8s.io'
|
|
kind: ValidatingWebhookConfiguration
|
|
- group: 'scheduling.k8s.io'
|
|
kind: PriorityClass
|
|
- group: 'purelb.io'
|
|
kind: '*'
|
|
- group: 'nfd.k8s-sigs.io'
|
|
kind: NodeFeatureRule
|
|
- group: 'deviceplugin.intel.com'
|
|
kind: '*'
|
|
- group: 'cert-manager.io'
|
|
kind: Certificate
|
|
- group: 'cert-manager.io'
|
|
kind: Issuer
|
|
- group: 'gateway.networking.k8s.io'
|
|
kind: GatewayClass
|
|
- group: 'networking.k8s.io'
|
|
kind: IngressClass
|
|
namespaceResourceWhitelist:
|
|
- group: '*'
|
|
kind: '*'
|