83 lines
2 KiB
YAML
83 lines
2 KiB
YAML
{{- if (eq .Values.controller "traefik") }}
|
|
---
|
|
apiVersion: helm.toolkit.fluxcd.io/v2beta1
|
|
kind: HelmRelease
|
|
metadata:
|
|
name: traefik
|
|
spec:
|
|
chart:
|
|
spec:
|
|
sourceRef:
|
|
kind: HelmRepository
|
|
name: traefik
|
|
chart: traefik
|
|
interval: 30m
|
|
install:
|
|
{{- toYaml .Values.commons.helm.release.install | nindent 4 }}
|
|
test:
|
|
{{- toYaml .Values.commons.helm.release.test | nindent 4 }}
|
|
upgrade:
|
|
{{- toYaml .Values.commons.helm.release.upgrade | nindent 4 }}
|
|
interval: 10m
|
|
values:
|
|
deployment:
|
|
enabled: {{ toYaml (not .Values.external) }}
|
|
kind: DaemonSet
|
|
|
|
service:
|
|
enabled: {{ toYaml (not .Values.external) }}
|
|
ipFamilyPolicy: PreferDualStack
|
|
ipFamilies:
|
|
- IPv6
|
|
- IPv4
|
|
|
|
tolerations:
|
|
- key: "CriticalAddonsOnly"
|
|
operator: "Exists"
|
|
- key: "node-role.kubernetes.io/control-plane"
|
|
operator: "Exists"
|
|
effect: "NoSchedule"
|
|
- key: "node-role.kubernetes.io/master"
|
|
operator: "Exists"
|
|
effect: "NoSchedule"
|
|
|
|
priorityClassName: "system-cluster-critical"
|
|
|
|
ports:
|
|
websecure:
|
|
http3:
|
|
enabled: true
|
|
|
|
providers:
|
|
kubernetesIngress:
|
|
publishedService:
|
|
enabled: true
|
|
|
|
ingressRoute:
|
|
dashboard:
|
|
enabled: {{ toYaml (not .Values.external) }}
|
|
matchRule: Host(`lb.{{ .Values.commons.ingress.domain }}`) && (PathPrefix(`/api`, `/dashboard`))
|
|
entryPoints:
|
|
- "traefik"
|
|
- "websecure"
|
|
|
|
{{- if .Values.external }}
|
|
hub:
|
|
enabled: false
|
|
ingressClass:
|
|
enabled: false
|
|
isDefaultClass: true
|
|
rbac:
|
|
enabled: false
|
|
{{- end }}
|
|
|
|
metrics:
|
|
prometheus:
|
|
service:
|
|
enabled:
|
|
{{- if (.Capabilities.APIVersions.Has "monitoring.coreos.com/v1/ServiceMonitor") }}
|
|
serviceMonitor:
|
|
additionalLabels:
|
|
{{- toYaml $.Values.commons.prometheus.monitor.labels | nindent 12 }}
|
|
{{- end }}
|
|
{{- end }}
|