Skip to content

Conversation

benbz
Copy link
Member

@benbz benbz commented Aug 1, 2025

Noticed while inspecting element-hq/synapse#18581 / implementing #639 that there can be multiple workers handling the receipts stream. We had a single worker handling both the account_data and receipts streams, however only a single worker could handle the account_data stream, so we need to split these up.

@benbz benbz requested a review from a team as a code owner August 1, 2025 11:38
@benbz benbz mentioned this pull request Aug 1, 2025
Copy link

github-actions bot commented Aug 1, 2025

dyff of changes in rendered templates of CI manifests

Full contents of manifests and dyffs are available in https://github.com/element-hq/ess-helm/actions/runs/16675147678/artifacts/3667063557

synapse-worker-example-values.yaml
@@ ConfigMap/ess-ci/release-name-haproxy - data.haproxy.cfg @@
  global
    maxconn 40000
    log stdout format raw local0 info
  
  
  [169 lines unchanged)]
  
    use_backend return_204_synapse if { method OPTIONS }
  
  
  
+   acl has_failover var(req.backend) -m str "account-data"
    acl has_failover var(req.backend) -m str "appservice"
    acl has_failover var(req.backend) -m str "background"
    acl has_failover var(req.backend) -m str "client-reader"
    acl has_failover var(req.backend) -m str "encryption"
  
  [five lines unchanged)]
  
    acl has_failover var(req.backend) -m str "initial-synchrotron"
    acl has_failover var(req.backend) -m str "presence-writer"
    acl has_failover var(req.backend) -m str "push-rules"
    acl has_failover var(req.backend) -m str "pusher"
-   acl has_failover var(req.backend) -m str "receipts-account"
+   acl has_failover var(req.backend) -m str "receipts"
    acl has_failover var(req.backend) -m str "sliding-sync"
    acl has_failover var(req.backend) -m str "synchrotron"
    acl has_failover var(req.backend) -m str "typing-persister"
    acl has_failover var(req.backend) -m str "user-dir"
  
  [20 lines unchanged)]
  
    http-check send meth GET uri /health
  
    # Use DNS SRV service discovery on the headless service
    server-template main 1 _synapse-http._tcp.release-name-synapse-main.ess-ci.svc.cluster.local resolvers kubedns init-addr none check
+ 
+ backend synapse-account-data
+   option httpchk
+   http-check connect port 8080
+   http-check send meth GET uri /health
+   # Use DNS SRV service discovery on the headless service
+   server-template account-data 1 _synapse-http._tcp.release-name-synapse-account-data.ess-ci.svc.cluster.local resolvers kubedns init-addr none check
  
  backend synapse-client-reader
    option httpchk
    http-check connect port 8080
  
  [83 lines unchanged)]
  
    http-check send meth GET uri /health
    # Use DNS SRV service discovery on the headless service
    server-template push-rules 1 _synapse-http._tcp.release-name-synapse-push-rules.ess-ci.svc.cluster.local resolvers kubedns init-addr none check
  
- backend synapse-receipts-account
+ backend synapse-receipts
    option httpchk
    http-check connect port 8080
    http-check send meth GET uri /health
    # Use DNS SRV service discovery on the headless service
-   server-template receipts-accnt 1 _synapse-http._tcp.release-name-synapse-receipts-accnt.ess-ci.svc.cluster.local resolvers kubedns init-addr none check
+   server-template receipts 1 _synapse-http._tcp.release-name-synapse-receipts.ess-ci.svc.cluster.local resolvers kubedns init-addr none check
  
  backend synapse-sliding-sync
    option httpchk
    http-check connect port 8080
  
  [81 lines unchanged)]
  
  # a fake backend which fonxes every request with a 500. Useful for
  # handling overloads etc.
  backend return_500
    http-request deny deny_status 500



@@ ConfigMap/ess-ci/release-name-synapse-haproxy - data.path_map_file @@
  # A map file that is used in haproxy config to map from matrix paths to the
  # named backend. The format is: path_regexp backend_name
  
  
+ # account-data
+ ^/_matrix/client/(r0|v3|unstable)/.*/tags account-data
+ ^/_matrix/client/(r0|v3|unstable)/.*/account_data account-data
  # client-reader
  ^/_matrix/client/(api/v1|r0|v3|unstable)/publicRooms$ client-reader
  ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/joined_members$ client-reader
  ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/context/.*$ client-reader
  
  [78 lines unchanged)]
  
  # presence-writer
  ^/_matrix/client/(api/v1|r0|v3|unstable)/presence/ presence-writer
  # push-rules
  ^/_matrix/client/(api/v1|r0|v3|unstable)/pushrules/ push-rules
- # receipts-account
- ^/_matrix/client/(r0|v3|unstable)/.*/tags receipts-account
- ^/_matrix/client/(r0|v3|unstable)/.*/account_data receipts-account
- ^/_matrix/client/(r0|v3|unstable)/rooms/.*/receipt receipts-account
- ^/_matrix/client/(r0|v3|unstable)/rooms/.*/read_markers receipts-account
+ # receipts
+ ^/_matrix/client/(r0|v3|unstable)/rooms/.*/receipt receipts
+ ^/_matrix/client/(r0|v3|unstable)/rooms/.*/read_markers receipts
  # sliding-sync
  ^/_matrix/client/unstable/org.matrix.simplified_msc3575/.* sliding-sync
  # sso-login
  ^/_matrix/client/(api/v1|r0|v3|unstable)/login/sso/redirect sso-login
  
  [twelve lines unchanged)]
  
  # typing-persister
  ^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/typing typing-persister
  # user-dir
  ^/_matrix/client/(r0|v3|unstable)/user_directory/search$ user-dir



