apiVersion: apps/v1
kind: Deployment
metadata:
  name: {{ .Release.Name }}-gerrit-slave-deployment
  labels:
    app: gerrit-slave
    chart: {{ template "gerrit-slave.chart" . }}
    heritage: {{ .Release.Service }}
    release: {{ .Release.Name }}
spec:
  replicas: {{ .Values.gerritSlave.replicas | default 1 }}
  strategy:
    rollingUpdate:
      maxSurge: {{ .Values.gerritSlave.maxSurge }}
      maxUnavailable: {{ .Values.gerritSlave.maxUnavailable }}
  selector:
    matchLabels:
      app: gerrit-slave
  template:
    metadata:
      labels:
        app: gerrit-slave
    spec:
      securityContext:
        fsGroup: 100
      {{ if .Values.images.registry.ImagePullSecret.name -}}
      imagePullSecrets:
      - name: {{ .Values.images.registry.ImagePullSecret.name }}
      {{- end }}
      initContainers:
      - name: site-cleanup
        image: busybox
        securityContext:
          runAsUser: 1000
          runAsGroup: 100
        command:
        - sh
        - -c
        args:
        - |
          # Remove directories that should be mounted rather than exist with the
          # rest of the site
          [ ! -L /var/gerrit/git ] && rm -rf /var/gerrit/git
          rm -f /var/gerrit/logs/gerrit.pid
        volumeMounts:
        - name: gerrit-site
          mountPath: "/var/gerrit"
      {{ if not .Values.gerritSlave.initializeTestSite.enabled -}}
      # Initialize the volume containing the whole Gerrit-site with defaults
      # Not needed, when running in test mode, since then the configured site will
      # be initialized
      - name: populate-gerrit-site-volume
        image: {{ template "registry" . }}{{ .Values.gerritSlave.images.gerritInit }}:{{ .Values.images.version }}
        imagePullPolicy: {{ .Values.images.imagePullPolicy }}
        command:
        - /bin/bash
        - -ce
        args:
        - |
          /var/tools/gerrit_init.py \
            -s /var/gerrit \
            -p singleusergroup

          # The git repositories will be mounted from a volume
          [ -L /var/gerrit/git ] || rm -rf /var/gerrit/git
        volumeMounts:
        - name: gerrit-site
          mountPath: "/var/gerrit"
      {{- end }}
      # If configured, run initialization taking the given Gerrit configuration
      # and persisted volumes into account.
      - name: gerrit-init
        image: {{ template "registry" . }}{{ .Values.gerritSlave.images.gerritInit }}:{{ .Values.images.version }}
        imagePullPolicy: {{ .Values.images.imagePullPolicy }}
        command:
        - /bin/bash
        - -ce
        args:
        - |
          symlink_config_to_site(){
            {{ if .Values.gerritSlave.keystore -}}
            ln -s /var/config/keystore /var/gerrit/etc/keystore
            {{- end }}
            ln -sf /var/config/gerrit.config /var/gerrit/etc/gerrit.config
            ln -sf /var/config/secure.config /var/gerrit/etc/secure.config
          }

          mkdir -p /var/gerrit/etc
          symlink_config_to_site

          if [ ! -d /var/gerrit/git ]; then
            ln -sf /var/mnt/git /var/gerrit/
          fi

          {{ if .Values.gerritSlave.initializeTestSite.enabled -}}
          /var/tools/gerrit_init.py \
            -s /var/gerrit \
            -p singleusergroup

          symlink_config_to_site
          {{- end }}

          /var/tools/validate_notedb.py -s /var/gerrit
        volumeMounts:
        - name: gerrit-site
          mountPath: "/var/gerrit"
        - name: git-filesystem
          mountPath: "/var/mnt/git"
        - name: gerrit-config
          mountPath: "/var/config/gerrit.config"
          subPath: gerrit.config
        - name: gerrit-slave-secure-config
          mountPath: "/var/config/secure.config"
          subPath: secure.config
        {{ if .Values.gerritSlave.keystore -}}
        - name: gerrit-slave-secure-config
          mountPath: "/var/config/keystore"
          subPath: keystore
        {{- end }}
      containers:
      - name: gerrit-slave
        image: {{ template "registry" . }}{{ .Values.gerritSlave.images.gerritSlave }}:{{ .Values.images.version }}
        imagePullPolicy: {{ .Values.images.imagePullPolicy }}
        ports:
        - containerPort: 8080
        volumeMounts:
        - name: gerrit-site
          mountPath: "/var/gerrit"
        - name: git-filesystem
          mountPath: "/var/mnt/git"
        - name: gerrit-config
          mountPath: "/var/config/gerrit.config"
          subPath: gerrit.config
        - name: gerrit-slave-secure-config
          mountPath: "/var/config/secure.config"
          subPath: secure.config
        {{ if .Values.gerritSlave.keystore -}}
        - name: gerrit-slave-secure-config
          mountPath: "/var/config/keystore"
          subPath: keystore
        {{- end }}
        resources:
{{ toYaml .Values.gerritSlave.resources | indent 10 }}
      volumes:
      - name: gerrit-site
        {{ if .Values.gerritSlave.persistence.enabled -}}
        persistentVolumeClaim:
          claimName: {{ .Release.Name }}-gerrit-slave-pvc
        {{ else -}}
        emptyDir: {}
        {{- end }}
      - name: git-filesystem
        persistentVolumeClaim:
          claimName: {{ .Release.Name }}-git-filesystem-pvc
      - name: gerrit-config
        configMap:
          name: {{ .Release.Name }}-gerrit-slave-configmap
      - name: gerrit-slave-secure-config
        secret:
          secretName: {{ .Release.Name }}-gerrit-slave-secure-config
