Change Redis to be a StatefulSet#1368
Draft
benbz wants to merge 1 commit into
Draft
Conversation
dyff of changes in rendered templates of CI manifestsFull contents of manifests and dyffs are available in https://github.com/element-hq/ess-helm/actions/runs/26820586793/artifacts/7358033404 all-enabled-values.yaml@@ Deployment/ess-ci/release-name-redis @@
- ---
- # Source: matrix-stack/templates/redis/redis_deployment.yaml
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- labels:
- helm.sh/chart: "matrix-stack-26.5.2-dev"
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- name: release-name-redis
- namespace: ess-ci
- spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- strategy:
- type: RollingUpdate
- rollingUpdate:
- maxSurge: 2
- maxUnavailable: 0
- template:
- metadata:
- labels:
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- spec:
- automountServiceAccountToken: false
- serviceAccountName: release-name-redis
- securityContext:
- fsGroup: 10002
- runAsGroup: 10002
- runAsNonRoot: true
- runAsUser: 10002
- seccompProfile:
- type: RuntimeDefault
- supplementalGroups: []
- restartPolicy: Always
- topologySpreadConstraints:
- - labelSelector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- matchLabelKeys:
- - pod-template-hash
- maxSkew: 1
- topologyKey: kubernetes.io/hostname
- whenUnsatisfiable: ScheduleAnyway
- containers:
- - name: redis
- args:
- - "/config/redis.conf"
- image: "docker.io/library/redis:7.4-alpine"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - containerPort: 6379
- name: redis
- protocol: TCP
- startupProbe:
- failureThreshold: 5
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- exec:
- command:
- - redis-cli
- - ping
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 50m
- memory: 50Mi
- volumeMounts:
- - mountPath: /config/redis.conf
- name: config
- readOnly: true
- subPath: redis.conf
- - name: redis-exporter
- image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - name: metrics
- containerPort: 9121
- startupProbe:
- failureThreshold: 20
- periodSeconds: 2
- successThreshold: 1
- timeoutSeconds: 1
- httpGet:
- path: /metrics
- port: metrics
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 6
- successThreshold: 1
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 2
- successThreshold: 2
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 10m
- memory: 10Mi
- volumes:
- - configMap:
- name: "release-name-redis"
- defaultMode: 420
- name: config
@@ Service/ess-ci/release-name-redis - spec @@
+ clusterIP: None
@@ StatefulSet/ess-ci/release-name-redis @@
+ ---
+ # Source: matrix-stack/templates/redis/redis_statefulset.yaml
+ apiVersion: apps/v1
+ kind: StatefulSet
+ metadata:
+ labels:
+ helm.sh/chart: "matrix-stack-26.5.2-dev"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ name: release-name-redis
+ namespace: ess-ci
+ spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ serviceName: release-name-redis
+ updateStrategy:
+ type: RollingUpdate
+ # Without this CrashLoopBackoffs due to config failures block pod recreation
+ podManagementPolicy: Parallel
+ template:
+ metadata:
+ labels:
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ spec:
+ automountServiceAccountToken: false
+ serviceAccountName: release-name-redis
+ securityContext:
+ fsGroup: 10002
+ runAsGroup: 10002
+ runAsNonRoot: true
+ runAsUser: 10002
+ seccompProfile:
+ type: RuntimeDefault
+ supplementalGroups: []
+ restartPolicy: Always
+ topologySpreadConstraints:
+ - labelSelector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ matchLabelKeys: []
+ maxSkew: 1
+ topologyKey: kubernetes.io/hostname
+ whenUnsatisfiable: ScheduleAnyway
+ containers:
+ - name: redis
+ args:
+ - "/config/redis.conf"
+ image: "docker.io/library/redis:7.4-alpine"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - containerPort: 6379
+ name: redis
+ protocol: TCP
+ startupProbe:
+ failureThreshold: 5
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ exec:
+ command:
+ - redis-cli
+ - ping
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 50m
+ memory: 50Mi
+ volumeMounts:
+ - mountPath: /config/redis.conf
+ name: config
+ readOnly: true
+ subPath: redis.conf
+ - name: redis-exporter
+ image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - name: metrics
+ containerPort: 9121
+ startupProbe:
+ failureThreshold: 20
+ periodSeconds: 2
+ successThreshold: 1
+ timeoutSeconds: 1
+ httpGet:
+ path: /metrics
+ port: metrics
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 6
+ successThreshold: 1
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 2
+ successThreshold: 2
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 10m
+ memory: 10Mi
+ volumes:
+ - configMap:
+ name: "release-name-redis"
+ defaultMode: 420
+ name: config
hookshot-checkov-values.yaml@@ Deployment/ess-ci/release-name-redis @@
- ---
- # Source: matrix-stack/templates/redis/redis_deployment.yaml
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- annotations:
- checkov.io/skip1: CKV_K8S_11=We deliberately don't set CPU limits. Pod is BestEffort not Guaranteed
- checkov.io/skip2: CKV_K8S_43=No digests
- checkov.io/skip3: CKV2_K8S_6=No network policy yet
- labels:
- helm.sh/chart: "matrix-stack-26.5.2-dev"
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- name: release-name-redis
- namespace: ess-ci
- spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- strategy:
- type: RollingUpdate
- rollingUpdate:
- maxSurge: 2
- maxUnavailable: 0
- template:
- metadata:
- labels:
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- annotations:
- checkov.io/skip1: CKV_K8S_11=We deliberately don't set CPU limits. Pod is BestEffort not Guaranteed
- checkov.io/skip2: CKV_K8S_43=No digests
- checkov.io/skip3: CKV2_K8S_6=No network policy yet
- spec:
- automountServiceAccountToken: false
- serviceAccountName: release-name-redis
- securityContext:
- fsGroup: 10002
- runAsGroup: 10002
- runAsNonRoot: true
- runAsUser: 10002
- seccompProfile:
- type: RuntimeDefault
- supplementalGroups: []
- restartPolicy: Always
- topologySpreadConstraints:
- - labelSelector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- matchLabelKeys:
- - pod-template-hash
- maxSkew: 1
- topologyKey: kubernetes.io/hostname
- whenUnsatisfiable: ScheduleAnyway
- containers:
- - name: redis
- args:
- - "/config/redis.conf"
- image: "docker.io/library/redis:7.4-alpine"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - containerPort: 6379
- name: redis
- protocol: TCP
- startupProbe:
- failureThreshold: 5
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- exec:
- command:
- - redis-cli
- - ping
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 50m
- memory: 50Mi
- volumeMounts:
- - mountPath: /config/redis.conf
- name: config
- readOnly: true
- subPath: redis.conf
- - name: redis-exporter
- image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - name: metrics
- containerPort: 9121
- startupProbe:
- failureThreshold: 20
- periodSeconds: 2
- successThreshold: 1
- timeoutSeconds: 1
- httpGet:
- path: /metrics
- port: metrics
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 6
- successThreshold: 1
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 2
- successThreshold: 2
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 10m
- memory: 10Mi
- volumes:
- - configMap:
- name: "release-name-redis"
- defaultMode: 420
- name: config
@@ Service/ess-ci/release-name-redis - spec @@
+ clusterIP: None
@@ StatefulSet/ess-ci/release-name-redis @@
+ ---
+ # Source: matrix-stack/templates/redis/redis_statefulset.yaml
+ apiVersion: apps/v1
+ kind: StatefulSet
+ metadata:
+ annotations:
+ checkov.io/skip1: CKV_K8S_11=We deliberately don't set CPU limits. Pod is BestEffort not Guaranteed
+ checkov.io/skip2: CKV_K8S_43=No digests
+ checkov.io/skip3: CKV2_K8S_6=No network policy yet
+ labels:
+ helm.sh/chart: "matrix-stack-26.5.2-dev"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ name: release-name-redis
+ namespace: ess-ci
+ spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ serviceName: release-name-redis
+ updateStrategy:
+ type: RollingUpdate
+ # Without this CrashLoopBackoffs due to config failures block pod recreation
+ podManagementPolicy: Parallel
+ template:
+ metadata:
+ labels:
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ annotations:
+ checkov.io/skip1: CKV_K8S_11=We deliberately don't set CPU limits. Pod is BestEffort not Guaranteed
+ checkov.io/skip2: CKV_K8S_43=No digests
+ checkov.io/skip3: CKV2_K8S_6=No network policy yet
+ spec:
+ automountServiceAccountToken: false
+ serviceAccountName: release-name-redis
+ securityContext:
+ fsGroup: 10002
+ runAsGroup: 10002
+ runAsNonRoot: true
+ runAsUser: 10002
+ seccompProfile:
+ type: RuntimeDefault
+ supplementalGroups: []
+ restartPolicy: Always
+ topologySpreadConstraints:
+ - labelSelector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ matchLabelKeys: []
+ maxSkew: 1
+ topologyKey: kubernetes.io/hostname
+ whenUnsatisfiable: ScheduleAnyway
+ containers:
+ - name: redis
+ args:
+ - "/config/redis.conf"
+ image: "docker.io/library/redis:7.4-alpine"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - containerPort: 6379
+ name: redis
+ protocol: TCP
+ startupProbe:
+ failureThreshold: 5
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ exec:
+ command:
+ - redis-cli
+ - ping
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 50m
+ memory: 50Mi
+ volumeMounts:
+ - mountPath: /config/redis.conf
+ name: config
+ readOnly: true
+ subPath: redis.conf
+ - name: redis-exporter
+ image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - name: metrics
+ containerPort: 9121
+ startupProbe:
+ failureThreshold: 20
+ periodSeconds: 2
+ successThreshold: 1
+ timeoutSeconds: 1
+ httpGet:
+ path: /metrics
+ port: metrics
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 6
+ successThreshold: 1
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 2
+ successThreshold: 2
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 10m
+ memory: 10Mi
+ volumes:
+ - configMap:
+ name: "release-name-redis"
+ defaultMode: 420
+ name: config
hookshot-encryption-enabled-values.yaml@@ Deployment/ess-ci/release-name-redis @@
- ---
- # Source: matrix-stack/templates/redis/redis_deployment.yaml
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- labels:
- helm.sh/chart: "matrix-stack-26.5.2-dev"
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- name: release-name-redis
- namespace: ess-ci
- spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- strategy:
- type: RollingUpdate
- rollingUpdate:
- maxSurge: 2
- maxUnavailable: 0
- template:
- metadata:
- labels:
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- spec:
- automountServiceAccountToken: false
- serviceAccountName: release-name-redis
- securityContext:
- fsGroup: 10002
- runAsGroup: 10002
- runAsNonRoot: true
- runAsUser: 10002
- seccompProfile:
- type: RuntimeDefault
- supplementalGroups: []
- restartPolicy: Always
- topologySpreadConstraints:
- - labelSelector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- matchLabelKeys:
- - pod-template-hash
- maxSkew: 1
- topologyKey: kubernetes.io/hostname
- whenUnsatisfiable: ScheduleAnyway
- containers:
- - name: redis
- args:
- - "/config/redis.conf"
- image: "docker.io/library/redis:7.4-alpine"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - containerPort: 6379
- name: redis
- protocol: TCP
- startupProbe:
- failureThreshold: 5
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- exec:
- command:
- - redis-cli
- - ping
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 50m
- memory: 50Mi
- volumeMounts:
- - mountPath: /config/redis.conf
- name: config
- readOnly: true
- subPath: redis.conf
- - name: redis-exporter
- image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - name: metrics
- containerPort: 9121
- startupProbe:
- failureThreshold: 20
- periodSeconds: 2
- successThreshold: 1
- timeoutSeconds: 1
- httpGet:
- path: /metrics
- port: metrics
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 6
- successThreshold: 1
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 2
- successThreshold: 2
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 10m
- memory: 10Mi
- volumes:
- - configMap:
- name: "release-name-redis"
- defaultMode: 420
- name: config
@@ Service/ess-ci/release-name-redis - spec @@
+ clusterIP: None
@@ StatefulSet/ess-ci/release-name-redis @@
+ ---
+ # Source: matrix-stack/templates/redis/redis_statefulset.yaml
+ apiVersion: apps/v1
+ kind: StatefulSet
+ metadata:
+ labels:
+ helm.sh/chart: "matrix-stack-26.5.2-dev"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ name: release-name-redis
+ namespace: ess-ci
+ spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ serviceName: release-name-redis
+ updateStrategy:
+ type: RollingUpdate
+ # Without this CrashLoopBackoffs due to config failures block pod recreation
+ podManagementPolicy: Parallel
+ template:
+ metadata:
+ labels:
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ spec:
+ automountServiceAccountToken: false
+ serviceAccountName: release-name-redis
+ securityContext:
+ fsGroup: 10002
+ runAsGroup: 10002
+ runAsNonRoot: true
+ runAsUser: 10002
+ seccompProfile:
+ type: RuntimeDefault
+ supplementalGroups: []
+ restartPolicy: Always
+ topologySpreadConstraints:
+ - labelSelector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ matchLabelKeys: []
+ maxSkew: 1
+ topologyKey: kubernetes.io/hostname
+ whenUnsatisfiable: ScheduleAnyway
+ containers:
+ - name: redis
+ args:
+ - "/config/redis.conf"
+ image: "docker.io/library/redis:7.4-alpine"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - containerPort: 6379
+ name: redis
+ protocol: TCP
+ startupProbe:
+ failureThreshold: 5
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ exec:
+ command:
+ - redis-cli
+ - ping
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 50m
+ memory: 50Mi
+ volumeMounts:
+ - mountPath: /config/redis.conf
+ name: config
+ readOnly: true
+ subPath: redis.conf
+ - name: redis-exporter
+ image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - name: metrics
+ containerPort: 9121
+ startupProbe:
+ failureThreshold: 20
+ periodSeconds: 2
+ successThreshold: 1
+ timeoutSeconds: 1
+ httpGet:
+ path: /metrics
+ port: metrics
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 6
+ successThreshold: 1
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 2
+ successThreshold: 2
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 10m
+ memory: 10Mi
+ volumes:
+ - configMap:
+ name: "release-name-redis"
+ defaultMode: 420
+ name: config
hookshot-minimal-values.yaml@@ Deployment/ess-ci/release-name-redis @@
- ---
- # Source: matrix-stack/templates/redis/redis_deployment.yaml
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- labels:
- helm.sh/chart: "matrix-stack-26.5.2-dev"
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- name: release-name-redis
- namespace: ess-ci
- spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- strategy:
- type: RollingUpdate
- rollingUpdate:
- maxSurge: 2
- maxUnavailable: 0
- template:
- metadata:
- labels:
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- spec:
- automountServiceAccountToken: false
- serviceAccountName: release-name-redis
- securityContext:
- fsGroup: 10002
- runAsGroup: 10002
- runAsNonRoot: true
- runAsUser: 10002
- seccompProfile:
- type: RuntimeDefault
- supplementalGroups: []
- restartPolicy: Always
- topologySpreadConstraints:
- - labelSelector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- matchLabelKeys:
- - pod-template-hash
- maxSkew: 1
- topologyKey: kubernetes.io/hostname
- whenUnsatisfiable: ScheduleAnyway
- containers:
- - name: redis
- args:
- - "/config/redis.conf"
- image: "docker.io/library/redis:7.4-alpine"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - containerPort: 6379
- name: redis
- protocol: TCP
- startupProbe:
- failureThreshold: 5
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- exec:
- command:
- - redis-cli
- - ping
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 50m
- memory: 50Mi
- volumeMounts:
- - mountPath: /config/redis.conf
- name: config
- readOnly: true
- subPath: redis.conf
- - name: redis-exporter
- image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - name: metrics
- containerPort: 9121
- startupProbe:
- failureThreshold: 20
- periodSeconds: 2
- successThreshold: 1
- timeoutSeconds: 1
- httpGet:
- path: /metrics
- port: metrics
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 6
- successThreshold: 1
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 2
- successThreshold: 2
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 10m
- memory: 10Mi
- volumes:
- - configMap:
- name: "release-name-redis"
- defaultMode: 420
- name: config
@@ Service/ess-ci/release-name-redis - spec @@
+ clusterIP: None
@@ StatefulSet/ess-ci/release-name-redis @@
+ ---
+ # Source: matrix-stack/templates/redis/redis_statefulset.yaml
+ apiVersion: apps/v1
+ kind: StatefulSet
+ metadata:
+ labels:
+ helm.sh/chart: "matrix-stack-26.5.2-dev"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ name: release-name-redis
+ namespace: ess-ci
+ spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ serviceName: release-name-redis
+ updateStrategy:
+ type: RollingUpdate
+ # Without this CrashLoopBackoffs due to config failures block pod recreation
+ podManagementPolicy: Parallel
+ template:
+ metadata:
+ labels:
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ spec:
+ automountServiceAccountToken: false
+ serviceAccountName: release-name-redis
+ securityContext:
+ fsGroup: 10002
+ runAsGroup: 10002
+ runAsNonRoot: true
+ runAsUser: 10002
+ seccompProfile:
+ type: RuntimeDefault
+ supplementalGroups: []
+ restartPolicy: Always
+ topologySpreadConstraints:
+ - labelSelector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ matchLabelKeys: []
+ maxSkew: 1
+ topologyKey: kubernetes.io/hostname
+ whenUnsatisfiable: ScheduleAnyway
+ containers:
+ - name: redis
+ args:
+ - "/config/redis.conf"
+ image: "docker.io/library/redis:7.4-alpine"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - containerPort: 6379
+ name: redis
+ protocol: TCP
+ startupProbe:
+ failureThreshold: 5
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ exec:
+ command:
+ - redis-cli
+ - ping
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 50m
+ memory: 50Mi
+ volumeMounts:
+ - mountPath: /config/redis.conf
+ name: config
+ readOnly: true
+ subPath: redis.conf
+ - name: redis-exporter
+ image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - name: metrics
+ containerPort: 9121
+ startupProbe:
+ failureThreshold: 20
+ periodSeconds: 2
+ successThreshold: 1
+ timeoutSeconds: 1
+ httpGet:
+ path: /metrics
+ port: metrics
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 6
+ successThreshold: 1
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 2
+ successThreshold: 2
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 10m
+ memory: 10Mi
+ volumes:
+ - configMap:
+ name: "release-name-redis"
+ defaultMode: 420
+ name: config
pytest-hookshot-values.yaml@@ Deployment/ess-ci/release-name-redis @@
- ---
- # Source: matrix-stack/templates/redis/redis_deployment.yaml
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- labels:
- helm.sh/chart: "matrix-stack-26.5.2-dev"
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- name: release-name-redis
- namespace: ess-ci
- spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- strategy:
- type: RollingUpdate
- rollingUpdate:
- maxSurge: 2
- maxUnavailable: 0
- template:
- metadata:
- labels:
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- spec:
- automountServiceAccountToken: false
- serviceAccountName: release-name-redis
- securityContext:
- fsGroup: 10002
- runAsGroup: 0
- runAsNonRoot: true
- runAsUser: 10002
- seccompProfile:
- type: RuntimeDefault
- supplementalGroups: []
- restartPolicy: Always
- topologySpreadConstraints:
- - labelSelector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- matchLabelKeys:
- - pod-template-hash
- maxSkew: 1
- topologyKey: kubernetes.io/hostname
- whenUnsatisfiable: ScheduleAnyway
- containers:
- - name: redis
- args:
- - "/config/redis.conf"
- image: "docker.io/library/redis:7.4-alpine"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - containerPort: 6379
- name: redis
- protocol: TCP
- startupProbe:
- failureThreshold: 5
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- exec:
- command:
- - redis-cli
- - ping
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 50m
- memory: 50Mi
- volumeMounts:
- - mountPath: /config/redis.conf
- name: config
- readOnly: true
- subPath: redis.conf
- - name: redis-exporter
- image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - name: metrics
- containerPort: 9121
- startupProbe:
- failureThreshold: 20
- periodSeconds: 2
- successThreshold: 1
- timeoutSeconds: 1
- httpGet:
- path: /metrics
- port: metrics
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 6
- successThreshold: 1
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 2
- successThreshold: 2
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 10m
- memory: 10Mi
- volumes:
- - configMap:
- name: "release-name-redis"
- defaultMode: 420
- name: config
@@ Service/ess-ci/release-name-redis - spec @@
+ clusterIP: None
@@ StatefulSet/ess-ci/release-name-redis @@
+ ---
+ # Source: matrix-stack/templates/redis/redis_statefulset.yaml
+ apiVersion: apps/v1
+ kind: StatefulSet
+ metadata:
+ labels:
+ helm.sh/chart: "matrix-stack-26.5.2-dev"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ name: release-name-redis
+ namespace: ess-ci
+ spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ serviceName: release-name-redis
+ updateStrategy:
+ type: RollingUpdate
+ # Without this CrashLoopBackoffs due to config failures block pod recreation
+ podManagementPolicy: Parallel
+ template:
+ metadata:
+ labels:
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ spec:
+ automountServiceAccountToken: false
+ serviceAccountName: release-name-redis
+ securityContext:
+ fsGroup: 10002
+ runAsGroup: 0
+ runAsNonRoot: true
+ runAsUser: 10002
+ seccompProfile:
+ type: RuntimeDefault
+ supplementalGroups: []
+ restartPolicy: Always
+ topologySpreadConstraints:
+ - labelSelector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ matchLabelKeys: []
+ maxSkew: 1
+ topologyKey: kubernetes.io/hostname
+ whenUnsatisfiable: ScheduleAnyway
+ containers:
+ - name: redis
+ args:
+ - "/config/redis.conf"
+ image: "docker.io/library/redis:7.4-alpine"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - containerPort: 6379
+ name: redis
+ protocol: TCP
+ startupProbe:
+ failureThreshold: 5
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ exec:
+ command:
+ - redis-cli
+ - ping
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 50m
+ memory: 50Mi
+ volumeMounts:
+ - mountPath: /config/redis.conf
+ name: config
+ readOnly: true
+ subPath: redis.conf
+ - name: redis-exporter
+ image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - name: metrics
+ containerPort: 9121
+ startupProbe:
+ failureThreshold: 20
+ periodSeconds: 2
+ successThreshold: 1
+ timeoutSeconds: 1
+ httpGet:
+ path: /metrics
+ port: metrics
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 6
+ successThreshold: 1
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 2
+ successThreshold: 2
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 10m
+ memory: 10Mi
+ volumes:
+ - configMap:
+ name: "release-name-redis"
+ defaultMode: 420
+ name: config
pytest-hookshot-with-mas-values.yaml@@ Deployment/ess-ci/release-name-redis @@
- ---
- # Source: matrix-stack/templates/redis/redis_deployment.yaml
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- labels:
- helm.sh/chart: "matrix-stack-26.5.2-dev"
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- name: release-name-redis
- namespace: ess-ci
- spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- strategy:
- type: RollingUpdate
- rollingUpdate:
- maxSurge: 2
- maxUnavailable: 0
- template:
- metadata:
- labels:
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- spec:
- automountServiceAccountToken: false
- serviceAccountName: release-name-redis
- securityContext:
- fsGroup: 10002
- runAsGroup: 0
- runAsNonRoot: true
- runAsUser: 10002
- seccompProfile:
- type: RuntimeDefault
- supplementalGroups: []
- restartPolicy: Always
- topologySpreadConstraints:
- - labelSelector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- matchLabelKeys:
- - pod-template-hash
- maxSkew: 1
- topologyKey: kubernetes.io/hostname
- whenUnsatisfiable: ScheduleAnyway
- containers:
- - name: redis
- args:
- - "/config/redis.conf"
- image: "docker.io/library/redis:7.4-alpine"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - containerPort: 6379
- name: redis
- protocol: TCP
- startupProbe:
- failureThreshold: 5
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- exec:
- command:
- - redis-cli
- - ping
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 50m
- memory: 50Mi
- volumeMounts:
- - mountPath: /config/redis.conf
- name: config
- readOnly: true
- subPath: redis.conf
- - name: redis-exporter
- image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - name: metrics
- containerPort: 9121
- startupProbe:
- failureThreshold: 20
- periodSeconds: 2
- successThreshold: 1
- timeoutSeconds: 1
- httpGet:
- path: /metrics
- port: metrics
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 6
- successThreshold: 1
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 2
- successThreshold: 2
- timeoutSeconds: 2
- httpGet:
- path: /metrics
- port: metrics
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 10m
- memory: 10Mi
- volumes:
- - configMap:
- name: "release-name-redis"
- defaultMode: 420
- name: config
@@ Service/ess-ci/release-name-redis - spec @@
+ clusterIP: None
@@ StatefulSet/ess-ci/release-name-redis @@
+ ---
+ # Source: matrix-stack/templates/redis/redis_statefulset.yaml
+ apiVersion: apps/v1
+ kind: StatefulSet
+ metadata:
+ labels:
+ helm.sh/chart: "matrix-stack-26.5.2-dev"
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ name: release-name-redis
+ namespace: ess-ci
+ spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ serviceName: release-name-redis
+ updateStrategy:
+ type: RollingUpdate
+ # Without this CrashLoopBackoffs due to config failures block pod recreation
+ podManagementPolicy: Parallel
+ template:
+ metadata:
+ labels:
+ app.kubernetes.io/managed-by: Helm
+ app.kubernetes.io/part-of: matrix-stack
+ app.kubernetes.io/component: matrix-pubsub-small-cache
+ app.kubernetes.io/name: redis
+ app.kubernetes.io/instance: release-name-redis
+ app.kubernetes.io/version: "7.4-alpine"
+ k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
+ spec:
+ automountServiceAccountToken: false
+ serviceAccountName: release-name-redis
+ securityContext:
+ fsGroup: 10002
+ runAsGroup: 0
+ runAsNonRoot: true
+ runAsUser: 10002
+ seccompProfile:
+ type: RuntimeDefault
+ supplementalGroups: []
+ restartPolicy: Always
+ topologySpreadConstraints:
+ - labelSelector:
+ matchLabels:
+ app.kubernetes.io/instance: release-name-redis
+ matchLabelKeys: []
+ maxSkew: 1
+ topologyKey: kubernetes.io/hostname
+ whenUnsatisfiable: ScheduleAnyway
+ containers:
+ - name: redis
+ args:
+ - "/config/redis.conf"
+ image: "docker.io/library/redis:7.4-alpine"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - containerPort: 6379
+ name: redis
+ protocol: TCP
+ startupProbe:
+ failureThreshold: 5
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ tcpSocket:
+ port: redis
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 10
+ successThreshold: 1
+ timeoutSeconds: 1
+ exec:
+ command:
+ - redis-cli
+ - ping
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 50m
+ memory: 50Mi
+ volumeMounts:
+ - mountPath: /config/redis.conf
+ name: config
+ readOnly: true
+ subPath: redis.conf
+ - name: redis-exporter
+ image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
+ imagePullPolicy: Always
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ ports:
+ - name: metrics
+ containerPort: 9121
+ startupProbe:
+ failureThreshold: 20
+ periodSeconds: 2
+ successThreshold: 1
+ timeoutSeconds: 1
+ httpGet:
+ path: /metrics
+ port: metrics
+ livenessProbe:
+ failureThreshold: 3
+ periodSeconds: 6
+ successThreshold: 1
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ readinessProbe:
+ failureThreshold: 3
+ periodSeconds: 2
+ successThreshold: 2
+ timeoutSeconds: 2
+ httpGet:
+ path: /metrics
+ port: metrics
+ resources:
+ limits:
+ memory: 50Mi
+ requests:
+ cpu: 10m
+ memory: 10Mi
+ volumes:
+ - configMap:
+ name: "release-name-redis"
+ defaultMode: 420
+ name: config
pytest-synapse-values.yaml@@ Deployment/ess-ci/release-name-redis @@
- ---
- # Source: matrix-stack/templates/redis/redis_deployment.yaml
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- labels:
- helm.sh/chart: "matrix-stack-26.5.2-dev"
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- name: release-name-redis
- namespace: ess-ci
- spec:
- replicas: 1
- selector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- strategy:
- type: RollingUpdate
- rollingUpdate:
- maxSurge: 2
- maxUnavailable: 0
- template:
- metadata:
- labels:
- app.kubernetes.io/managed-by: Helm
- app.kubernetes.io/part-of: matrix-stack
- app.kubernetes.io/component: matrix-pubsub-small-cache
- app.kubernetes.io/name: redis
- app.kubernetes.io/instance: release-name-redis
- app.kubernetes.io/version: "7.4-alpine"
- k8s.element.io/redis-config-hash: "3034b3cfe78419348e36bb348fad98b46a736334"
- spec:
- automountServiceAccountToken: false
- serviceAccountName: release-name-redis
- securityContext:
- fsGroup: 10002
- runAsGroup: 0
- runAsNonRoot: true
- runAsUser: 10002
- seccompProfile:
- type: RuntimeDefault
- supplementalGroups: []
- restartPolicy: Always
- topologySpreadConstraints:
- - labelSelector:
- matchLabels:
- app.kubernetes.io/instance: release-name-redis
- matchLabelKeys:
- - pod-template-hash
- maxSkew: 1
- topologyKey: kubernetes.io/hostname
- whenUnsatisfiable: ScheduleAnyway
- containers:
- - name: redis
- args:
- - "/config/redis.conf"
- image: "docker.io/library/redis:7.4-alpine"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - containerPort: 6379
- name: redis
- protocol: TCP
- startupProbe:
- failureThreshold: 5
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- livenessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- tcpSocket:
- port: redis
- readinessProbe:
- failureThreshold: 3
- periodSeconds: 10
- successThreshold: 1
- timeoutSeconds: 1
- exec:
- command:
- - redis-cli
- - ping
- resources:
- limits:
- memory: 50Mi
- requests:
- cpu: 50m
- memory: 50Mi
- volumeMounts:
- - mountPath: /config/redis.conf
- name: config
- readOnly: true
- subPath: redis.conf
- - name: redis-exporter
- image: "ghcr.io/oliver006/redis_exporter:v1.84.0"
- imagePullPolicy: Always
- securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- ports:
- - name: metrics
- containerPort: 9121
- startupProbe:
- failureThreshold: 20
- periodSeconds: 2
- s...*[Comment body truncated]* |
d7becb2 to
3d21bec
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Draft as the
Servicebecoming headless requires recreation and so has the same problem as #870 - we need to be able to recreate resources