@@ ConfigMap/ess-ci/release-name-synapse-hook - data.04-homeserver-overrides.yaml @@
  public_baseurl: https://synapse.ess.localhost/
  server_name: ess.localhost
  signing_key_path: /secrets/release-name-generated/SYNAPSE_SIGNING_KEY
  enable_metrics: true
  
  [63 lines unchanged)]
  
  instance_map:
    main:
      host: release-name-synapse-main.ess-ci.svc.cluster.local.
      port: 9093
+   release-name-synapse-account-data-0:
+     host: release-name-synapse-account-data-0.release-name-synapse-account-data.ess-ci.svc.cluster.local.
+     port: 9093
    release-name-synapse-encryption-0:
      host: release-name-synapse-encryption-0.release-name-synapse-encryption.ess-ci.svc.cluster.local.
      port: 9093
    release-name-synapse-event-persist-0:
  
  [seven lines unchanged)]
  
      port: 9093
    release-name-synapse-push-rules-0:
      host: release-name-synapse-push-rules-0.release-name-synapse-push-rules.ess-ci.svc.cluster.local.
      port: 9093
-   release-name-synapse-receipts-accnt-0:
-     host: release-name-synapse-receipts-accnt-0.release-name-synapse-receipts-accnt.ess-ci.svc.cluster.local.
+   release-name-synapse-receipts-0:
+     host: release-name-synapse-receipts-0.release-name-synapse-receipts.ess-ci.svc.cluster.local.
      port: 9093
    release-name-synapse-typing-0:
      host: release-name-synapse-typing-0.release-name-synapse-typing.ess-ci.svc.cluster.local.
      port: 9093
  
  [two lines unchanged)]
  
    enabled: true
    host: "release-name-synapse-redis.ess-ci.svc.cluster.local"
  
  stream_writers:
+   account_data:
+   - release-name-synapse-account-data-0
    to_device:
    - release-name-synapse-encryption-0
    events:
    - release-name-synapse-event-persist-0
  
  [one line unchanged)]
  
    presence:
    - release-name-synapse-presence-write-0
    push_rules:
    - release-name-synapse-push-rules-0
-   account_data:
-   - release-name-synapse-receipts-accnt-0
    receipts:
-   - release-name-synapse-receipts-accnt-0
+   - release-name-synapse-receipts-0
    typing:
    - release-name-synapse-typing-0



@@ ConfigMap/ess-ci/release-name-synapse - data @@
- 05-receipts-account.yaml: |
-   
-   worker_app: synapse.app.generic_worker
-   worker_name: ${APPLICATION_NAME}
-   
-   worker_listeners:
-   - port: 8008
-     tls: false
-     bind_addresses: ['0.0.0.0']
-     type: http
-     x_forwarded: true
-     resources:
-     - names:
-       - client
-       - federation
-       compress: false
-   - port: 9093
-     tls: false
-     bind_addresses: ['0.0.0.0']
-     type: http
-     x_forwarded: false
-     resources:
-     - names: [replication]
-       compress: false
-   - type: metrics
-     port: 9001
-     bind_addresses: ['0.0.0.0']
-   - port: 8080
-     tls: false
-     bind_addresses: ['0.0.0.0']
-     type: http
-     x_forwarded: false
-     resources:
-     - names: [health]
-       compress: false
-   # Stub out the media storage provider for processes not responsible for media
-   media_storage_providers:
-   - module: file_system
-     store_local: false
-     store_remote: false
-     store_synchronous: false
-     config:
-       directory: "/media/media_store"
+   05-account-data.yaml: |
+     
+     worker_app: synapse.app.generic_worker
+     worker_name: ${APPLICATION_NAME}
+     
+     worker_listeners:
+     - port: 8008
+       tls: false
+       bind_addresses: ['0.0.0.0']
+       type: http
+       x_forwarded: true
+       resources:
+       - names:
+         - client
+         - federation
+         compress: false
+     - port: 9093
+       tls: false
+       bind_addresses: ['0.0.0.0']
+       type: http
+       x_forwarded: false
+       resources:
+       - names: [replication]
+         compress: false
+     - type: metrics
+       port: 9001
+       bind_addresses: ['0.0.0.0']
+     - port: 8080
+       tls: false
+       bind_addresses: ['0.0.0.0']
+       type: http
+       x_forwarded: false
+       resources:
+       - names: [health]
+         compress: false
+     # Stub out the media storage provider for processes not responsible for media
+     media_storage_providers:
+     - module: file_system
+       store_local: false
+       store_remote: false
+       store_synchronous: false
+       config:
+         directory: "/media/media_store"
+     
+   05-receipts.yaml: |
+     
+     worker_app: synapse.app.generic_worker
+     worker_name: ${APPLICATION_NAME}
+     
+     worker_listeners:
+     - port: 8008
+       tls: false
+       bind_addresses: ['0.0.0.0']
+       type: http
+       x_forwarded: true
+       resources:
+       - names:
+         - client
+         - federation
+         compress: false
+     - port: 9093
+       tls: false
+       bind_addresses: ['0.0.0.0']
+       type: http
+       x_forwarded: false
+       resources:
+       - names: [replication]
+         compress: false
+     - type: metrics
+       port: 9001
+       bind_addresses: ['0.0.0.0']
+     - port: 8080
+       tls: false
+       bind_addresses: ['0.0.0.0']
+       type: http
+       x_forwarded: false
+       resources:
+       - names: [health]
+         compress: false
+     # Stub out the media storage provider for processes not responsible for media
+     media_storage_providers:
+     - module: file_system
+       store_local: false
+       store_remote: false
+       store_synchronous: false
+       config:
+         directory: "/media/media_store"

