diff --git a/applications/templates/traefik.yaml b/applications/templates/traefik.yaml index 1ca3c9b..f233260 100644 --- a/applications/templates/traefik.yaml +++ b/applications/templates/traefik.yaml @@ -5,13 +5,6 @@ metadata: namespace: argocd spec: project: default - source: - chart: traefik - repoURL: https://traefik.github.io/charts - targetRevision: 35.2.0 - helm: - valueFiles: - - values/traefik.yaml destination: server: {{ .Values.spec.destination.server }} namespace: traefik @@ -20,4 +13,80 @@ spec: prune: true selfHeal: true syncOptions: - - CreateNamespace=true \ No newline at end of file + - CreateNamespace=true + source: + chart: traefik + repoURL: https://traefik.github.io/charts + targetRevision: 35.2.0 + helm: + valueObject: + ingressRoute: + dashboard: + enabled: true + matchRule: PathPrefix(`/dashboard`) || PathPrefix(`/api`) + entryPoints: ["traefik"] + healthcheck: + enabled: false + matchRule: PathPrefix(`/ping`) + entryPoints: ["traefik"] + + + metrics: + prometheus: + entryPoint: metrics + + ports: + traefik: + port: 8080 + # Defines whether the port is exposed if service.type is LoadBalancer or + # NodePort. + # + # -- You SHOULD NOT expose the traefik port on production deployments. + # If you want to access it from outside your cluster, + # use `kubectl port-forward` or create a secure ingress + expose: true + # -- The exposed port for this service + exposedPort: 8080 + # -- The port protocol (TCP/UDP) + protocol: TCP + web: + port: 8000 + expose: true + exposedPort: 80 + protocol: TCP + websecure: + # asDefault: true + port: 8443 + expose: true + exposedPort: 443 + protocol: TCP + tls: + enabled: true + # -- One can apply Middlewares on an entrypoint + # https://doc.traefik.io/traefik/middlewares/overview/ + # https://doc.traefik.io/traefik/routing/entrypoints/#middlewares + # -- /!\ It introduces here a link between your static configuration and your dynamic configuration /!\ + # It follows the provider naming convention: https://doc.traefik.io/traefik/providers/overview/#provider-namespace + # - namespace-name1@kubernetescrd + # - namespace-name2@kubernetescrd + middlewares: [] + metrics: + # -- When using hostNetwork, use another port to avoid conflict with node exporter: + # https://github.com/prometheus/prometheus/wiki/Default-port-allocations + port: 9100 + # -- You may not want to expose the metrics port on production deployments. + # If you want to access it from outside your cluster, + # use `kubectl port-forward` or create a secure ingress + expose: true + exposedPort: 9100 + protocol: TCP + + service: + enabled: true + single: true + type: LoadBalancer + annotations: + io.cilium/lb-ipam-ips: "192.168.0.1" + spec: + externalTrafficPolicy: Local + diff --git a/applications/templates/values/traefik.yaml b/applications/templates/values/traefik.yaml deleted file mode 100644 index ea29bf0..0000000 --- a/applications/templates/values/traefik.yaml +++ /dev/null @@ -1,69 +0,0 @@ -ingressRoute: - dashboard: - enabled: true - matchRule: PathPrefix(`/dashboard`) || PathPrefix(`/api`) - entryPoints: ["traefik"] - healthcheck: - enabled: false - matchRule: PathPrefix(`/ping`) - entryPoints: ["traefik"] - - -metrics: - prometheus: - entryPoint: metrics - -ports: - traefik: - port: 8080 - # Defines whether the port is exposed if service.type is LoadBalancer or - # NodePort. - # - # -- You SHOULD NOT expose the traefik port on production deployments. - # If you want to access it from outside your cluster, - # use `kubectl port-forward` or create a secure ingress - expose: true - # -- The exposed port for this service - exposedPort: 8080 - # -- The port protocol (TCP/UDP) - protocol: TCP - web: - port: 8000 - expose: true - exposedPort: 80 - protocol: TCP - websecure: - # asDefault: true - port: 8443 - expose: true - exposedPort: 443 - protocol: TCP - tls: - enabled: true - # -- One can apply Middlewares on an entrypoint - # https://doc.traefik.io/traefik/middlewares/overview/ - # https://doc.traefik.io/traefik/routing/entrypoints/#middlewares - # -- /!\ It introduces here a link between your static configuration and your dynamic configuration /!\ - # It follows the provider naming convention: https://doc.traefik.io/traefik/providers/overview/#provider-namespace - # - namespace-name1@kubernetescrd - # - namespace-name2@kubernetescrd - middlewares: [] - metrics: - # -- When using hostNetwork, use another port to avoid conflict with node exporter: - # https://github.com/prometheus/prometheus/wiki/Default-port-allocations - port: 9100 - # -- You may not want to expose the metrics port on production deployments. - # If you want to access it from outside your cluster, - # use `kubectl port-forward` or create a secure ingress - expose: true - exposedPort: 9100 - protocol: TCP - -service: - enabled: true - single: true - type: LoadBalancer - annotations: - io.cilium/lb-ipam-ips: "192.168.0.1" - spec: - externalTrafficPolicy: Local