41 lines
1.6 KiB
YAML
41 lines
1.6 KiB
YAML
# ------------------------------------------------------------------------------
|
|
# Platform: Gateway API CRDs
|
|
# Wave 3.5 — must exist before cilium-config (wave 4) enables gatewayAPI
|
|
#
|
|
# The Gateway API CRDs are maintained separately from any implementation.
|
|
# We install the standard channel CRDs from the upstream sig-network repo.
|
|
# Cilium requires these CRDs to exist before gatewayAPI.enabled=true works.
|
|
#
|
|
# Standard channel includes: GatewayClass, Gateway, HTTPRoute, GRPCRoute,
|
|
# ReferenceGrant
|
|
# Experimental channel adds: TCPRoute, TLSRoute, UDPRoute (added below)
|
|
# ------------------------------------------------------------------------------
|
|
apiVersion: argoproj.io/v1alpha1
|
|
kind: Application
|
|
metadata:
|
|
name: gateway-api-crds
|
|
namespace: argocd
|
|
annotations:
|
|
# Wave 3.5 — after cert-manager (3), before cilium-config (4)
|
|
# ArgoCD sync waves are integers, so we use 3 here and rely on
|
|
# sync ordering within the wave. Add a sync-wave of 3 to cert-manager
|
|
# and this will naturally sequence correctly.
|
|
argocd.argoproj.io/sync-wave: "3"
|
|
spec:
|
|
project: default
|
|
source:
|
|
repoURL: https://gitea.mk-labs.cloud/rblundon/homelab.git
|
|
targetRevision: main
|
|
path: cluster/platform/gateway-api/manifests
|
|
destination:
|
|
server: https://kubernetes.default.svc
|
|
namespace: gateway-api
|
|
syncPolicy:
|
|
automated:
|
|
prune: false # Never prune CRDs — too dangerous
|
|
selfHeal: true
|
|
syncOptions:
|
|
- CreateNamespace=true
|
|
- ServerSideApply=true
|
|
- Replace=true # CRDs require Replace not Patch for updates
|