@@ ConfigMap/ess-ci/release-name-synapse - data.04-homeserver-overrides.yaml @@
  public_baseurl: https://synapse.ess.localhost/
  server_name: ess.localhost
  signing_key_path: /secrets/release-name-generated/SYNAPSE_SIGNING_KEY
  enable_metrics: true
  
  [63 lines unchanged)]
  
  instance_map:
    main:
      host: release-name-synapse-main.ess-ci.svc.cluster.local.
      port: 9093
+   release-name-synapse-account-data-0:
+     host: release-name-synapse-account-data-0.release-name-synapse-account-data.ess-ci.svc.cluster.local.
+     port: 9093
    release-name-synapse-encryption-0:
      host: release-name-synapse-encryption-0.release-name-synapse-encryption.ess-ci.svc.cluster.local.
      port: 9093
    release-name-synapse-event-persist-0:
  
  [seven lines unchanged)]
  
      port: 9093
    release-name-synapse-push-rules-0:
      host: release-name-synapse-push-rules-0.release-name-synapse-push-rules.ess-ci.svc.cluster.local.
      port: 9093
-   release-name-synapse-receipts-accnt-0:
-     host: release-name-synapse-receipts-accnt-0.release-name-synapse-receipts-accnt.ess-ci.svc.cluster.local.
+   release-name-synapse-receipts-0:
+     host: release-name-synapse-receipts-0.release-name-synapse-receipts.ess-ci.svc.cluster.local.
      port: 9093
    release-name-synapse-typing-0:
      host: release-name-synapse-typing-0.release-name-synapse-typing.ess-ci.svc.cluster.local.
      port: 9093
  
  [two lines unchanged)]
  
    enabled: true
    host: "release-name-synapse-redis.ess-ci.svc.cluster.local"
  
  stream_writers:
+   account_data:
+   - release-name-synapse-account-data-0
    to_device:
    - release-name-synapse-encryption-0
    events:
    - release-name-synapse-event-persist-0
  
  [one line unchanged)]
  
    presence:
    - release-name-synapse-presence-write-0
    push_rules:
    - release-name-synapse-push-rules-0
-   account_data:
-   - release-name-synapse-receipts-accnt-0
    receipts:
-   - release-name-synapse-receipts-accnt-0
+   - release-name-synapse-receipts-0
    typing:
    - release-name-synapse-typing-0



@@ Deployment/ess-ci/release-name-haproxy - metadata.labels.k8s.element.io/shared-haproxy-config-hash @@
- 61a0bf448cbc921171f507ec50646d131b380fcb
+ 691bc7e0ae51173b9499eee3527f4bd187b21d23

@@ Deployment/ess-ci/release-name-haproxy - metadata.labels.k8s.element.io/synapse-haproxy-config-hash @@
- 5066bdb3d5ce9d907b510c958fbebaabb70472a5
+ 1c1a19e14fe3dad00c4b472fa494444e3ce527a6

@@ Deployment/ess-ci/release-name-haproxy - spec.template.metadata.labels.k8s.element.io/shared-haproxy-config-hash @@
- 61a0bf448cbc921171f507ec50646d131b380fcb
+ 691bc7e0ae51173b9499eee3527f4bd187b21d23

@@ Deployment/ess-ci/release-name-haproxy - spec.template.metadata.labels.k8s.element.io/synapse-haproxy-config-hash @@
- 5066bdb3d5ce9d907b510c958fbebaabb70472a5
+ 1c1a19e14fe3dad00c4b472fa494444e3ce527a6



@@ Job/ess-ci/release-name-synapse-check-config - metadata.labels.k8s.element.io/synapse-config-hash @@
- a107d6f6592f1be513dee855defcbed86f0091d2
+ c5c137e84162cad07b80424fc26e932368f982d1

@@ Job/ess-ci/release-name-synapse-check-config - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- a107d6f6592f1be513dee855defcbed86f0091d2
+ c5c137e84162cad07b80424fc26e932368f982d1


