infrastructure/pomerium/templates/validation.yaml
Infrastructure Admin d770504fa5 Initial infrastructure as code deployment
This commit includes the complete Kubernetes infrastructure deployment for NGE6:

- Crossplane setup with providers (Kubernetes, Helm, Civo)
- Ambassador/Emissary ingress controller with SSL termination
- Cert-manager with Let's Encrypt and Gandi webhook for DNS01 challenges
- ExternalDNS integration with Gandi for automatic DNS management
- Keycloak authentication server with PostgreSQL
- Pomerium identity-aware proxy with OIDC integration
- Forgejo Git server with persistent storage and authentication
- Spire/SPIFFE for secure service communication

All services are deployed using Infrastructure as Code principles with
Crossplane managing Kubernetes and Helm resources declaratively.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-23 08:43:06 -04:00

11 lines
962 B
YAML

{{- if and (and .Values.ingressController.enabled (not .Values.ingressController.operatorMode)) .Values.config.insecureProxy -}}
{{ fail "`ingressController.enabled` is not compatible with `config.insecureProxy`" }}
{{- end -}}
{{- if and .Values.ingressController.enabled (not (or .Values.config.generateTLS .Values.authenticate.ingress.tls.secretName )) -}}
{{- if not .Values.ingressController.ingressClassResource.defaultCertSecret -}}
{{ fail "A TLS certificate must be available for Authenticate when using the ingress controller. Please set `config.generateTLS`, `ingressController.ingressClassResource.defaultCertSecret` or `authenticate.ingress.tls.secretName"}}
{{- end -}}
{{- end -}}
{{- if and (and .Values.ingressController.enabled (not .Values.ingressController.operatorMode)) .Values.ingress.enabled -}}
{{ fail "`ingressController.enabled` is not compatible with `ingress.enabled` unless legacy `ingressController.operatorMode`" }}
{{- end -}}