Skip to content
Snippets Groups Projects
Commit 4eea4329 authored by Andri Joos's avatar Andri Joos :blush:
Browse files

Merge branch 'redirectscheme_middleware'

parents d625c31d c024d2e1
No related branches found
No related tags found
No related merge requests found
Pipeline #7758 passed with stages
in 41 seconds
...@@ -112,3 +112,27 @@ TLSStore ...@@ -112,3 +112,27 @@ TLSStore
- secretName: {{ $secretName }} - secretName: {{ $secretName }}
{{- end }} {{- end }}
{{- end }} {{- end }}
{{/*
Middlewares
*/}}
{{/*
RedirectScheme
*/}}
{{- define "common.traefik.middlewares.redirectscheme.variables.spec" -}}
{{- $redirectScheme := dict }}
{{- $scheme := "https" }}
{{- $permanent := true }}
{{- if .Values.scheme }}
{{- $scheme = .Values.scheme }}
{{- end }}
{{- if hasKey .Values "permanent" }}
{{- $permanent = .Values.permanent }}
{{- end }}
{{- $redirectScheme := merge $redirectScheme (dict "scheme" $scheme) }}
{{- $redirectScheme := merge $redirectScheme (dict "permanent" $permanent) }}
{{- $spec := dict "redirectScheme" $redirectScheme }}
{{- toYaml $spec }}
{{- end }}
# https://doc.traefik.io/traefik/middlewares/overview/
{{- define "common.traefik.middleware" }}
apiVersion: {{ .Values.apiVersion | default "traefik.io/v1alpha1" }}
kind: Middleware
metadata:
name: {{ .Values.name | default "middleware" }}
{{- with .Values.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
labels:
{{- include "common.variables.labels" . | nindent 4 }}
spec:
{{- .spec | default .Values.spec | toYaml | nindent 2 }}
---
{{- end }}
# https://doc.traefik.io/traefik/middlewares/overview/
{{- define "common.traefik.middlewares.redirectscheme" }}
{{ include "common.traefik.middleware" (merge $ (dict "spec" (include "common.traefik.middlewares.redirectscheme.variables.spec" . | fromYaml))) }}
---
{{- end }}
{{- if .Values.redirectscheme }}
{{ include "common.traefik.middlewares.redirectscheme" (dict "Values" .Values.redirectscheme "Chart" .Chart "Release" .Release) }}
{{- end }}
...@@ -86,3 +86,7 @@ ingressroutetcp: # All options: https://doc.traefik.io/traefik/routing/providers ...@@ -86,3 +86,7 @@ ingressroutetcp: # All options: https://doc.traefik.io/traefik/routing/providers
services: services:
- name: example-service - name: example-service
port: 8080 port: 8080
redirectscheme:
permanent: true # default value
scheme: https # default value
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment