TrueChartsCatalogClone/enterprise/traefik/18.0.16/templates/middlewares/basicauth.yaml

32 lines
840 B
YAML

{{- $values := .Values }}
{{ 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" }}
namespace: tc-system
type: Opaque
stringData:
users: |
{{- range $index, $user := $users }}
{{ printf "%s" $user }}
{{- end }}
---
# Declaring the user list
apiVersion: traefik.io/v1alpha1
kind: Middleware
metadata:
name: {{ ternary (printf "%v-%v" $.Release.Name $middlewareData.name) $middlewareData.name $.Values.ingressClass.enabled }}
namespace: tc-system
spec:
basicAuth:
secret: {{ printf "%v-%v" $middlewareData.name "secret" }}
{{ end }}