@@ Service/ess-ci/release-name-synapse-account-data @@
+ ---
+ # Source: matrix-stack/templates/synapse/synapse_service.yaml
+ apiVersion: v1
+ kind: Service
+ metadata:
+   labels:
+     helm.sh/chart: "matrix-stack-25.7.1-dev"
+     app.kubernetes.io/managed-by: Helm
+     app.kubernetes.io/part-of: matrix-stack
+     app.kubernetes.io/component: matrix-server
+     app.kubernetes.io/name: synapse-account-data
+     app.kubernetes.io/instance: release-name-synapse-account-data
+     app.kubernetes.io/version: "v1.134.0"
+     k8s.element.io/synapse-instance: release-name-synapse
+   name: release-name-synapse-account-data
+   namespace: ess-ci
+ spec:
+   clusterIP: None
+   ports:
+     - name: synapse-http
+       port: 8008
+       targetPort: synapse-http
+     - name: synapse-repl
+       port: 9093
+       targetPort: synapse-repl
+     - name: synapse-health
+       port: 8080
+       targetPort: synapse-health
+     - name: synapse-metrics
+       port: 9001
+       targetPort: synapse-metrics
+   selector:
+     app.kubernetes.io/instance: release-name-synapse-account-data


@@ Service/ess-ci/release-name-synapse-receipts-accnt @@
- ---
- # Source: matrix-stack/templates/synapse/synapse_service.yaml
- apiVersion: v1
- kind: Service
- metadata:
-   labels:
-     helm.sh/chart: "matrix-stack-25.7.1-dev"
-     app.kubernetes.io/managed-by: Helm
-     app.kubernetes.io/part-of: matrix-stack
-     app.kubernetes.io/component: matrix-server
-     app.kubernetes.io/name: synapse-receipts-account
-     app.kubernetes.io/instance: release-name-synapse-receipts-account
-     app.kubernetes.io/version: "v1.134.0"
-     k8s.element.io/synapse-instance: release-name-synapse
-   name: release-name-synapse-receipts-accnt
-   namespace: ess-ci
- spec:
-   clusterIP: None
-   ports:
-     - name: synapse-http
-       port: 8008
-       targetPort: synapse-http
-     - name: synapse-repl
-       port: 9093
-       targetPort: synapse-repl
-     - name: synapse-health
-       port: 8080
-       targetPort: synapse-health
-     - name: synapse-metrics
-       port: 9001
-       targetPort: synapse-metrics
-   selector:
-     app.kubernetes.io/instance: release-name-synapse-receipts-account


@@ Service/ess-ci/release-name-synapse-receipts @@
+ ---
+ # Source: matrix-stack/templates/synapse/synapse_service.yaml
+ apiVersion: v1
+ kind: Service
+ metadata:
+   labels:
+     helm.sh/chart: "matrix-stack-25.7.1-dev"
+     app.kubernetes.io/managed-by: Helm
+     app.kubernetes.io/part-of: matrix-stack
+     app.kubernetes.io/component: matrix-server
+     app.kubernetes.io/name: synapse-receipts
+     app.kubernetes.io/instance: release-name-synapse-receipts
+     app.kubernetes.io/version: "v1.134.0"
+     k8s.element.io/synapse-instance: release-name-synapse
+   name: release-name-synapse-receipts
+   namespace: ess-ci
+ spec:
+   clusterIP: None
+   ports:
+     - name: synapse-http
+       port: 8008
+       targetPort: synapse-http
+     - name: synapse-repl
+       port: 9093
+       targetPort: synapse-repl
+     - name: synapse-health
+       port: 8080
+       targetPort: synapse-health
+     - name: synapse-metrics
+       port: 9001
+       targetPort: synapse-metrics
+   selector:
+     app.kubernetes.io/instance: release-name-synapse-receipts


