{{- if .Values.ingress.enabled }} apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: {{ .Release.Name }}-ingress annotations: kubernetes.io/ingress.class: nginx nginx.ingress.kubernetes.io/ingress.class: nginx cert-manager.io/cluster-issuer: letsencrypt-prod nginx.ingress.kubernetes.io/ssl-redirect: "false" nginx.ingress.kubernetes.io/force-ssl-redirect: "false" {{- if ne .Values.ingress.path "/" }} nginx.ingress.kubernetes.io/rewrite-target: /$2 nginx.ingress.kubernetes.io/use-regex: "true" {{- end }} nginx.ingress.kubernetes.io/enable-cors: "true" nginx.ingress.kubernetes.io/cors-allow-origin: "*" nginx.ingress.kubernetes.io/cors-allow-methods: "GET, POST, PUT, DELETE, OPTIONS, PATCH" nginx.ingress.kubernetes.io/cors-allow-headers: "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization" nginx.ingress.kubernetes.io/proxy-body-size: "50m" nginx.ingress.kubernetes.io/proxy-read-timeout: "300" spec: ingressClassName: nginx {{- if .Values.ingress.tlsEnabled }} tls: - hosts: - {{ .Values.ingress.domain }} secretName: {{ .Release.Name }}-tls {{- end }} rules: - host: {{ .Values.ingress.domain }} http: paths: {{- if eq .Values.ingress.path "/" }} - path: / pathType: Prefix {{- else }} - path: {{ .Values.ingress.path }}(/|$)(.*) pathType: ImplementationSpecific {{- end }} backend: service: name: {{ .Release.Name }} port: number: {{ .Values.service.port }} {{- end }}