{{- $functionNs := default .Release.Namespace .Values.functionNamespace }}
{{- if .Values.ingressOperator.create }}
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: {{ template "openfaas.name" . }}
    chart: {{ .Chart.Name }}-{{ .Chart.Version }}
    component: ingress-operator
    heritage: {{ .Release.Service }}
    release: {{ .Release.Name }}
  name: ingress-operator
  namespace: {{ .Release.Namespace | quote }}
spec:
  replicas: {{ .Values.ingressOperator.replicas }}
  selector:
    matchLabels:
      app: ingress-operator
  template:
    metadata:
      annotations:
        prometheus.io.scrape: "true"
      labels:
        app: ingress-operator
    spec:
      serviceAccountName: ingress-operator
      containers:
      - name: operator
        resources:
          {{- .Values.ingressOperator.resources | toYaml | nindent 10 }}
        image: {{ .Values.ingressOperator.image }}
        imagePullPolicy: {{ .Values.openfaasImagePullPolicy }}
        command:
          - ./ingress-operator
          - -logtostderr
        env:
        - name: function_namespace
          value: {{ $functionNs | quote }}
        - name: ingress_namespace
          value: {{ .Release.Namespace | quote }}
{{- end }}