From 4f4b1f3dc94f6237f6febfc9ebe31ea35123ed86 Mon Sep 17 00:00:00 2001 From: Stavros Kois <47820033+stavros-k@users.noreply.github.com> Date: Sun, 16 Jul 2023 01:13:43 +0300 Subject: [PATCH] fix(traefik): actually render customheader middleware and cleanup middleware templates (#10502) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit **Description** ⚒️ Fixes # **⚙️ Type of change** - [ ] ⚙️ Feature/App addition - [ ] 🪛 Bugfix - [ ] ⚠️ Breaking change (fix or feature that would cause existing functionality to not work as expected) - [ ] 🔃 Refactor of current code **🧪 How Has This Been Tested?** **📃 Notes:** **✔️ Checklist:** - [ ] ⚖️ My code follows the style guidelines of this project - [ ] 👀 I have performed a self-review of my own code - [ ] #️⃣ I have commented my code, particularly in hard-to-understand areas - [ ] 📄 I have made corresponding changes to the documentation - [ ] ⚠️ My changes generate no new warnings - [ ] 🧪 I have added tests to this description that prove my fix is effective or that my feature works - [ ] ⬆️ I increased versions for any altered app according to semantic versioning **➕ App addition** If this PR is an app addition please make sure you have done the following. - [ ] 🪞 I have opened a PR on [truecharts/containers](https://github.com/truecharts/containers) adding the container to TrueCharts mirror repo. - [ ] 🖼️ I have added an icon in the Chart's root directory called `icon.png` --- _Please don't blindly check all the boxes. Read them and only check those that apply. Those checkboxes are there for the reviewer to see what is this all about and the status of this PR with a quick glance._ --- charts/enterprise/traefik/Chart.yaml | 2 +- .../templates/middlewares/addPrefix.yaml | 2 -- .../middlewares/basic-middleware.yaml | 1 - .../templates/middlewares/basicauth.yaml | 17 ++++++++-------- .../traefik/templates/middlewares/chain.yaml | 18 ++++++++--------- .../middlewares/customRequestHeaders.yaml | 11 ++++------ .../middlewares/customResponseHeaders.yaml | 11 ++++------ .../templates/middlewares/forwardauth.yaml | 20 +++++++++---------- .../templates/middlewares/geoblock.yaml | 9 +++------ .../templates/middlewares/ipwhitelist.yaml | 13 +++++------- .../templates/middlewares/ratelimit.yaml | 7 ++----- .../templates/middlewares/real-ip.yaml | 5 +---- .../templates/middlewares/redirectScheme.yaml | 7 ++----- .../templates/middlewares/redirectregex.yaml | 7 ++----- .../middlewares/stripPrefixRegex.yaml | 7 ++----- .../templates/middlewares/tc-chains.yaml | 2 -- .../templates/middlewares/tc-headers.yaml | 2 -- .../templates/middlewares/tc-nextcloud.yaml | 2 -- .../templates/middlewares/theme-park.yaml | 7 ++----- ...ml => customRequestHeadersMiddleware.yaml} | 0 ...l => customResponseHeadersMiddleware.yaml} | 0 21 files changed, 54 insertions(+), 96 deletions(-) rename templates/questions/traefik/{customRequestHeaders.yaml => customRequestHeadersMiddleware.yaml} (100%) rename templates/questions/traefik/{customResponseHeaders.yaml => customResponseHeadersMiddleware.yaml} (100%) diff --git a/charts/enterprise/traefik/Chart.yaml b/charts/enterprise/traefik/Chart.yaml index 474ddfa2a56..2de24d9e585 100644 --- a/charts/enterprise/traefik/Chart.yaml +++ b/charts/enterprise/traefik/Chart.yaml @@ -23,7 +23,7 @@ sources: - https://github.com/traefik/traefik-helm-chart - https://traefik.io/ type: application -version: 18.1.0 +version: 18.1.1 annotations: truecharts.org/catagories: | - network diff --git a/charts/enterprise/traefik/templates/middlewares/addPrefix.yaml b/charts/enterprise/traefik/templates/middlewares/addPrefix.yaml index 473f703eec9..cae53f113ea 100644 --- a/charts/enterprise/traefik/templates/middlewares/addPrefix.yaml +++ b/charts/enterprise/traefik/templates/middlewares/addPrefix.yaml @@ -1,5 +1,3 @@ -{{- $values := .Values }} - {{- range $index, $middlewareData := .Values.middlewares.addPrefix }} --- diff --git a/charts/enterprise/traefik/templates/middlewares/basic-middleware.yaml b/charts/enterprise/traefik/templates/middlewares/basic-middleware.yaml index ead5bdf724e..108b99499d3 100644 --- a/charts/enterprise/traefik/templates/middlewares/basic-middleware.yaml +++ b/charts/enterprise/traefik/templates/middlewares/basic-middleware.yaml @@ -1,4 +1,3 @@ -{{- $values := .Values }} --- apiVersion: traefik.io/v1alpha1 kind: Middleware diff --git a/charts/enterprise/traefik/templates/middlewares/basicauth.yaml b/charts/enterprise/traefik/templates/middlewares/basicauth.yaml index f2a990a57e0..dab1a486a62 100644 --- a/charts/enterprise/traefik/templates/middlewares/basicauth.yaml +++ b/charts/enterprise/traefik/templates/middlewares/basicauth.yaml @@ -1,16 +1,15 @@ -{{- $values := .Values }} +{{- range $index, $middlewareData := .Values.middlewares.basicAuth -}} + + {{- $users := list -}} + {{- range $index, $userdata := $middlewareData.users -}} + {{- $users = append $users (htpasswd $userdata.username $userdata.password) -}} + {{- end }} -{{ range $index, $middlewareData := .Values.middlewares.basicAuth }} --- -{{- $users := list }} -{{- range $index, $userdata := $middlewareData.users }} - {{- $users = append $users (htpasswd $userdata.username $userdata.password) }} -{{- end }} - apiVersion: v1 kind: Secret metadata: - name: {{printf "%v-%v" $middlewareData.name "secret" }} + name: {{ printf "%v-%v" $middlewareData.name "secret" }} namespace: tc-system type: Opaque stringData: @@ -28,4 +27,4 @@ metadata: spec: basicAuth: secret: {{ printf "%v-%v" $middlewareData.name "secret" }} -{{ end }} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/chain.yaml b/charts/enterprise/traefik/templates/middlewares/chain.yaml index bb4920caab7..ec4c38100d7 100644 --- a/charts/enterprise/traefik/templates/middlewares/chain.yaml +++ b/charts/enterprise/traefik/templates/middlewares/chain.yaml @@ -1,10 +1,10 @@ -{{- $values := .Values }} -{{- $namespace := "tc-system" }} -{{- if $.Values.ingressClass.enabled }} -{{- $namespace := ( printf "tc-system-%s" .Release.Name ) }} -{{- end }} -{{ range $index, $middlewareData := .Values.middlewares.chain }} +{{- $values := .Values -}} +{{- $namespace := "tc-system" -}} +{{- if $.Values.ingressClass.enabled -}} + {{- $namespace := (printf "tc-system-%s" .Release.Name) -}} +{{- end -}} +{{- range $index, $middlewareData := .Values.middlewares.chain }} --- # Declaring the user list apiVersion: traefik.io/v1alpha1 @@ -15,7 +15,7 @@ metadata: spec: chain: middlewares: - {{ range $index, $middleware := .middlewares }} + {{- range $index, $middleware := .middlewares }} - name: {{ printf "%v-%v@%v" $namespace $middleware "kubernetescrd" }} - {{ end }} -{{ end }} + {{- end }} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/customRequestHeaders.yaml b/charts/enterprise/traefik/templates/middlewares/customRequestHeaders.yaml index 938709da98c..e9c5b030fd6 100644 --- a/charts/enterprise/traefik/templates/middlewares/customRequestHeaders.yaml +++ b/charts/enterprise/traefik/templates/middlewares/customRequestHeaders.yaml @@ -1,7 +1,4 @@ -{{- $values := .Values }} - -{{ range $index, $middlewareData := .Values.middlewares.customRequestHeaders }} - +{{- range $index, $middlewareData := .Values.middlewares.customRequestHeaders }} --- # Declaring the user list apiVersion: traefik.io/v1alpha1 @@ -12,7 +9,7 @@ metadata: spec: headers: customRequestHeaders: - {{ range $index, $customRequestHeader := $middlewareData.headers }} + {{- range $index, $customRequestHeader := $middlewareData.headers }} {{ $customRequestHeader.name }}: {{ $customRequestHeader.value | quote }} - {{ end }} -{{ end }} + {{- end }} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/customResponseHeaders.yaml b/charts/enterprise/traefik/templates/middlewares/customResponseHeaders.yaml index 8728027c9cd..c11e151a2d7 100644 --- a/charts/enterprise/traefik/templates/middlewares/customResponseHeaders.yaml +++ b/charts/enterprise/traefik/templates/middlewares/customResponseHeaders.yaml @@ -1,7 +1,4 @@ -{{- $values := .Values }} - -{{ range $index, $middlewareData := .Values.middlewares.customResponseHeaders }} - +{{- range $index, $middlewareData := .Values.middlewares.customResponseHeaders }} --- # Declaring the user list apiVersion: traefik.io/v1alpha1 @@ -12,7 +9,7 @@ metadata: spec: headers: customResponseHeaders: - {{ range $index, $customResponseHeader := $middlewareData.headers }} + {{- range $index, $customResponseHeader := $middlewareData.headers }} {{ $customResponseHeader.name }}: {{ $customResponseHeader.value | quote }} - {{ end }} -{{ end }} + {{- end }} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/forwardauth.yaml b/charts/enterprise/traefik/templates/middlewares/forwardauth.yaml index a0336c6719d..08ad72e5cca 100644 --- a/charts/enterprise/traefik/templates/middlewares/forwardauth.yaml +++ b/charts/enterprise/traefik/templates/middlewares/forwardauth.yaml @@ -1,6 +1,4 @@ -{{- $values := .Values }} - -{{ range $index, $middlewareData := .Values.middlewares.forwardAuth }} +{{- range $index, $middlewareData := .Values.middlewares.forwardAuth }} --- apiVersion: traefik.io/v1alpha1 kind: Middleware @@ -12,20 +10,20 @@ spec: address: {{ $middlewareData.address }} {{- with $middlewareData.authResponseHeaders }} authResponseHeaders: - {{- toYaml . | nindent 4 }} - {{- end }} + {{- toYaml . | nindent 4 }} + {{- end -}} {{- with $middlewareData.authRequestHeaders }} authRequestHeaders: - {{- toYaml . | nindent 4 }} - {{- end }} + {{- toYaml . | nindent 4 }} + {{- end -}} {{- if $middlewareData.authResponseHeadersRegex }} authResponseHeadersRegex: {{ $middlewareData.authResponseHeadersRegex }} - {{- end }} + {{- end -}} {{- if $middlewareData.trustForwardHeader }} trustForwardHeader: true - {{- end }} + {{- end -}} {{- with $middlewareData.tls }} tls: insecureSkipVerify: {{ .insecureSkipVerify | default false }} - {{- end }} -{{ end }} + {{- end -}} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/geoblock.yaml b/charts/enterprise/traefik/templates/middlewares/geoblock.yaml index c1a2dcd0aeb..ad78037f3cd 100644 --- a/charts/enterprise/traefik/templates/middlewares/geoblock.yaml +++ b/charts/enterprise/traefik/templates/middlewares/geoblock.yaml @@ -1,7 +1,4 @@ -{{- $values := .Values }} - {{- range $index, $middlewareData := .Values.middlewares.geoBlock }} - --- apiVersion: traefik.io/v1alpha1 kind: Middleware @@ -22,11 +19,11 @@ spec: allowUnknownCountries: {{ $middlewareData.allowUnknownCountries }} unknownCountryApiResponse: {{ $middlewareData.unknownCountryApiResponse }} blackListMode: {{ $middlewareData.blackListMode }} - {{- if not $middlewareData.countries }} - {{- fail "You have to define at least one country..." }} + {{- if not $middlewareData.countries -}} + {{- fail "You have to define at least one country..." -}} {{- end }} countries: {{- range $middlewareData.countries }} - {{ . }} {{- end }} -{{- end }} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/ipwhitelist.yaml b/charts/enterprise/traefik/templates/middlewares/ipwhitelist.yaml index cec46d5102a..fcb7de882a7 100644 --- a/charts/enterprise/traefik/templates/middlewares/ipwhitelist.yaml +++ b/charts/enterprise/traefik/templates/middlewares/ipwhitelist.yaml @@ -1,7 +1,4 @@ -{{- $values := .Values }} - -{{ range $index, $middlewareData := .Values.middlewares.ipWhiteList }} - +{{- range $index, $middlewareData := .Values.middlewares.ipWhiteList }} --- # Declaring the user list apiVersion: traefik.io/v1alpha1 @@ -19,12 +16,12 @@ spec: ipStrategy: {{- if $middlewareData.ipStrategy.depth }} depth: {{ $middlewareData.ipStrategy.depth }} - {{- end }} + {{- end -}} {{- if $middlewareData.ipStrategy.excludedIPs }} excludedIPs: {{- range $middlewareData.ipStrategy.excludedIPs }} - {{ . }} {{- end }} - {{- end }} - {{- end }} -{{ end }} + {{- end -}} + {{- end -}} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/ratelimit.yaml b/charts/enterprise/traefik/templates/middlewares/ratelimit.yaml index a2ae79af66e..d1ded79a7d7 100644 --- a/charts/enterprise/traefik/templates/middlewares/ratelimit.yaml +++ b/charts/enterprise/traefik/templates/middlewares/ratelimit.yaml @@ -1,7 +1,4 @@ -{{- $values := .Values }} - -{{ range $index, $middlewareData := .Values.middlewares.rateLimit }} - +{{- range $index, $middlewareData := .Values.middlewares.rateLimit }} --- # Declaring the user list apiVersion: traefik.io/v1alpha1 @@ -13,4 +10,4 @@ spec: rateLimit: average: {{ $middlewareData.average }} burst: {{ $middlewareData.burst }} -{{ end }} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/real-ip.yaml b/charts/enterprise/traefik/templates/middlewares/real-ip.yaml index 1e7d6e148e0..a0383c239c5 100644 --- a/charts/enterprise/traefik/templates/middlewares/real-ip.yaml +++ b/charts/enterprise/traefik/templates/middlewares/real-ip.yaml @@ -1,7 +1,4 @@ -{{- $values := .Values }} - {{- range $index, $middlewareData := .Values.middlewares.realIP }} - --- apiVersion: traefik.io/v1alpha1 kind: Middleware @@ -15,4 +12,4 @@ spec: {{- range $middlewareData.excludedNetworks }} - {{ . | quote }} {{- end }} -{{- end }} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/redirectScheme.yaml b/charts/enterprise/traefik/templates/middlewares/redirectScheme.yaml index 0913fd132a5..21f45fa1ab4 100644 --- a/charts/enterprise/traefik/templates/middlewares/redirectScheme.yaml +++ b/charts/enterprise/traefik/templates/middlewares/redirectScheme.yaml @@ -1,7 +1,4 @@ -{{- $values := .Values }} - -{{ range $index, $middlewareData := .Values.middlewares.redirectScheme }} - +{{- range $index, $middlewareData := .Values.middlewares.redirectScheme }} --- # Declaring the user list apiVersion: traefik.io/v1alpha1 @@ -13,4 +10,4 @@ spec: redirectScheme: scheme: {{ $middlewareData.scheme }} permanent: {{ $middlewareData.permanent }} -{{ end }} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/redirectregex.yaml b/charts/enterprise/traefik/templates/middlewares/redirectregex.yaml index 9dbd602a166..ea6a64029a5 100644 --- a/charts/enterprise/traefik/templates/middlewares/redirectregex.yaml +++ b/charts/enterprise/traefik/templates/middlewares/redirectregex.yaml @@ -1,7 +1,4 @@ -{{- $values := .Values }} - -{{ range $index, $middlewareData := .Values.middlewares.redirectRegex }} - +{{- range $index, $middlewareData := .Values.middlewares.redirectRegex }} --- # Declaring the user list apiVersion: traefik.io/v1alpha1 @@ -14,4 +11,4 @@ spec: regex: {{ $middlewareData.regex | quote }} replacement: {{ $middlewareData.replacement | quote }} permanent: {{ $middlewareData.permanent }} -{{ end }} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/stripPrefixRegex.yaml b/charts/enterprise/traefik/templates/middlewares/stripPrefixRegex.yaml index a409bfa85a1..170f55df4e2 100644 --- a/charts/enterprise/traefik/templates/middlewares/stripPrefixRegex.yaml +++ b/charts/enterprise/traefik/templates/middlewares/stripPrefixRegex.yaml @@ -1,7 +1,4 @@ -{{- $values := .Values }} - - -{{ range $index, $middlewareData := .Values.middlewares.stripPrefixRegex }} +{{- range $index, $middlewareData := .Values.middlewares.stripPrefixRegex }} --- apiVersion: traefik.io/v1alpha1 kind: Middleware @@ -14,4 +11,4 @@ spec: {{- range $middlewareData.regex }} - {{ . | quote }} {{- end }} -{{ end }} +{{- end -}} diff --git a/charts/enterprise/traefik/templates/middlewares/tc-chains.yaml b/charts/enterprise/traefik/templates/middlewares/tc-chains.yaml index 0b21a01f3bc..2548dc91521 100644 --- a/charts/enterprise/traefik/templates/middlewares/tc-chains.yaml +++ b/charts/enterprise/traefik/templates/middlewares/tc-chains.yaml @@ -1,5 +1,3 @@ -{{- $values := .Values }} - --- apiVersion: traefik.io/v1alpha1 kind: Middleware diff --git a/charts/enterprise/traefik/templates/middlewares/tc-headers.yaml b/charts/enterprise/traefik/templates/middlewares/tc-headers.yaml index 859a5c8e043..437f49147e0 100644 --- a/charts/enterprise/traefik/templates/middlewares/tc-headers.yaml +++ b/charts/enterprise/traefik/templates/middlewares/tc-headers.yaml @@ -1,5 +1,3 @@ -{{- $values := .Values }} - --- apiVersion: traefik.io/v1alpha1 kind: Middleware diff --git a/charts/enterprise/traefik/templates/middlewares/tc-nextcloud.yaml b/charts/enterprise/traefik/templates/middlewares/tc-nextcloud.yaml index 3186bf4e2ca..13547ff5166 100644 --- a/charts/enterprise/traefik/templates/middlewares/tc-nextcloud.yaml +++ b/charts/enterprise/traefik/templates/middlewares/tc-nextcloud.yaml @@ -1,5 +1,3 @@ -{{- $values := .Values }} - --- apiVersion: traefik.io/v1alpha1 kind: Middleware diff --git a/charts/enterprise/traefik/templates/middlewares/theme-park.yaml b/charts/enterprise/traefik/templates/middlewares/theme-park.yaml index 5f6c9d8159e..103d53c314a 100644 --- a/charts/enterprise/traefik/templates/middlewares/theme-park.yaml +++ b/charts/enterprise/traefik/templates/middlewares/theme-park.yaml @@ -1,7 +1,4 @@ -{{- $values := .Values }} - {{- range $index, $middlewareData := .Values.middlewares.themePark }} - --- apiVersion: traefik.io/v1alpha1 kind: Middleware @@ -19,5 +16,5 @@ spec: {{- range $middlewareData.addons }} - {{ . | quote }} {{- end }} - {{- end }} -{{- end }} + {{- end -}} +{{- end -}} diff --git a/templates/questions/traefik/customRequestHeaders.yaml b/templates/questions/traefik/customRequestHeadersMiddleware.yaml similarity index 100% rename from templates/questions/traefik/customRequestHeaders.yaml rename to templates/questions/traefik/customRequestHeadersMiddleware.yaml diff --git a/templates/questions/traefik/customResponseHeaders.yaml b/templates/questions/traefik/customResponseHeadersMiddleware.yaml similarity index 100% rename from templates/questions/traefik/customResponseHeaders.yaml rename to templates/questions/traefik/customResponseHeadersMiddleware.yaml