54 lines
1.3 KiB
YAML
54 lines
1.3 KiB
YAML
apiVersion: networking.k8s.io/v1
|
|
kind: Ingress
|
|
metadata:
|
|
name: {{.ObjectMeta.Name}}-ingress
|
|
namespace: {{.ObjectMeta.Namespace}}
|
|
labels:
|
|
app: {{.ObjectMeta.Name}}
|
|
devstar-resource-type: devstar-application
|
|
app.kubernetes.io/name: {{.ObjectMeta.Name}}
|
|
app.kubernetes.io/managed-by: devstar-operator
|
|
{{- if .Spec.Ingress.Annotations}}
|
|
annotations:
|
|
{{- range $key, $value := .Spec.Ingress.Annotations}}
|
|
{{$key}}: "{{$value}}"
|
|
{{- end}}
|
|
{{- end}}
|
|
spec:
|
|
{{- if .Spec.Ingress.IngressClassName}}
|
|
ingressClassName: {{.Spec.Ingress.IngressClassName}}
|
|
{{- end}}
|
|
|
|
{{- if .Spec.Ingress.TLS}}
|
|
tls:
|
|
{{- range .Spec.Ingress.TLS}}
|
|
- {{- if .Hosts}}
|
|
hosts:
|
|
{{- range .Hosts}}
|
|
- {{.}}
|
|
{{- end}}
|
|
{{- else}}
|
|
hosts:
|
|
- {{$.Spec.Ingress.Host}}
|
|
{{- end}}
|
|
{{- if .SecretName}}
|
|
secretName: {{.SecretName}}
|
|
{{- end}}
|
|
{{- end}}
|
|
{{- end}}
|
|
|
|
rules:
|
|
- host: {{.Spec.Ingress.Host}}
|
|
http:
|
|
paths:
|
|
- path: {{.Spec.Ingress.Path | default "/"}}
|
|
pathType: {{.Spec.Ingress.PathType | default "Prefix"}}
|
|
backend:
|
|
service:
|
|
name: {{.ObjectMeta.Name}}-svc
|
|
port:
|
|
{{- if .Spec.Template.Ports}}
|
|
number: {{(index .Spec.Template.Ports 0).Port}}
|
|
{{- else}}
|
|
number: 80
|
|
{{- end}} |