@@ StatefulSet/ess-ci/release-name-synapse-account-data @@
+ ---
+ # Source: matrix-stack/templates/synapse/synapse_statefulset.yaml
+ apiVersion: apps/v1
+ kind: StatefulSet
+ metadata:
+   labels:
+     helm.sh/chart: "matrix-stack-25.7.1-dev"
+     app.kubernetes.io/managed-by: Helm
+     app.kubernetes.io/part-of: matrix-stack
+     app.kubernetes.io/component: matrix-server
+     app.kubernetes.io/name: synapse-account-data
+     app.kubernetes.io/instance: release-name-synapse-account-data
+     app.kubernetes.io/version: "v1.134.0"
+     k8s.element.io/synapse-instance: release-name-synapse
+     k8s.element.io/synapse-config-hash: "45638d7722b8917f621c012c42509bb6e907365a"
+     k8s.element.io/synapse-secret-hash: "0f710c6d017350fb3da93e921a169898a26fbf08"
+     k8s.element.io/postgres-password-synapse-hash: da9c3f72f44eda433c1be814c6e8531633da8a67
+   name: release-name-synapse-account-data
+   namespace: ess-ci
+ spec:
+   serviceName: release-name-synapse-account-data
+   replicas: 1
+   selector:
+     matchLabels:
+       app.kubernetes.io/instance: release-name-synapse-account-data
+   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-server
+         app.kubernetes.io/name: synapse-account-data
+         app.kubernetes.io/instance: release-name-synapse-account-data
+         app.kubernetes.io/version: "v1.134.0"
+         k8s.element.io/synapse-instance: release-name-synapse
+         k8s.element.io/synapse-config-hash: "45638d7722b8917f621c012c42509bb6e907365a"
+         k8s.element.io/synapse-secret-hash: "0f710c6d017350fb3da93e921a169898a26fbf08"
+         k8s.element.io/postgres-password-synapse-hash: da9c3f72f44eda433c1be814c6e8531633da8a67
+     spec:
+       automountServiceAccountToken: false
+       serviceAccountName: release-name-synapse
+       securityContext:
+         fsGroup: 10091
+         runAsGroup: 10091
+         runAsNonRoot: true
+         runAsUser: 10091
+         seccompProfile:
+           type: RuntimeDefault
+         supplementalGroups: []
+       initContainers:
+         - name: render-config
+           image: "ghcr.io/element-hq/ess-helm/matrix-tools:0.5.4"
+           imagePullPolicy: Always
+           securityContext:
+             allowPrivilegeEscalation: false
+             capabilities:
+               drop:
+                 - ALL
+             readOnlyRootFilesystem: true
+           command:
+             - "/matrix-tools"
+             - render-config
+             - -output
+             - /conf/homeserver.yaml
+             - /config-templates/01-homeserver-underrides.yaml
+             - /config-templates/04-homeserver-overrides.yaml
+             - /config-templates/05-account-data.yaml
+           env:
+             - name: APPLICATION_NAME
+               value: '{{ hostname }}'
+             - name: SYNAPSE_POSTGRES_PASSWORD
+               value: '{{ readfile "/secrets/release-name-generated/POSTGRES_SYNAPSE_PASSWORD" | quote }}'
+           resources:
+             limits:
+               memory: 4Gi
+             requests:
+               cpu: 100m
+               memory: 100Mi
+           volumeMounts:
+             - mountPath: /config-templates
+               name: plain-config
+               readOnly: true
+             - mountPath: /secrets/release-name-synapse
+               name: "secret-3778ad710292"
+               readOnly: true
+             - mountPath: /secrets/release-name-generated
+               name: "secret-f20f994b9a6a"
+               readOnly: true
+             - mountPath: /conf
+               name: rendered-config
+               readOnly: false
+         - name: db-wait
+           image: "ghcr.io/element-hq/ess-helm/matrix-tools:0.5.4"
+           imagePullPolicy: Always
+           securityContext:
+             allowPrivilegeEscalation: false
+             capabilities:
+               drop:
+                 - ALL
+             readOnlyRootFilesystem: true
+           command:
+             - "/matrix-tools"
+             - tcpwait
+             - -address
+             - "release-name-postgres.ess-ci.svc.cluster.local:5432"
+           resources:
+             limits:
+               memory: 4Gi
+             requests:
+               cpu: 100m
+               memory: 100Mi
+       containers:
+         - name: synapse
+           image: "ghcr.io/element-hq/synapse:v1.134.0"
+           imagePullPolicy: Always
+           securityContext:
+             allowPrivilegeEscalation: false
+             capabilities:
+               drop:
+                 - ALL
+             readOnlyRootFilesystem: true
+           command:
+             - "python3"
+             - "-m"
+             - synapse.app.generic_worker
+             - "-c"
+             - /conf/homeserver.yaml
+           env:
+             - name: LD_PRELOAD
+               value: libjemalloc.so.2
+           ports:
+             - containerPort: 8008
+               name: synapse-http
+               protocol: TCP
+             - containerPort: 9093
+               name: synapse-repl
+               protocol: TCP
+             - containerPort: 8080
+               name: synapse-health
+               protocol: TCP
+             - containerPort: 9001
+               name: synapse-metrics
+               protocol: TCP
+           startupProbe:
+             failureThreshold: 54
+             periodSeconds: 2
+             successThreshold: 1
+             timeoutSeconds: 1
+             httpGet:
+               path: /health
+               port: synapse-health
+           livenessProbe:
+             failureThreshold: 8
+             periodSeconds: 6
+             successThreshold: 1
+             timeoutSeconds: 2
+             httpGet:
+               path: /health
+               port: synapse-health
+           readinessProbe:
+             failureThreshold: 8
+             periodSeconds: 2
+             successThreshold: 2
+             timeoutSeconds: 2
+             httpGet:
+               path: /health
+               port: synapse-health
+           resources:
+             limits:
+               memory: 4Gi
+             requests:
+               cpu: 100m
+               memory: 100Mi
+           volumeMounts:
+             - mountPath: "/conf/homeserver.yaml"
+               name: rendered-config
+               subPath: homeserver.yaml
+               readOnly: true
+             - mountPath: /secrets/release-name-synapse
+               name: "secret-3778ad710292"
+               readOnly: true
+             - mountPath: /secrets/release-name-generated
+               name: "secret-f20f994b9a6a"
+               readOnly: true
+             - mountPath: /conf/log_config.yaml
+               name: plain-config
+               subPath: log_config.yaml
+               readOnly: false
+             - mountPath: /media
+               name: media
+               readOnly: false
+             - mountPath: /tmp
+               name: tmp
+               readOnly: false
+       volumes:
+         - configMap:
+             defaultMode: 420
+             name: release-name-synapse
+           name: plain-config
+         - secret:
+             secretName: release-name-synapse
+           name: secret-3778ad710292
+         - secret:
+             secretName: release-name-generated
+           name: secret-f20f994b9a6a
+         - emptyDir:
+             medium: Memory
+           name: "rendered-config"
+         - emptyDir:
+             medium: Memory
+           name: "media"
+         - emptyDir:
+             medium: Memory
+           name: "tmp"



