some more cleanup for the ingressClass and middleware handlers (+2 squashed commit)

Squashed commit:

[2bf153a25] bump

[6114bf0ff] add ingressClass support to middleware GUI and fix middleware namespace creation
This commit is contained in:
kjeld Schouten-Lebbing
2021-09-03 17:43:44 +02:00
parent f9c5ca0fd2
commit 3c1d4aad1a
11 changed files with 19 additions and 23 deletions

View File

@@ -22,4 +22,4 @@ sources:
- https://github.com/traefik/traefik-helm-chart
- https://traefik.io/
type: application
version: 0.0.2
version: 0.0.3

View File

@@ -58,7 +58,7 @@ additionalArguments:
- "--metrics.prometheus"
- "--ping"
- "--serverstransport.insecureskipverify=true"
- "--providers.kubernetesingress.allowexternalnameservices=true"
# TLS Options are created as TLSOption CRDs
# https://doc.traefik.io/traefik/https/tls/#tls-options

View File

@@ -1,22 +1,14 @@
{{/* Define the ingressClass */}}
{{- define "traefik.ingressClass" -}}
{{- if and .Values.ingressClass.enabled (semverCompare ">=2.3.0" (default .Chart.AppVersion .Values.image.tag)) -}}
{{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1/IngressClass" }}
apiVersion: networking.k8s.io/v1
{{- else if .Capabilities.APIVersions.Has "networking.k8s.io/v1beta1/IngressClass" }}
apiVersion: networking.k8s.io/v1beta1
{{- else if or (eq .Values.ingressClass.fallbackApiVersion "v1beta1") (eq .Values.ingressClass.fallbackApiVersion "v1") }}
apiVersion: {{ printf "networking.k8s.io/%s" .Values.ingressClass.fallbackApiVersion }}
{{- else }}
{{- fail "\n\n ERROR: You must have at least networking.k8s.io/v1beta1 to use ingressClass" }}
{{- end }}
{{- if and .Values.ingressClass.enabled }}
---
kind: IngressClass
metadata:
annotations:
ingressclass.kubernetes.io/is-default-class: {{ .Values.ingressClass.isDefaultClass | quote }}
labels:
{{- include "common.labels" . | nindent 4 }}
name: {{ include "common.names.fullname" . }}
name: {{ .Release.Name }}
spec:
controller: traefik.io/ingress-controller
{{- end }}

View File

@@ -1,3 +1,4 @@
{{- if or ( not .Values.ingressClass.enabled ) ( and ( .Values.ingressClass.enabled ) ( .Values.ingressClass.isDefaultClass ) ) }}
apiVersion: v1
kind: Namespace
metadata:
@@ -5,3 +6,5 @@ metadata:
namespace: traefikmiddlewares
annotations:
"helm.sh/hook": pre-install
"helm.sh/hook-delete-policy": before-hook-creation,hook-failed
{{- end }}

View File

@@ -3,7 +3,7 @@ apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: compress
namespace: traefikmiddlewares
namespace: {{ if or ( not .Values.ingressClass.enabled ) ( and ( .Values.ingressClass.enabled ) ( .Values.ingressClass.isDefaultClass ) ) }}traefikmiddlewares{{ else }}ix-{{ .Release.Name }}{{ end }}
spec:
compress: {}
---
@@ -13,7 +13,7 @@ apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: basic-ratelimit
namespace: traefikmiddlewares
namespace: {{ if or ( not .Values.ingressClass.enabled ) ( and ( .Values.ingressClass.enabled ) ( .Values.ingressClass.isDefaultClass ) ) }}traefikmiddlewares{{ else }}ix-{{ .Release.Name }}{{ end }}
spec:
rateLimit:
average: 300
@@ -23,7 +23,7 @@ apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: basic-secure-headers
namespace: traefikmiddlewares
namespace: {{ if or ( not .Values.ingressClass.enabled ) ( and ( .Values.ingressClass.enabled ) ( .Values.ingressClass.isDefaultClass ) ) }}traefikmiddlewares{{ else }}ix-{{ .Release.Name }}{{ end }}
spec:
headers:
accessControlAllowMethods:
@@ -49,7 +49,7 @@ apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: chain-basic
namespace: traefikmiddlewares
namespace: {{ if or ( not .Values.ingressClass.enabled ) ( and ( .Values.ingressClass.enabled ) ( .Values.ingressClass.isDefaultClass ) ) }}traefikmiddlewares{{ else }}ix-{{ .Release.Name }}{{ end }}
spec:
chain:
middlewares:

View File

@@ -9,7 +9,7 @@ apiVersion: v1
kind: Secret
metadata:
name: {{printf "%v-%v" $middlewareData.name "secret" }}
namespace: traefikmiddlewares
namespace: {{ if or ( not .Values.ingressClass.enabled ) ( and ( .Values.ingressClass.enabled ) ( .Values.ingressClass.isDefaultClass ) ) }}traefikmiddlewares{{ else }}ix-{{ .Release.Name }}{{ end }}
type: Opaque
stringData:
users: |
@@ -22,7 +22,7 @@ apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: {{ $middlewareData.name }}
namespace: traefikmiddlewares
namespace: {{ if or ( not .Values.ingressClass.enabled ) ( and ( .Values.ingressClass.enabled ) ( .Values.ingressClass.isDefaultClass ) ) }}traefikmiddlewares{{ else }}ix-{{ .Release.Name }}{{ end }}
spec:
basicAuth:
secret: {{printf "%v-%v" $middlewareData.name "secret" }}

View File

@@ -6,7 +6,7 @@ apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: {{ $middlewareData.name }}
namespace: traefikmiddlewares
namespace: {{ if or ( not .Values.ingressClass.enabled ) ( and ( .Values.ingressClass.enabled ) ( .Values.ingressClass.isDefaultClass ) ) }}traefikmiddlewares{{ else }}ix-{{ .Release.Name }}{{ end }}
spec:
chain:
middlewares:

View File

@@ -4,7 +4,7 @@ apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: {{ $middlewareData.name }}
namespace: traefikmiddlewares
namespace: {{ if or ( not .Values.ingressClass.enabled ) ( and ( .Values.ingressClass.enabled ) ( .Values.ingressClass.isDefaultClass ) ) }}traefikmiddlewares{{ else }}ix-{{ .Release.Name }}{{ end }}
spec:
forwardAuth:
address: {{ $middlewareData.address }}

View File

@@ -6,7 +6,7 @@ apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: {{ $middlewareData.name }}
namespace: traefikmiddlewares
namespace: {{ if or ( not .Values.ingressClass.enabled ) ( and ( .Values.ingressClass.enabled ) ( .Values.ingressClass.isDefaultClass ) ) }}traefikmiddlewares{{ else }}ix-{{ .Release.Name }}{{ end }}
spec:
rateLimit:
average: {{ $middlewareData.average }}

View File

@@ -6,7 +6,7 @@ apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: {{ $middlewareData.name }}
namespace: traefikmiddlewares
namespace: {{ if or ( not .Values.ingressClass.enabled ) ( and ( .Values.ingressClass.enabled ) ( .Values.ingressClass.isDefaultClass ) ) }}traefikmiddlewares{{ else }}ix-{{ .Release.Name }}{{ end }}
spec:
redirectScheme:
scheme: {{ $middlewareData.scheme }}

View File

@@ -117,6 +117,7 @@ additionalArguments:
- "--metrics.prometheus"
- "--ping"
- "--serverstransport.insecureskipverify=true"
- "--providers.kubernetesingress.allowexternalnameservices=true"
# -- TLS Options to be created as TLSOption CRDs