apiVersion: {{ include "deploymentversion" . }}
kind: Deployment
metadata:
  name: aws-lb-readvertiser
  namespace: {{ .Release.Namespace }}
  labels:
    garden.sapcloud.io/role: controlplane
    app: aws-lb-readvertiser
spec:
  revisionHistoryLimit: 0
  replicas: {{ .Values.replicas }}
  selector:
    matchLabels:
      app: aws-lb-readvertiser
  template:
    metadata:
      labels:
        garden.sapcloud.io/role: controlplane
        app: aws-lb-readvertiser
        networking.gardener.cloud/to-dns: allowed
        networking.gardener.cloud/to-shoot-apiserver: allowed
        networking.gardener.cloud/to-public-networks: allowed
{{- if .Values.podAnnotations }}
      annotations:
{{ toYaml .Values.podAnnotations | indent 8 }}
{{- end }}
    spec:
      tolerations:
      - effect: NoExecute
        operator: Exists
      containers:
      - name: aws-lb-readvertiser
        image: {{ index .Values.images "aws-lb-readvertiser" }}
        imagePullPolicy: IfNotPresent
        args:
        - --kubeconfig=/var/lib/aws-lb-readvertiser/kubeconfig
        - --elb-dns-name={{ .Values.domain }}
        - --refresh-period=5
        resources:
          requests:
            cpu: 20m
            memory: 20Mi
          limits:
            cpu: 40m
            memory: 40Mi
        volumeMounts:
        - name: aws-lb-readvertiser
          mountPath: /var/lib/aws-lb-readvertiser
      volumes:
      - name: aws-lb-readvertiser
        secret:
          secretName: aws-lb-readvertiser
