| apiVersion: apps/v1 |
| kind: Deployment |
| metadata: |
| name: {{ .Release.Name }}-git-backend-deployment |
| labels: |
| app: git-backend |
| chart: {{ template "gerrit-replica.chart" . }} |
| heritage: {{ .Release.Service }} |
| release: {{ .Release.Name }} |
| spec: |
| replicas: {{ .Values.gitBackend.replicas | default 1 }} |
| strategy: |
| rollingUpdate: |
| maxSurge: {{ .Values.gitBackend.maxSurge }} |
| maxUnavailable: {{ .Values.gitBackend.maxUnavailable }} |
| selector: |
| matchLabels: |
| app: git-backend |
| template: |
| metadata: |
| labels: |
| app: git-backend |
| chart: {{ template "gerrit-replica.chart" . }} |
| heritage: {{ .Release.Service }} |
| release: {{ .Release.Name }} |
| annotations: |
| chartRevision: "{{ .Release.Revision }}" |
| spec: |
| securityContext: |
| fsGroup: 100 |
| {{ if .Values.images.registry.ImagePullSecret.name -}} |
| imagePullSecrets: |
| - name: {{ .Values.images.registry.ImagePullSecret.name }} |
| {{- end }} |
| containers: |
| - name: apache-git-http-backend |
| imagePullPolicy: {{ .Values.images.imagePullPolicy }} |
| image: {{ template "registry" . }}{{ .Values.gitBackend.image }}:{{ .Values.images.version }} |
| env: |
| {{ if eq .Values.gitBackend.service.https.enabled false -}} |
| - name: DISABLE_HTTPS |
| value: "true" |
| {{- end }} |
| {{ if eq .Values.gitBackend.service.http.enabled false -}} |
| - name: DISABLE_HTTP |
| value: "true" |
| {{- end }} |
| ports: |
| - containerPort: 80 |
| - containerPort: 443 |
| resources: |
| {{ toYaml .Values.gitBackend.resources | indent 10 }} |
| volumeMounts: |
| - name: git-filesystem |
| mountPath: "/var/gerrit/git" |
| {{- if .Values.gitRepositoryStorage.nfs.enabled }} |
| - name: nfs-config |
| mountPath: "/etc/idmapd.conf" |
| subPath: idmapd.conf |
| {{- end }} |
| - name: git-backend-secret |
| readOnly: true |
| subPath: .htpasswd |
| mountPath: "/var/apache/credentials/.htpasswd" |
| {{ if .Values.gitBackend.service.https.enabled -}} |
| - name: git-backend-tls-secret |
| readOnly: true |
| subPath: tls.key |
| mountPath: "/var/apache/credentials/server.key" |
| - name: git-backend-tls-secret |
| readOnly: true |
| subPath: tls.crt |
| mountPath: "/var/apache/credentials/server.crt" |
| {{ end }} |
| - name: apache-logs |
| mountPath: "/var/log/apache2" |
| volumes: |
| - name: git-filesystem |
| persistentVolumeClaim: |
| {{- if .Values.gitRepositoryStorage.externalPVC.use }} |
| claimName: {{ .Values.gitRepositoryStorage.externalPVC.name }} |
| {{- else }} |
| claimName: {{ .Release.Name }}-git-filesystem-pvc |
| {{- end }} |
| - name: git-backend-secret |
| secret: |
| secretName: {{ .Release.Name }}-git-backend-secret |
| {{ if and .Values.gitBackend.service.https.enabled -}} |
| - name: git-backend-tls-secret |
| secret: |
| {{ if .Values.gitBackend.tls.secret.create -}} |
| secretName: {{ .Release.Name }}-git-backend-tls-secret |
| {{- else }} |
| secretName: {{ .Values.gitBackend.tls.secret.name }} |
| {{- end }} |
| {{ end }} |
| - name: apache-logs |
| {{ if .Values.gitBackend.logging.persistence.enabled -}} |
| persistentVolumeClaim: |
| claimName: {{ .Release.Name }}-apache-logs-pvc |
| {{ else -}} |
| emptyDir: {} |
| {{- end }} |
| {{- if .Values.gitRepositoryStorage.nfs.enabled }} |
| - name: nfs-config |
| configMap: |
| name: {{ .Release.Name }}-nfs-configmap |
| {{- end }} |