@@ StatefulSet/ess-ci/release-name-synapse-appservice - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-appservice - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-background - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-background - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-client-reader - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-client-reader - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-encryption - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-encryption - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-event-creator - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-event-creator - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-event-persist - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-event-persist - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-fed-inbound - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-fed-inbound - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-fed-reader - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-fed-reader - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-fed-sender - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-fed-sender - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-initial-sync - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-initial-sync - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-main - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-main - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-media-repo - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-media-repo - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-presence-write - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-presence-write - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-push-rules - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-push-rules - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-pusher - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-pusher - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a


@@ StatefulSet/ess-ci/release-name-synapse-receipts-accnt @@
- ---
- # Source: matrix-stack/templates/synapse/synapse_statefulset.yaml
- apiVersion: apps/v1
- kind: StatefulSet
- metadata:
-   labels:
-     helm.sh/chart: "matrix-stack-25.7.1-dev"
-     app.kubernetes.io/managed-by: Helm
-     app.kubernetes.io/part-of: matrix-stack
-     app.kubernetes.io/component: matrix-server
-     app.kubernetes.io/name: synapse-receipts-account
-     app.kubernetes.io/instance: release-name-synapse-receipts-account
-     app.kubernetes.io/version: "v1.134.0"
-     k8s.element.io/synapse-instance: release-name-synapse
-     k8s.element.io/synapse-config-hash: "72250866b199c455398e6b731f7cf57255dc245a"
-     k8s.element.io/synapse-secret-hash: "0f710c6d017350fb3da93e921a169898a26fbf08"
-     k8s.element.io/postgres-password-synapse-hash: da9c3f72f44eda433c1be814c6e8531633da8a67
-   name: release-name-synapse-receipts-accnt
-   namespace: ess-ci
- spec:
-   serviceName: release-name-synapse-receipts-accnt
-   replicas: 1
-   selector:
-     matchLabels:
-       app.kubernetes.io/instance: release-name-synapse-receipts-account
-   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-server
-         app.kubernetes.io/name: synapse-receipts-account
-         app.kubernetes.io/instance: release-name-synapse-receipts-account
-         app.kubernetes.io/version: "v1.134.0"
-         k8s.element.io/synapse-instance: release-name-synapse
-         k8s.element.io/synapse-config-hash: "72250866b199c455398e6b731f7cf57255dc245a"
-         k8s.element.io/synapse-secret-hash: "0f710c6d017350fb3da93e921a169898a26fbf08"
-         k8s.element.io/postgres-password-synapse-hash: da9c3f72f44eda433c1be814c6e8531633da8a67
-     spec:
-       automountServiceAccountToken: false
-       serviceAccountName: release-name-synapse
-       securityContext:
-         fsGroup: 10091
-         runAsGroup: 10091
-         runAsNonRoot: true
-         runAsUser: 10091
-         seccompProfile:
-           type: RuntimeDefault
-         supplementalGroups: []
-       initContainers:
-         - name: render-config
-           image: "ghcr.io/element-hq/ess-helm/matrix-tools:0.5.4"
-           imagePullPolicy: Always
-           securityContext:
-             allowPrivilegeEscalation: false
-             capabilities:
-               drop:
-                 - ALL
-             readOnlyRootFilesystem: true
-           command:
-             - "/matrix-tools"
-             - render-config
-             - -output
-             - /conf/homeserver.yaml
-             - /config-templates/01-homeserver-underrides.yaml
-             - /config-templates/04-homeserver-overrides.yaml
-             - /config-templates/05-receipts-account.yaml
-           env:
-             - name: APPLICATION_NAME
-               value: '{{ hostname }}'
-             - name: SYNAPSE_POSTGRES_PASSWORD
-               value: '{{ readfile "/secrets/release-name-generated/POSTGRES_SYNAPSE_PASSWORD" | quote }}'
-           resources:
-             limits:
-               memory: 4Gi
-             requests:
-               cpu: 100m
-               memory: 100Mi
-           volumeMounts:
-             - mountPath: /config-templates
-               name: plain-config
-               readOnly: true
-             - mountPath: /secrets/release-name-synapse
-               name: "secret-3778ad710292"
-               readOnly: true
-             - mountPath: /secrets/release-name-generated
-               name: "secret-f20f994b9a6a"
-               readOnly: true
-             - mountPath: /conf
-               name: rendered-config
-               readOnly: false
-         - name: db-wait
-           image: "ghcr.io/element-hq/ess-helm/matrix-tools:0.5.4"
-           imagePullPolicy: Always
-           securityContext:
-             allowPrivilegeEscalation: false
-             capabilities:
-               drop:
-                 - ALL
-             readOnlyRootFilesystem: true
-           command:
-             - "/matrix-tools"
-             - tcpwait
-             - -address
-             - "release-name-postgres.ess-ci.svc.cluster.local:5432"
-           resources:
-             limits:
-               memory: 4Gi
-             requests:
-               cpu: 100m
-               memory: 100Mi
-       containers:
-         - name: synapse
-           image: "ghcr.io/element-hq/synapse:v1.134.0"
-           imagePullPolicy: Always
-           securityContext:
-             allowPrivilegeEscalation: false
-             capabilities:
-               drop:
-                 - ALL
-             readOnlyRootFilesystem: true
-           command:
-             - "python3"
-             - "-m"
-             - synapse.app.generic_worker
-             - "-c"
-             - /conf/homeserver.yaml
-           env:
-             - name: LD_PRELOAD
-               value: libjemalloc.so.2
-           ports:
-             - containerPort: 8008
-               name: synapse-http
-               protocol: TCP
-             - containerPort: 9093
-               name: synapse-repl
-               protocol: TCP
-             - containerPort: 8080
-               name: synapse-health
-               protocol: TCP
-             - containerPort: 9001
-               name: synapse-metrics
-               protocol: TCP
-           startupProbe:
-             failureThreshold: 54
-             periodSeconds: 2
-             successThreshold: 1
-             timeoutSeconds: 1
-             httpGet:
-               path: /health
-               port: synapse-health
-           livenessProbe:
-             failureThreshold: 8
-             periodSeconds: 6
-             successThreshold: 1
-             timeoutSeconds: 2
-             httpGet:
-               path: /health
-               port: synapse-health
-           readinessProbe:
-             failureThreshold: 8
-             periodSeconds: 2
-             successThreshold: 2
-             timeoutSeconds: 2
-             httpGet:
-               path: /health
-               port: synapse-health
-           resources:
-             limits:
-               memory: 4Gi
-             requests:
-               cpu: 100m
-               memory: 100Mi
-           volumeMounts:
-             - mountPath: "/conf/homeserver.yaml"
-               name: rendered-config
-               subPath: homeserver.yaml
-               readOnly: true
-             - mountPath: /secrets/release-name-synapse
-               name: "secret-3778ad710292"
-               readOnly: true
-             - mountPath: /secrets/release-name-generated
-               name: "secret-f20f994b9a6a"
-               readOnly: true
-             - mountPath: /conf/log_config.yaml
-               name: plain-config
-               subPath: log_config.yaml
-               readOnly: false
-             - mountPath: /media
-               name: media
-               readOnly: false
-             - mountPath: /tmp
-               name: tmp
-               readOnly: false
-       volumes:
-         - configMap:
-             defaultMode: 420
-             name: release-name-synapse
-           name: plain-config
-         - secret:
-             secretName: release-name-synapse
-           name: secret-3778ad710292
-         - secret:
-             secretName: release-name-generated
-           name: secret-f20f994b9a6a
-         - emptyDir:
-             medium: Memory
-           name: "rendered-config"
-         - emptyDir:
-             medium: Memory
-           name: "media"
-         - emptyDir:
-             medium: Memory
-           name: "tmp"


