apiVersion: apps/v1 kind: StatefulSet metadata: name: {{ include "oxicloud.fullname" . }} labels: {{- include "oxicloud.labels" . | nindent 4 }} spec: serviceName: {{ include "oxicloud.fullname" . }}-headless replicas: {{ .Values.oxicloud.replicaCount }} selector: matchLabels: {{- include "oxicloud.selectorLabels" . | nindent 6 }} template: metadata: labels: {{- include "oxicloud.selectorLabels" . | nindent 8 }} spec: containers: - name: oxicloud image: "{{ .Values.oxicloud.image.repository }}:{{ .Values.oxicloud.image.tag | default .Chart.AppVersion }}" imagePullPolicy: {{ .Values.oxicloud.image.pullPolicy }} ports: - name: http containerPort: {{ .Values.oxicloud.config.server.port }} protocol: TCP envFrom: - configMapRef: name: {{ include "oxicloud.fullname" . }}-config - secretRef: name: {{ if .Values.oxicloud.secret.existingSecretName }}{{ .Values.oxicloud.secret.existingSecretName }}{{ else }}{{ include "oxicloud.fullname" . }}-secret{{ end }} volumeMounts: - name: oxicloud-data mountPath: /app/storage {{- with .Values.oxicloud.resources }} resources: {{- toYaml . | nindent 12 }} {{- end }} {{- with .Values.oxicloud.livenessProbe }} livenessProbe: {{- toYaml . | nindent 12 }} {{- end }} {{- with .Values.oxicloud.readinessProbe }} readinessProbe: {{- toYaml . | nindent 12 }} {{- end }} {{- if not .Values.oxicloud.persistence.enabled }} volumes: - name: oxicloud-data emptyDir: {} {{- end }} {{- with .Values.oxicloud.nodeSelector }} nodeSelector: {{- toYaml . | nindent 8 }} {{- end }} {{- with .Values.oxicloud.tolerations }} tolerations: {{- toYaml . | nindent 8 }} {{- end }} {{- with .Values.oxicloud.affinity }} affinity: {{- toYaml . | nindent 8 }} {{- end }} {{- if .Values.oxicloud.persistence.enabled }} volumeClaimTemplates: - metadata: name: oxicloud-data spec: accessModes: - {{ .Values.oxicloud.persistence.accessMode }} {{- if .Values.oxicloud.persistence.storageClass }} storageClassName: {{ .Values.oxicloud.persistence.storageClass }} {{- end }} resources: requests: storage: {{ .Values.oxicloud.persistence.size }} {{- end }}