apiVersion: apps/v1 kind: StatefulSet metadata: name: rabbitmq labels: {{- include "onelab.labels" . | nindent 4 }} annotations: argocd.argoproj.io/sync-wave: {{ .Values.syncWaves.statefulDeps | quote }} spec: replicas: 1 serviceName: rabbitmq selector: matchLabels: app.kubernetes.io/component: rabbitmq app.kubernetes.io/name: {{ include "onelab.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} template: metadata: labels: app.kubernetes.io/component: rabbitmq app.kubernetes.io/name: {{ include "onelab.name" . }} app.kubernetes.io/instance: {{ .Release.Name }} spec: hostname: onelab {{- with .Values.imagePullSecrets }} imagePullSecrets: {{- toYaml . | nindent 8 }} {{- end }} containers: - name: rabbitmq image: {{ printf "%s/%s:%s" .Values.images.registry .Values.images.rabbitmq .Values.images.rabbitmqTag | quote }} ports: - containerPort: 5671 name: amqps volumeMounts: - name: rabbit-data mountPath: /var/lib/rabbitmq/mnesia - name: rabbit-config mountPath: /etc/rabbitmq/rabbitmq.conf subPath: rabbit.conf - name: rabbit-config mountPath: /etc/rabbitmq/advanced.conf subPath: advanced.conf - name: rabbit-config mountPath: /etc/rabbitmq/enabled_plugins subPath: enable_plugins - name: rabbit-config mountPath: /opt/definitions.json subPath: definitions.json - name: rabbit-tls mountPath: /etc/rabbitmq/ssl/rabbit.crt subPath: rabbit.crt - name: rabbit-tls mountPath: /etc/rabbitmq/ssl/rabbit.key subPath: rabbit.key - name: rabbit-tls mountPath: /etc/rabbitmq/ssl/rabbit.fullchain.pem subPath: rabbit.fullchain.pem {{- with .Values.rabbitmq.resources }} resources: {{- toYaml . | nindent 12 }} {{- end }} volumes: - name: rabbit-config configMap: name: onelab-rabbit-config - name: rabbit-tls secret: secretName: {{ .Values.rabbitmq.tls.secretName }} volumeClaimTemplates: - metadata: name: rabbit-data spec: accessModes: ["ReadWriteOnce"] {{- if .Values.persistence.storageClass }} storageClassName: {{ .Values.persistence.storageClass | quote }} {{- end }} resources: requests: storage: {{ .Values.persistence.rabbitmq.size | quote }}