@@ StatefulSet/ess-ci/release-name-synapse-receipts @@
+ ---
+ # Source: matrix-stack/templates/synapse/synapse_statefulset.yaml
+ apiVersion: apps/v1
+ kind: StatefulSet
+ metadata:
+   labels:
+     helm.sh/chart: "matrix-stack-25.7.1-dev"
+     app.kubernetes.io/managed-by: Helm
+     app.kubernetes.io/part-of: matrix-stack
+     app.kubernetes.io/component: matrix-server
+     app.kubernetes.io/name: synapse-receipts
+     app.kubernetes.io/instance: release-name-synapse-receipts
+     app.kubernetes.io/version: "v1.134.0"
+     k8s.element.io/synapse-instance: release-name-synapse
+     k8s.element.io/synapse-config-hash: "45638d7722b8917f621c012c42509bb6e907365a"
+     k8s.element.io/synapse-secret-hash: "0f710c6d017350fb3da93e921a169898a26fbf08"
+     k8s.element.io/postgres-password-synapse-hash: da9c3f72f44eda433c1be814c6e8531633da8a67
+   name: release-name-synapse-receipts
+   namespace: ess-ci
+ spec:
+   serviceName: release-name-synapse-receipts
+   replicas: 1
+   selector:
+     matchLabels:
+       app.kubernetes.io/instance: release-name-synapse-receipts
+   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-server
+         app.kubernetes.io/name: synapse-receipts
+         app.kubernetes.io/instance: release-name-synapse-receipts
+         app.kubernetes.io/version: "v1.134.0"
+         k8s.element.io/synapse-instance: release-name-synapse
+         k8s.element.io/synapse-config-hash: "45638d7722b8917f621c012c42509bb6e907365a"
+         k8s.element.io/synapse-secret-hash: "0f710c6d017350fb3da93e921a169898a26fbf08"
+         k8s.element.io/postgres-password-synapse-hash: da9c3f72f44eda433c1be814c6e8531633da8a67
+     spec:
+       automountServiceAccountToken: false
+       serviceAccountName: release-name-synapse
+       securityContext:
+         fsGroup: 10091
+         runAsGroup: 10091
+         runAsNonRoot: true
+         runAsUser: 10091
+         seccompProfile:
+           type: RuntimeDefault
+         supplementalGroups: []
+       initContainers:
+         - name: render-config
+           image: "ghcr.io/element-hq/ess-helm/matrix-tools:0.5.4"
+           imagePullPolicy: Always
+           securityContext:
+             allowPrivilegeEscalation: false
+             capabilities:
+               drop:
+                 - ALL
+             readOnlyRootFilesystem: true
+           command:
+             - "/matrix-tools"
+             - render-config
+             - -output
+             - /conf/homeserver.yaml
+             - /config-templates/01-homeserver-underrides.yaml
+             - /config-templates/04-homeserver-overrides.yaml
+             - /config-templates/05-receipts.yaml
+           env:
+             - name: APPLICATION_NAME
+               value: '{{ hostname }}'
+             - name: SYNAPSE_POSTGRES_PASSWORD
+               value: '{{ readfile "/secrets/release-name-generated/POSTGRES_SYNAPSE_PASSWORD" | quote }}'
+           resources:
+             limits:
+               memory: 4Gi
+             requests:
+               cpu: 100m
+               memory: 100Mi
+           volumeMounts:
+             - mountPath: /config-templates
+               name: plain-config
+               readOnly: true
+             - mountPath: /secrets/release-name-synapse
+               name: "secret-3778ad710292"
+               readOnly: true
+             - mountPath: /secrets/release-name-generated
+               name: "secret-f20f994b9a6a"
+               readOnly: true
+             - mountPath: /conf
+               name: rendered-config
+               readOnly: false
+         - name: db-wait
+           image: "ghcr.io/element-hq/ess-helm/matrix-tools:0.5.4"
+           imagePullPolicy: Always
+           securityContext:
+             allowPrivilegeEscalation: false
+             capabilities:
+               drop:
+                 - ALL
+             readOnlyRootFilesystem: true
+           command:
+             - "/matrix-tools"
+             - tcpwait
+             - -address
+             - "release-name-postgres.ess-ci.svc.cluster.local:5432"
+           resources:
+             limits:
+               memory: 4Gi
+             requests:
+               cpu: 100m
+               memory: 100Mi
+       containers:
+         - name: synapse
+           image: "ghcr.io/element-hq/synapse:v1.134.0"
+           imagePullPolicy: Always
+           securityContext:
+             allowPrivilegeEscalation: false
+             capabilities:
+               drop:
+                 - ALL
+             readOnlyRootFilesystem: true
+           command:
+             - "python3"
+             - "-m"
+             - synapse.app.generic_worker
+             - "-c"
+             - /conf/homeserver.yaml
+           env:
+             - name: LD_PRELOAD
+               value: libjemalloc.so.2
+           ports:
+             - containerPort: 8008
+               name: synapse-http
+               protocol: TCP
+             - containerPort: 9093
+               name: synapse-repl
+               protocol: TCP
+             - containerPort: 8080
+               name: synapse-health
+               protocol: TCP
+             - containerPort: 9001
+               name: synapse-metrics
+               protocol: TCP
+           startupProbe:
+             failureThreshold: 21
+             periodSeconds: 2
+             successThreshold: 1
+             timeoutSeconds: 1
+             httpGet:
+               path: /health
+               port: synapse-health
+           livenessProbe:
+             failureThreshold: 3
+             periodSeconds: 6
+             successThreshold: 1
+             timeoutSeconds: 2
+             httpGet:
+               path: /health
+               port: synapse-health
+           readinessProbe:
+             failureThreshold: 3
+             periodSeconds: 2
+             successThreshold: 2
+             timeoutSeconds: 2
+             httpGet:
+               path: /health
+               port: synapse-health
+           resources:
+             limits:
+               memory: 4Gi
+             requests:
+               cpu: 100m
+               memory: 100Mi
+           volumeMounts:
+             - mountPath: "/conf/homeserver.yaml"
+               name: rendered-config
+               subPath: homeserver.yaml
+               readOnly: true
+             - mountPath: /secrets/release-name-synapse
+               name: "secret-3778ad710292"
+               readOnly: true
+             - mountPath: /secrets/release-name-generated
+               name: "secret-f20f994b9a6a"
+               readOnly: true
+             - mountPath: /conf/log_config.yaml
+               name: plain-config
+               subPath: log_config.yaml
+               readOnly: false
+             - mountPath: /media
+               name: media
+               readOnly: false
+             - mountPath: /tmp
+               name: tmp
+               readOnly: false
+       volumes:
+         - configMap:
+             defaultMode: 420
+             name: release-name-synapse
+           name: plain-config
+         - secret:
+             secretName: release-name-synapse
+           name: secret-3778ad710292
+         - secret:
+             secretName: release-name-generated
+           name: secret-f20f994b9a6a
+         - emptyDir:
+             medium: Memory
+           name: "rendered-config"
+         - emptyDir:
+             medium: Memory
+           name: "media"
+         - emptyDir:
+             medium: Memory
+           name: "tmp"



@@ StatefulSet/ess-ci/release-name-synapse-sliding-sync - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-sliding-sync - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-sso-login - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-sso-login - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-synchrotron - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-synchrotron - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-typing - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-typing - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a



@@ StatefulSet/ess-ci/release-name-synapse-user-dir - metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@@ StatefulSet/ess-ci/release-name-synapse-user-dir - spec.template.metadata.labels.k8s.element.io/synapse-config-hash @@
- 72250866b199c455398e6b731f7cf57255dc245a
+ 45638d7722b8917f621c012c42509bb6e907365a

@benbz benbz force-pushed the bbz/split-accounts-and-receipts-workers branch from 1a4ed40 to 41214a3 Compare August 1, 2025 12:29
@benbz benbz force-pushed the bbz/split-accounts-and-receipts-workers branch from 41214a3 to 0670c47 Compare August 1, 2025 12:32
@benbz benbz merged commit 8b2950a into main Aug 1, 2025
67 checks passed
@benbz benbz deleted the bbz/split-accounts-and-receipts-workers branch August 1, 2025 12:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants