timoth-y/kicksware-api

View on GitHub
services/orders/orders-chart/templates/ingress.yaml

Summary

Maintainability
Test Coverage
{{- if .Values.ingress.enabled -}}
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: {{ template "chart.fullname" . }}{{- if .Values.ingress.tls.enabled }}.secure{{- end }}
  labels:
  {{- include "chart.labels" . | nindent 4 }}
spec:
  entryPoints:
  {{- toYaml .Values.ingress.entrypoints | nindent 4 }}
  routes:
    {{- range .Values.ingress.routes }}
    - match: Host(`{{ .host }}`) && PathPrefix(`{{ .paths | join "`) || PathPrefix(`" }}`)
      kind: Rule
      services:
        {{- range .services }}
        - name: {{ .name }}
          port: {{ .port }}
          scheme: {{ .scheme }}
      {{- end }}
      {{- with .middlewares }}
      middlewares:
      {{- toYaml . | nindent 8 }}
  {{- end }}
  {{- end }}
  {{- if .Values.ingress.tls.enabled }}
  tls:
    certResolver: {{ .Values.ingress.tls.certResolver }}
    secretName: {{ .Values.ingress.tls.secretName }}
  {{- end }}
---
  {{- if .Values.ingress.tls.enabled }}
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: {{ template "chart.fullname" . }}
  labels:
  {{- include "chart.labels" . | nindent 4 }}
spec:
  entryPoints:
    - web
  routes:
    {{- range .Values.ingress.routes }}
    {{- if not .grpc }}
    - match: Host(`{{ .host }}`) && PathPrefix(`{{ .paths | join "`) || PathPrefix(`" }}`)
      kind: Rule
      services:
        {{- range .services }}
        - name: {{ .name }}
          port: {{ .port }}
          scheme: {{ .scheme }}
        {{- end }}
      middlewares:
        - name: https-redirect
          namespace: infra
        {{- with .middlewares }}
      {{- toYaml . | nindent 8 }}
    {{- end }}
  {{- end }}
  {{- end }}
---
  {{- end }}
  {{- end }}