fix(atlantis): Setup Redis Operator for staging

This commit is contained in:
2025-11-13 10:06:40 +01:00
parent d8c4cd045c
commit c2b6ecddba
5 changed files with 32 additions and 20 deletions
+6 -12
View File
@@ -8,13 +8,15 @@ metadata:
linkerd.io/inject: disabled linkerd.io/inject: disabled
labels: labels:
app.kubernetes.io/created-by: dragonfly-operator app.kubernetes.io/created-by: dragonfly-operator
app.kubernetes.io/instance: dragonfly
{{- include "Atlantis.labels" . | nindent 4 }} {{- include "Atlantis.labels" . | nindent 4 }}
spec: spec:
args: args:
- --dbfilename=dump # Static filename prevents disk exhaustion
- --maxmemory=$(MAX_MEMORY)Mi # Graceful memory management (90% of limit) - --maxmemory=$(MAX_MEMORY)Mi # Graceful memory management (90% of limit)
- --proactor_threads=1 # Auto-detect CPU cores (optimal threading) - --proactor_threads=1 # Auto-detect CPU cores (optimal threading)
- --cluster_mode=emulated - --cluster_mode=emulated
- --logtostderr
- --save_schedule= # Disable continuous saves (cron snapshots only)
env: env:
- name: MAX_MEMORY - name: MAX_MEMORY
valueFrom: valueFrom:
@@ -24,19 +26,14 @@ spec:
replicas: {{ .Values.redis.replicas | default "1" }} replicas: {{ .Values.redis.replicas | default "1" }}
resources: resources:
requests: requests:
cpu: 150m cpu: {{ .Values.redis.resources.cpu | default "150m" }}
memory: {{ .Values.redis.resources.memory | default "256Mi"}}
limits: limits:
memory: 256Mi memory: {{ .Values.redis.resources.memory | default "256Mi"}}
authentication: authentication:
passwordFromSecret: passwordFromSecret:
name: {{ .Values.redis.secret.name | quote }} name: {{ .Values.redis.secret.name | quote }}
key: {{ .Values.redis.secret.key | quote }} key: {{ .Values.redis.secret.key | quote }}
metrics:
enabled: {{ .Values.redis.metrics.enabled | default false }}
port: 6379
storage:
requests:
storage: {{ .Values.redis.size | default "1Gi" }}
{{- if .Values.redis.backup.enabled }} {{- if .Values.redis.backup.enabled }}
snapshot: snapshot:
dir: /data # Change to s3://redis/prod-atlantis-redis dir: /data # Change to s3://redis/prod-atlantis-redis
@@ -49,7 +46,4 @@ spec:
requests: requests:
storage: {{ .Values.redis.size | default "1Gi" }} storage: {{ .Values.redis.size | default "1Gi" }}
{{- end }} {{- end }}
podSecurityContext:
runAsUser: 1000
fsGroup: 1000
{{- end}} {{- end}}
+6 -3
View File
@@ -67,19 +67,22 @@ ingress:
- hosts: - hosts:
- atlantis.srv.oceanbox.io - atlantis.srv.oceanbox.io
secretName: atlantis-tls secretName: atlantis-tls
persistence: persistence:
enabled: false enabled: false
size: 1G size: 1G
storageClass: "" storageClass: ""
accessMode: ReadWriteOnce accessMode: ReadWriteOnce
redis: redis:
enabled: false enabled: false
instances: 1 instances: 1
metrics: # metrics:
enabled: false # enabled: false
backup: backup:
enabled: false enabled: false
size: 1Gi size: 5Gi
cluster: cluster:
enabled: true enabled: true
instances: 1 instances: 1
-3
View File
@@ -34,9 +34,6 @@ spec:
passwordFromSecret: passwordFromSecret:
name: {{ .Values.redis.secret.name | quote }} name: {{ .Values.redis.secret.name | quote }}
key: {{ .Values.redis.secret.key | quote }} key: {{ .Values.redis.secret.key | quote }}
# metrics:
# enabled: {{ .Values.redis.metrics.enabled | default false }}
# port: 6379
{{- if .Values.redis.backup.enabled }} {{- if .Values.redis.backup.enabled }}
snapshot: snapshot:
dir: /data # Change to s3://redis/prod-atlantis-redis dir: /data # Change to s3://redis/prod-atlantis-redis
+2 -2
View File
@@ -74,8 +74,8 @@ persistence:
redis: redis:
enabled: false enabled: false
instances: 1 instances: 1
metrics: # metrics:
enabled: false # enabled: false
backup: backup:
enabled: false enabled: false
size: 1Gi size: 1Gi
@@ -1,8 +1,11 @@
replicaCount: 1 replicaCount: 1
image: image:
tag: f8940c92-debug tag: f8940c92-debug
podAnnotations: podAnnotations:
dapr.io/app-id: "staging-atlantis" dapr.io/app-id: "staging-atlantis"
env: env:
- name: APP_NAMESPACE - name: APP_NAMESPACE
value: staging-atlantis value: staging-atlantis
@@ -38,6 +41,7 @@ env:
secretKeyRef: secretKeyRef:
name: dapr-api-token name: dapr-api-token
key: token key: token
ingress: ingress:
enabled: true enabled: true
annotations: annotations:
@@ -88,6 +92,7 @@ ingress:
- atlantis.beta.oceanbox.io - atlantis.beta.oceanbox.io
- atlas.oceanbox.io - atlas.oceanbox.io
secretName: staging-atlantis-tls secretName: staging-atlantis-tls
cluster: cluster:
instances: 1 instances: 1
backup: backup:
@@ -97,6 +102,7 @@ cluster:
source: source:
db: prod-atlantis-db db: prod-atlantis-db
namespace: prod-atlantis namespace: prod-atlantis
resources: resources:
limits: limits:
cpu: 250m cpu: 250m
@@ -104,3 +110,15 @@ resources:
requests: requests:
cpu: 250m cpu: 250m
memory: 1Gi memory: 1Gi
redis:
enabled: true
size: 2Gi
secret:
name: staging-atlantis-redis
key: redis-password
backup:
enabled: true
resources:
cpu: 150m
memory: 256Mi