feat(infrastructure): automatic deploy

This commit is contained in:
2025-10-05 20:40:40 +02:00
parent 35e2ca6a72
commit 8e1d65a078
7 changed files with 82 additions and 0 deletions

View File

@@ -33,6 +33,16 @@ spec:
secretKeyRef:
name: {{ required "Set .Values.database.secretName" .Values.database.secretName }}
key: password
- name: RABBITMQ_USERNAME
value: {{ .Values.rabbitmq.username | quote }}
- name: RABBITMQ_PASSWORD
value: {{ required "Set .Values.rabbitmq.password" .Values.rabbitmq.password | quote }}
- name: RABBITMQ_HOST
value: {{ .Values.rabbitmq.host | quote }}
- name: RABBITMQ_PORT
value: {{ .Values.rabbitmq.port | quote }}
- name: MAIL_QUEUE
value: {{ .Values.worker.mailQueueName | default "mail_queue" | quote }}
livenessProbe:
httpGet:
path: /

View File

@@ -0,0 +1,19 @@
{{- if .Values.rabbitmq.password }}
apiVersion: rabbitmq.com/v1beta1
kind: Permission
metadata:
name: {{ printf "%s-permission" (.Values.rabbitmq.username | default "demo-app") }}
namespace: {{ .Values.rabbitmq.namespace | default "rabbitmq" }}
labels:
app.kubernetes.io/managed-by: Helm
spec:
rabbitmqClusterReference:
name: {{ .Values.rabbitmq.clusterName | default "rabbitmq" }}
namespace: {{ .Values.rabbitmq.namespace | default "rabbitmq" }}
vhost: {{ .Values.rabbitmq.vhost | default "/" | quote }}
user: {{ .Values.rabbitmq.username | default "demo-app" }}
permissions:
configure: ".*"
read: ".*"
write: ".*"
{{- end }}

View File

@@ -0,0 +1,16 @@
{{- if .Values.worker.mailQueueName }}
apiVersion: rabbitmq.com/v1beta1
kind: Queue
metadata:
name: {{ .Values.worker.mailQueueName }}
namespace: {{ .Values.rabbitmq.namespace | default "rabbitmq" }}
labels:
app.kubernetes.io/managed-by: Helm
spec:
rabbitmqClusterReference:
name: {{ .Values.rabbitmq.clusterName | default "rabbitmq" }}
namespace: {{ .Values.rabbitmq.namespace | default "rabbitmq" }}
name: {{ .Values.worker.mailQueueName }}
vhost: {{ .Values.rabbitmq.vhost | default "/" | quote }}
durable: true
{{- end }}

View File

@@ -0,0 +1,11 @@
{{- if .Values.rabbitmq.password }}
apiVersion: v1
kind: Secret
metadata:
name: {{ printf "%s-user-credentials" (.Values.rabbitmq.username | default "app-user") }}
namespace: {{ .Values.rabbitmq.namespace | default "rabbitmq" }}
labels:
app.kubernetes.io/managed-by: Helm
stringData:
password: {{ .Values.rabbitmq.password | quote }}
{{- end }}

View File

@@ -0,0 +1,18 @@
{{- if .Values.rabbitmq.password }}
apiVersion: rabbitmq.com/v1beta1
kind: User
metadata:
name: {{ .Values.rabbitmq.username | default "demo-app" }}
namespace: {{ .Values.rabbitmq.namespace | default "rabbitmq" }}
labels:
app.kubernetes.io/managed-by: Helm
spec:
rabbitmqClusterReference:
name: {{ .Values.rabbitmq.clusterName | default "rabbitmq" }}
namespace: {{ .Values.rabbitmq.namespace | default "rabbitmq" }}
username: {{ .Values.rabbitmq.username | default "demo-app" }}
tags: "management"
passwordSecret:
name: {{ printf "%s-user-credentials" (.Values.rabbitmq.username | default "app-user") }}
key: password
{{- end }}

View File

@@ -35,3 +35,5 @@ spec:
value: {{ .Values.rabbitmq.host | quote }}
- name: RABBITMQ_PORT
value: {{ .Values.rabbitmq.port | quote }}
- name: MAIL_QUEUE
value: {{ .Values.worker.mailQueueName | default "mail_queue" | quote }}

View File

@@ -26,6 +26,8 @@ app:
worker:
name: app-demo-worker
replicas: 1
# Queue name for Celery worker and for CRD Queue
mailQueueName: "mail_queue"
service:
port: 80
@@ -35,6 +37,10 @@ rabbitmq:
port: "5672"
username: demo-app
password: ""
# Existing cluster identification for Messaging Topology CRDs
namespace: rabbitmq
clusterName: rabbitmq
vhost: "/"
mariadb:
name: app-demo-database