production: Deploy search & (storage + azure) storage rpc service in dynamic infra
It's simpler to review commit per commit (each helm-diff is related to the commit change):
-
swh.search [1] -
swh.storage [2] -
Make services using the read-only storage instance [3]
Note:
- "[x]" means merged
[1]
make swh-helm-diff (search rpc)
[swh] Comparing changes between branches production and migrate-rpc-services-to-prod (per environment)...
Your branch is up to date with 'origin/production'.
[swh] Generate config in production branch for environment staging, namespace swh...
[swh] Generate config in production branch for environment staging, namespace swh-cassandra...
[swh] Generate config in production branch for environment staging, namespace swh-cassandra-next-version...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment staging...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment staging...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment staging...
Your branch is up to date with 'origin/production'.
[swh] Generate config in production branch for environment production, namespace swh...
[swh] Generate config in production branch for environment production, namespace swh-cassandra...
[swh] Generate config in production branch for environment production, namespace swh-cassandra-next-version...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment production...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment production...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment production...
------------- diff for environment staging namespace swh -------------
No differences
------------- diff for environment staging namespace swh-cassandra -------------
No differences
------------- diff for environment staging namespace swh-cassandra-next-version -------------
No differences
------------- diff for environment production namespace swh -------------
--- /tmp/swh-chart.swh.mNLqGSHj/production-swh.before 2023-12-13 11:04:02.317550528 +0100
+++ /tmp/swh-chart.swh.mNLqGSHj/production-swh.after 2023-12-13 11:04:02.749550563 +0100
@@ -251,21 +251,21 @@
config.yml: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
url: http://saam.internal.softwareheritage.org:5002
search:
cls: remote
- url: http://moma.internal.softwareheritage.org:5010
+ url: http://search-rpc-ingress
debug: false
introspection: true
max_raw_content_size: 10000
max_query_cost:
anonymous: 50
user: 500
@@ -5317,20 +5317,97 @@
data:
config.yml.template: |
scrubber:
cls: postgresql
db: host=db.internal.softwareheritage.org port=5432 user=swh-scrubber dbname=swh-scrubber password=${SCRUBBER_POSTGRESQL_PASSWORD}
storage:
cls: postgresql
db: host=massmoca.internal.softwareheritage.org port=5432 user=guest dbname=softwareheritage password=${POSTGRESQL_PASSWORD}
---
+# Source: swh/templates/search/journal-client-configmap.yaml
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: search-journal-client-indexed-configuration-template
+ namespace: swh
+data:
+ config.yml.template: |
+ search:
+ cls: remote
+ url: http://search-rpc-ingress
+ storage:
+ cls: remote
+ url: http://saam.internal.softwareheritage.org:5002
+ journal:
+ brokers:
+ - kafka1.internal.softwareheritage.org
+ - kafka2.internal.softwareheritage.org
+ - kafka3.internal.softwareheritage.org
+ - kafka4.internal.softwareheritage.org
+ group_id: swh.search.journal_client.indexed-v0.11
+ object_types:
+ - origin_intrinsic_metadata
+ - origin_extrinsic_metadata
+ prefix: swh.journal.indexed
+---
+# Source: swh/templates/search/journal-client-configmap.yaml
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: search-journal-client-objects-configuration-template
+ namespace: swh
+data:
+ config.yml.template: |
+ search:
+ cls: remote
+ url: http://search-rpc-ingress
+ storage:
+ cls: remote
+ url: http://saam.internal.softwareheritage.org:5002
+ journal:
+ brokers:
+ - kafka1.internal.softwareheritage.org
+ - kafka2.internal.softwareheritage.org
+ - kafka3.internal.softwareheritage.org
+ - kafka4.internal.softwareheritage.org
+ group_id: swh.search.journal_client-v0.11
+ object_types:
+ - origin
+ - origin_visit_status
+ prefix: swh.journal.objects
+---
+# Source: swh/templates/search/rpc-configmap.yaml
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ namespace: swh
+ name: search-rpc-configuration-template
+data:
+ config.yml.template: |
+ search:
+
+ cls: elasticsearch
+ indexes:
+ origin:
+ index: origin-v0.11
+ read_alias: origin-read
+ write_alias: origin-write
+ hosts:
+
+ - host: search-esnode4.internal.softwareheritage.org
+ port: 9200
+ - host: search-esnode5.internal.softwareheritage.org
+ port: 9200
+ - host: search-esnode6.internal.softwareheritage.org
+ port: 9200
+---
# Source: swh/templates/statsd-exporter/configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: prometheus-statsd-exporter
namespace: swh
data:
config.yml: |
defaults:
timer_type: histogram
@@ -15400,20 +15477,30 @@
namespace: default
spec:
ports:
- name: http
port: 443
protocol: TCP
targetPort: 9443
selector:
app: keda-admission-webhooks
---
+# Source: swh/templates/external-services/cname.yaml
+apiVersion: v1
+kind: Service
+metadata:
+ name: search-rpc-ingress
+ namespace: swh
+spec:
+ type: ExternalName
+ externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
+---
# Source: swh/templates/graphql/service.yaml
apiVersion: v1
kind: Service
metadata:
name: graphql
namespace: swh
spec:
type: ClusterIP
selector:
app: graphql
@@ -15451,20 +15538,35 @@
namespace: swh
spec:
type: ClusterIP
selector:
app: scheduler-rpc
ports:
- port: 5008
targetPort: 5008
name: rpc
---
+# Source: swh/templates/search/rpc-service.yaml
+apiVersion: v1
+kind: Service
+metadata:
+ name: search-rpc
+ namespace: swh
+spec:
+ type: ClusterIP
+ selector:
+ app: search-rpc
+ ports:
+ - port: 5010
+ targetPort: 5010
+ name: rpc
+---
# Source: swh/templates/statsd-exporter/service.yaml
apiVersion: v1
kind: Service
metadata:
name: prometheus-statsd-exporter
namespace: swh
labels:
app: prometheus-statsd-exporter
spec:
type: ClusterIP
@@ -15992,21 +16094,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: graphql
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 547d1108924c26e9a377908838b7fdb97999d41d7aeb5c52efa8fc3b0d10a2a1
+ checksum/config: 4638e4ad458c5c9204149648fd843cc423171e8e3250edcb98bc8f36562ae9f9
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/rpc
operator: In
values:
- "true"
@@ -26819,20 +26921,343 @@
name: scrubber-storagechecker-secondary-snapshot-references-template
defaultMode: 0777
items:
- key: "config.yml.template"
path: "config.yml.template"
- name: database-utils
configMap:
name: database-utils
defaultMode: 0555
---
+# Source: swh/templates/search/journal-client-deployment.yaml
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ namespace: swh
+ name: search-journal-client-indexed
+ labels:
+ app: search-journal-client-indexed
+spec:
+ revisionHistoryLimit: 2
+ selector:
+ matchLabels:
+ app: search-journal-client-indexed
+ strategy:
+ type: RollingUpdate
+ rollingUpdate:
+ maxSurge: 1
+ template:
+ metadata:
+ labels:
+ app: search-journal-client-indexed
+ annotations:
+ checksum/config: 4e3fed7fa56755e9a4ec6e5e8029227976a474753ef79e43c39693443bfccca5
+ spec:
+ affinity:
+ nodeAffinity:
+ requiredDuringSchedulingIgnoredDuringExecution:
+ nodeSelectorTerms:
+ - matchExpressions:
+ - key: swh/journal_client
+ operator: In
+ values:
+ - "true"
+ priorityClassName: swh-normal-workload
+
+ initContainers:
+ - name: prepare-configuration
+ image: debian:bullseye
+ imagePullPolicy: IfNotPresent
+ command:
+ - /bin/bash
+ args:
+ - -c
+ - eval echo "\"$(</etc/swh/configuration-template/config.yml.template)\"" > /etc/swh/config.yml
+ volumeMounts:
+ - name: configuration
+ mountPath: /etc/swh
+ - name: configuration-template
+ mountPath: /etc/swh/configuration-template
+ containers:
+ - name: search-journal-client-indexed
+ resources:
+ requests:
+ memory: 512Mi
+ cpu: 500m
+ image: container-registry.softwareheritage.org/swh/infra/swh-apps/search:20231205.2
+ command:
+ - /opt/swh/entrypoint.sh
+ args:
+ - swh
+ - --log-level
+ - INFO
+ - search
+ - --config-file
+ - /etc/swh/config.yml
+ - journal-client
+ - objects
+ env:
+ - name: STATSD_HOST
+ value: prometheus-statsd-exporter
+ - name: STATSD_PORT
+ value: "9125"
+ - name: SWH_CONFIG_FILENAME
+ value: /etc/swh/config.yml
+ - name: LOG_LEVEL
+ value: INFO
+ - name: SWH_SENTRY_ENVIRONMENT
+ value: production
+ - name: SWH_MAIN_PACKAGE
+ value: swh.search
+ - name: SWH_SENTRY_DSN
+ valueFrom:
+ secretKeyRef:
+ name: swh-search-sentry-secret
+ key: sentry-dsn
+ # if the setting doesn't exist, sentry issue pushes will be disabled
+ optional: false
+ - name: SWH_SENTRY_DISABLE_LOGGING_EVENTS
+ value: "true"
+ imagePullPolicy: IfNotPresent
+ volumeMounts:
+ - name: configuration
+ mountPath: /etc/swh
+ volumes:
+ - name: configuration
+ emptyDir: {}
+ - name: configuration-template
+ configMap:
+ name: search-journal-client-indexed-configuration-template
+ items:
+ - key: "config.yml.template"
+ path: "config.yml.template"
+---
+# Source: swh/templates/search/journal-client-deployment.yaml
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ namespace: swh
+ name: search-journal-client-objects
+ labels:
+ app: search-journal-client-objects
+spec:
+ revisionHistoryLimit: 2
+ selector:
+ matchLabels:
+ app: search-journal-client-objects
+ strategy:
+ type: RollingUpdate
+ rollingUpdate:
+ maxSurge: 1
+ template:
+ metadata:
+ labels:
+ app: search-journal-client-objects
+ annotations:
+ checksum/config: ff78968853b36a07f33030c3cc75fde0193b517154918320d3060b555c4cab13
+ spec:
+ affinity:
+ nodeAffinity:
+ requiredDuringSchedulingIgnoredDuringExecution:
+ nodeSelectorTerms:
+ - matchExpressions:
+ - key: swh/journal_client
+ operator: In
+ values:
+ - "true"
+ priorityClassName: swh-normal-workload
+
+ initContainers:
+ - name: prepare-configuration
+ image: debian:bullseye
+ imagePullPolicy: IfNotPresent
+ command:
+ - /bin/bash
+ args:
+ - -c
+ - eval echo "\"$(</etc/swh/configuration-template/config.yml.template)\"" > /etc/swh/config.yml
+ volumeMounts:
+ - name: configuration
+ mountPath: /etc/swh
+ - name: configuration-template
+ mountPath: /etc/swh/configuration-template
+ containers:
+ - name: search-journal-client-objects
+ resources:
+ requests:
+ memory: 512Mi
+ cpu: 500m
+ image: container-registry.softwareheritage.org/swh/infra/swh-apps/search:20231205.2
+ command:
+ - /opt/swh/entrypoint.sh
+ args:
+ - swh
+ - --log-level
+ - INFO
+ - search
+ - --config-file
+ - /etc/swh/config.yml
+ - journal-client
+ - objects
+ env:
+ - name: STATSD_HOST
+ value: prometheus-statsd-exporter
+ - name: STATSD_PORT
+ value: "9125"
+ - name: SWH_CONFIG_FILENAME
+ value: /etc/swh/config.yml
+ - name: LOG_LEVEL
+ value: INFO
+ - name: SWH_SENTRY_ENVIRONMENT
+ value: production
+ - name: SWH_MAIN_PACKAGE
+ value: swh.search
+ - name: SWH_SENTRY_DSN
+ valueFrom:
+ secretKeyRef:
+ name: swh-search-sentry-secret
+ key: sentry-dsn
+ # if the setting doesn't exist, sentry issue pushes will be disabled
+ optional: false
+ - name: SWH_SENTRY_DISABLE_LOGGING_EVENTS
+ value: "true"
+ imagePullPolicy: IfNotPresent
+ volumeMounts:
+ - name: configuration
+ mountPath: /etc/swh
+ volumes:
+ - name: configuration
+ emptyDir: {}
+ - name: configuration-template
+ configMap:
+ name: search-journal-client-objects-configuration-template
+ items:
+ - key: "config.yml.template"
+ path: "config.yml.template"
+---
+# Source: swh/templates/search/rpc-deployment.yaml
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ namespace: swh
+ name: search-rpc
+ labels:
+ app: search-rpc
+spec:
+ revisionHistoryLimit: 2
+ selector:
+ matchLabels:
+ app: search-rpc
+ strategy:
+ type: RollingUpdate
+ rollingUpdate:
+ maxSurge: 1
+ template:
+ metadata:
+ labels:
+ app: search-rpc
+ annotations:
+ checksum/config: 2a3fca8a6669b82773189a047b34e1cd9ab7b55f49dbd00deae66214a3c4bc30
+ spec:
+ affinity:
+ nodeAffinity:
+ requiredDuringSchedulingIgnoredDuringExecution:
+ nodeSelectorTerms:
+ - matchExpressions:
+ - key: swh/rpc
+ operator: In
+ values:
+ - "true"
+ priorityClassName: swh-frontend-rpc
+
+ initContainers:
+ - name: prepare-configuration
+ image: debian:bullseye
+ imagePullPolicy: IfNotPresent
+ command:
+ - /bin/bash
+ args:
+ - -c
+ - eval echo "\"$(</etc/swh/configuration-template/config.yml.template)\"" > /etc/swh/config.yml
+ volumeMounts:
+ - name: configuration
+ mountPath: /etc/swh
+ - name: configuration-template
+ mountPath: /etc/swh/configuration-template
+ containers:
+ - name: search-rpc
+ resources:
+ requests:
+ memory: 512Mi
+ cpu: 500m
+ image: container-registry.softwareheritage.org/swh/infra/swh-apps/search:20231205.2
+ imagePullPolicy: IfNotPresent
+ ports:
+ - containerPort: 5010
+ name: rpc
+ readinessProbe:
+ httpGet:
+ path: /
+ port: rpc
+ initialDelaySeconds: 15
+ failureThreshold: 30
+ periodSeconds: 5
+ livenessProbe:
+ httpGet:
+ path: /
+ port: rpc
+ initialDelaySeconds: 10
+ periodSeconds: 5
+ command:
+ - /bin/bash
+ args:
+ - -c
+ - /opt/swh/entrypoint.sh
+ env:
+ - name: THREADS
+ value: "5"
+ - name: WORKERS
+ value: "4"
+ - name: TIMEOUT
+ value: "3600"
+ - name: STATSD_HOST
+ value: prometheus-statsd-exporter
+ - name: STATSD_PORT
+ value: "9125"
+ - name: LOG_LEVEL
+ value: INFO
+ - name: SWH_SENTRY_ENVIRONMENT
+ value: production
+ - name: SWH_MAIN_PACKAGE
+ value: swh.search
+ - name: SWH_SENTRY_DSN
+ valueFrom:
+ secretKeyRef:
+ name: swh-search-sentry-secret
+ key: sentry-dsn
+ # if the setting doesn't exist, sentry issue pushes will be disabled
+ optional: false
+ - name: SWH_SENTRY_DISABLE_LOGGING_EVENTS
+ value: "true"
+ volumeMounts:
+ - name: configuration
+ mountPath: /etc/swh
+ volumes:
+ - name: configuration
+ emptyDir: {}
+ - name: configuration-template
+ configMap:
+ name: search-rpc-configuration-template
+ items:
+ - key: "config.yml.template"
+ path: "config.yml.template"
+---
# Source: swh/templates/statsd-exporter/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: prometheus-statsd-exporter
namespace: swh
labels:
app: prometheus-statsd-exporter
spec:
replicas: 1
@@ -27198,20 +27623,43 @@
defaultMode: 0777
items:
- key: "config.yml.template"
path: "config.yml.template"
- name: toolbox-script-utils
configMap:
name: toolbox-script-utils
defaultMode: 0555
---
+# Source: swh/templates/search/rpc-autoscale.yaml
+apiVersion: autoscaling/v2
+kind: HorizontalPodAutoscaler
+metadata:
+ namespace: swh
+ name: search-rpc
+ labels:
+ app: search-rpc
+spec:
+ scaleTargetRef:
+ apiVersion: apps/v1
+ kind: Deployment
+ name: search-rpc
+ minReplicas: 2
+ maxReplicas: 4
+ metrics:
+ - type: Resource
+ resource:
+ name: cpu
+ target:
+ type: Utilization
+ averageUtilization: 100
+---
# Source: swh/templates/scheduler/update-metrics-cronjob.yaml
apiVersion: batch/v1
kind: CronJob
metadata:
name: scheduler-update-metrics-cronjob
spec:
# By default, every 4h at midnight
schedule: "27 3-23/4 * * *"
concurrencyPolicy: Forbid
jobTemplate:
@@ -27380,20 +27828,46 @@
http:
paths:
- path: /scheduler_metrics/get
pathType: Prefix
backend:
service:
name: scheduler-rpc
port:
number: 5008
---
+# Source: swh/templates/search/rpc-ingress.yaml
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+ namespace: swh
+ name: search-rpc-ingress-default
+ annotations:
+ nginx.ingress.kubernetes.io/proxy-body-size: 4G
+ nginx.ingress.kubernetes.io/proxy-connect-timeout: "90"
+ nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
+ nginx.ingress.kubernetes.io/proxy-request-buffering: "on"
+ nginx.ingress.kubernetes.io/proxy-send-timeout: "90"
+
+spec:
+ rules:
+ - host: search-rpc-ingress
+ http:
+ paths:
+ - path: /
+ pathType: Prefix
+ backend:
+ service:
+ name: search-rpc
+ port:
+ number: 5010
+---
# Source: swh/charts/keda/templates/metrics-server/apiservice.yaml
apiVersion: apiregistration.k8s.io/v1
kind: APIService
metadata:
annotations:
labels:
app.kubernetes.io/name: v1beta1.external.metrics.k8s.io
helm.sh/chart: keda-2.11.0
app.kubernetes.io/component: operator
app.kubernetes.io/managed-by: Helm
------------- diff for environment production namespace swh-cassandra -------------
--- /tmp/swh-chart.swh.mNLqGSHj/production-swh-cassandra.before 2023-12-13 11:04:02.485550542 +0100
+++ /tmp/swh-chart.swh.mNLqGSHj/production-swh-cassandra.after 2023-12-13 11:04:02.917550576 +0100
@@ -144,21 +144,21 @@
namespace: swh-cassandra
data:
# TODO: rename to not have a dot in the name to allow testing
config.yml: |
storage:
cls: remote
url: http://storage-cassandra:5002
search:
cls: remote
- url: http://moma.internal.softwareheritage.org:5010
+ url: http://search-rpc-ingress
debug: false
introspection: true
max_raw_content_size: 10000
max_query_cost:
anonymous: 50
user: 500
@@ -1419,21 +1419,21 @@
data:
config.yml.template: |
instance_name: webapp-cassandra.internal.softwareheritage.org
allowed_hosts:
- webapp-cassandra.internal.softwareheritage.org
storage:
cls: remote
url: http://storage-cassandra:5002
search:
cls: remote
- url: http://moma.internal.softwareheritage.org:5010
+ url: http://search-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
vault:
cls: remote
url: http://vangogh.euwest.azure.internal.softwareheritage.org:5005/
indexer_storage:
cls: remote
url: http://saam.internal.softwareheritage.org:5007/
counters_backend: swh-counters
@@ -11091,20 +11091,30 @@
namespace: default
spec:
ports:
- name: http
port: 443
protocol: TCP
targetPort: 9443
selector:
app: keda-admission-webhooks
---
+# Source: swh/templates/external-services/cname.yaml
+apiVersion: v1
+kind: Service
+metadata:
+ name: search-rpc-ingress
+ namespace: swh-cassandra
+spec:
+ type: ExternalName
+ externalName: archive-production-rke2-ingress-nginx-controller.ingress-nginx.svc.cluster.local
+---
# Source: swh/templates/graphql/service.yaml
apiVersion: v1
kind: Service
metadata:
name: graphql
namespace: swh-cassandra
spec:
type: ClusterIP
selector:
app: graphql
@@ -11542,21 +11552,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: graphql
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 22f3c0100d41d5a3d481482a82fd31d746b97913a76c9eec1be6dd4136e8a186
+ checksum/config: 14ee4acbee58c8d3e90ceedec2cf10311ca69987dbf960f268111d7c8e8bee29
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/rpc
operator: In
values:
- "true"
@@ -14195,21 +14205,21 @@
app: web
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: web
annotations:
- checksum/config: 9a91046a3e85f7a73ca977a8fe2010dc763fd86b2c1ee070aa6987fa10032376
+ checksum/config: ba9fdc25c5428f5b90f51e52a464e398b9ec2752dabf40e6e0a937957ba456a1
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/web
operator: In
values:
- "true"
[2]
make swh-helm-diff (storage rpc)
[swh] Comparing changes between branches production and migrate-rpc-services-to-prod (per environment)...
Your branch is ahead of 'origin/production' by 1 commit.
(use "git push" to publish your local commits)
[swh] Generate config in production branch for environment staging, namespace swh...
[swh] Generate config in production branch for environment staging, namespace swh-cassandra...
[swh] Generate config in production branch for environment staging, namespace swh-cassandra-next-version...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment staging...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment staging...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment staging...
Your branch is ahead of 'origin/production' by 1 commit.
(use "git push" to publish your local commits)
[swh] Generate config in production branch for environment production, namespace swh...
[swh] Generate config in production branch for environment production, namespace swh-cassandra...
[swh] Generate config in production branch for environment production, namespace swh-cassandra-next-version...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment production...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment production...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment production...
------------- diff for environment staging namespace swh -------------
No differences
------------- diff for environment staging namespace swh-cassandra -------------
No differences
------------- diff for environment staging namespace swh-cassandra-next-version -------------
No differences
------------- diff for environment production namespace swh -------------
--- /tmp/swh-chart.swh.Lc0i0BC6/production-swh.before 2023-12-13 11:29:41.213454477 +0100
+++ /tmp/swh-chart.swh.Lc0i0BC6/production-swh.after 2023-12-13 11:29:41.677454411 +0100
@@ -5458,20 +5458,114 @@
- 0.6
- 0.65
- 0.7
- 0.75
- 0.8
- 0.85
- 0.9
- 0.95
- 1.
---
+# Source: swh/templates/storage/configmap.yaml
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ namespace: swh
+ name: storage-postgresql-azure-readonly-configuration-template
+data:
+ config.yml.template: |
+ storage:
+ cls: pipeline
+ steps:
+ - cls: retry
+ - cls: postgresql
+ db: host=db.internal.softwareheritage.org port=5432 user=guest dbname=softwareheritage password=${POSTGRESQL_PASSWORD}
+ objstorage:
+ cls: multiplexer
+ objstorages:
+ - cls: filtered
+ filters_conf:
+ - type: readonly
+ storage_conf:
+ accounts:
+ "0":
+ account_name: ${ACCOUNT_NAME_0}
+ api_secret_key: ${API_SECRET_KEY_0}
+ container_name: contents
+ "1":
+ account_name: ${ACCOUNT_NAME_1}
+ api_secret_key: ${API_SECRET_KEY_1}
+ container_name: contents
+ "2":
+ account_name: ${ACCOUNT_NAME_2}
+ api_secret_key: ${API_SECRET_KEY_2}
+ container_name: contents
+ "3":
+ account_name: ${ACCOUNT_NAME_3}
+ api_secret_key: ${API_SECRET_KEY_3}
+ container_name: contents
+ "4":
+ account_name: ${ACCOUNT_NAME_4}
+ api_secret_key: ${API_SECRET_KEY_4}
+ container_name: contents
+ "5":
+ account_name: ${ACCOUNT_NAME_5}
+ api_secret_key: ${API_SECRET_KEY_5}
+ container_name: contents
+ "6":
+ account_name: ${ACCOUNT_NAME_6}
+ api_secret_key: ${API_SECRET_KEY_6}
+ container_name: contents
+ "7":
+ account_name: ${ACCOUNT_NAME_7}
+ api_secret_key: ${API_SECRET_KEY_7}
+ container_name: contents
+ "8":
+ account_name: ${ACCOUNT_NAME_8}
+ api_secret_key: ${API_SECRET_KEY_8}
+ container_name: contents
+ "9":
+ account_name: ${ACCOUNT_NAME_9}
+ api_secret_key: ${API_SECRET_KEY_9}
+ container_name: contents
+ a:
+ account_name: ${ACCOUNT_NAME_10}
+ api_secret_key: ${API_SECRET_KEY_10}
+ container_name: contents
+ b:
+ account_name: ${ACCOUNT_NAME_11}
+ api_secret_key: ${API_SECRET_KEY_11}
+ container_name: contents
+ c:
+ account_name: ${ACCOUNT_NAME_12}
+ api_secret_key: ${API_SECRET_KEY_12}
+ container_name: contents
+ d:
+ account_name: ${ACCOUNT_NAME_13}
+ api_secret_key: ${API_SECRET_KEY_13}
+ container_name: contents
+ e:
+ account_name: ${ACCOUNT_NAME_14}
+ api_secret_key: ${API_SECRET_KEY_14}
+ container_name: contents
+ f:
+ account_name: ${ACCOUNT_NAME_15}
+ api_secret_key: ${API_SECRET_KEY_15}
+ container_name: contents
+ cls: azure-prefixed
+ - cls: filtered
+ filters_conf:
+ - type: readonly
+ storage_conf:
+ cls: remote
+ url: http://objstorage.internal.softwareheritage.org:5003/
+---
# Source: swh/templates/toolbox/configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: toolbox-indexer-storage-template
namespace: swh
data:
config.yml.template: |
indexer_storage:
cls: postgresql
@@ -15574,20 +15668,35 @@
app: prometheus-statsd-exporter
ports:
- name: statsd
port: 9125
targetPort: 9125
protocol: UDP
- name: http
port: 9102
targetPort: 9102
---
+# Source: swh/templates/storage/service.yaml
+apiVersion: v1
+kind: Service
+metadata:
+ name: storage-postgresql-azure-readonly
+ namespace: swh
+spec:
+ type: ClusterIP
+ selector:
+ app: storage-postgresql-azure-readonly
+ ports:
+ - port: 5002
+ targetPort: 5002
+ name: rpc
+---
# Source: swh/charts/keda/templates/manager/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: keda-operator
namespace: default
annotations:
{}
labels:
app: keda-operator
@@ -27282,20 +27391,383 @@
volumeMounts:
- name: config
mountPath: /etc/prometheus/statsd-mapping.yml
subPath: config.yml
readOnly: true
volumes:
- name: config
configMap:
name: prometheus-statsd-exporter
---
+# Source: swh/templates/storage/deployment.yaml
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ namespace: swh
+ name: storage-postgresql-azure-readonly
+ labels:
+ app: storage-postgresql-azure-readonly
+spec:
+ revisionHistoryLimit: 2
+ selector:
+ matchLabels:
+ app: storage-postgresql-azure-readonly
+ strategy:
+ type: RollingUpdate
+ rollingUpdate:
+ maxSurge: 1
+ template:
+ metadata:
+ labels:
+ app: storage-postgresql-azure-readonly
+ annotations:
+ checksum/config: 58e997573c84ea09fbcea0586f32d39c5f75001523a94486ded7227b98f2419d
+ checksum/database-utils: 95e3ec2d5d9a9195227631abff0736a8d94bcbcc795abf56981a586844da0c79
+ checksum/config-utils: 0cce256531366ac8ea2a0bde2a8f10937284a0f599f45fabe6babbbc096e179d
+ spec:
+ affinity:
+ nodeAffinity:
+ requiredDuringSchedulingIgnoredDuringExecution:
+ nodeSelectorTerms:
+ - matchExpressions:
+ - key: swh/storage
+ operator: In
+ values:
+ - "true"
+ priorityClassName: swh-frontend-rpc
+ initContainers:
+ - name: prepare-configuration
+ image: container-registry.softwareheritage.org/swh/infra/swh-apps/utils:20231211.1
+ imagePullPolicy: IfNotPresent
+ command:
+ - /entrypoints/prepare-configuration.sh
+ env:
+
+
+ - name: ACCOUNT_NAME_0
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 0_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_1
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 1_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_10
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 10_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_11
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 11_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_12
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 12_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_13
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 13_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_14
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 14_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_15
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 15_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_2
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 2_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_3
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 3_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_4
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 4_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_5
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 5_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_6
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 6_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_7
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 7_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_8
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 8_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: ACCOUNT_NAME_9
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 9_account_name
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_0
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 0_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_1
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 1_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_10
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 10_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_11
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 11_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_12
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 12_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_13
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 13_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_14
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 14_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_15
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 15_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_2
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 2_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_3
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 3_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_4
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 4_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_5
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 5_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_6
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 6_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_7
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 7_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_8
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 8_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: API_SECRET_KEY_9
+ valueFrom:
+ secretKeyRef:
+ name: swh-objstorage-config
+ key: 9_api_secret_key
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ - name: POSTGRESQL_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ name: swh-storage-postgresql-common-secret
+ key: postgres-guest-password
+ # 'name' secret must exist & include that ^ key
+ optional: false
+ volumeMounts:
+ - name: configuration
+ mountPath: /etc/swh
+ - name: configuration-template
+ mountPath: /etc/swh/configuration-template
+ - name: config-utils
+ mountPath: /entrypoints
+ readOnly: true
+
+
+ containers:
+ - name: storage-postgresql-azure-readonly
+ resources:
+ requests:
+ memory: 1500Mi
+ cpu: 500m
+ image: container-registry.softwareheritage.org/swh/infra/swh-apps/storage:20231205.1
+ imagePullPolicy: IfNotPresent
+ ports:
+ - containerPort: 5002
+ name: rpc
+ readinessProbe:
+ httpGet:
+ path: /
+ port: rpc
+ initialDelaySeconds: 15
+ failureThreshold: 30
+ periodSeconds: 5
+ livenessProbe:
+ httpGet:
+ path: /
+ port: rpc
+ initialDelaySeconds: 10
+ periodSeconds: 5
+ command:
+ - /bin/bash
+ args:
+ - -c
+ - /opt/swh/entrypoint.sh
+ env:
+ - name: THREADS
+ value: "4"
+ - name: WORKERS
+ value: "8"
+ - name: TIMEOUT
+ value: "60"
+ - name: STATSD_HOST
+ value: prometheus-statsd-exporter
+ - name: STATSD_PORT
+ value: "9125"
+ - name: LOG_LEVEL
+ value: "INFO"
+ - name: SWH_SENTRY_ENVIRONMENT
+ value: production
+ - name: SWH_MAIN_PACKAGE
+ value: swh.storage
+ - name: SWH_SENTRY_DSN
+ valueFrom:
+ secretKeyRef:
+ name: common-secrets
+ key: storage-sentry-dsn
+ # 'name' secret should exist & include key
+ # if the setting doesn't exist, sentry pushes will be disabled
+ optional: true
+ - name: SWH_SENTRY_DISABLE_LOGGING_EVENTS
+ value: "true"
+ volumeMounts:
+ - name: configuration
+ mountPath: /etc/swh
+ volumes:
+ - name: configuration
+ emptyDir: {}
+ - name: configuration-template
+ configMap:
+ name: storage-postgresql-azure-readonly-configuration-template
+ items:
+ - key: "config.yml.template"
+ path: "config.yml.template"
+ - name: database-utils
+ configMap:
+ name: database-utils
+ defaultMode: 0555
+ - name: config-utils
+ configMap:
+ name: config-utils
+ defaultMode: 0555
+---
# Source: swh/templates/toolbox/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: swh-toolbox
namespace: swh
labels:
app: swh-toolbox
spec:
revisionHistoryLimit: 2
@@ -27646,20 +28118,43 @@
minReplicas: 2
maxReplicas: 4
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 100
---
+# Source: swh/templates/storage/autoscaling.yaml
+apiVersion: autoscaling/v2
+kind: HorizontalPodAutoscaler
+metadata:
+ namespace: swh
+ name: storage-postgresql-azure-readonly
+ labels:
+ app: storage-postgresql-azure-readonly
+spec:
+ scaleTargetRef:
+ apiVersion: apps/v1
+ kind: Deployment
+ name: storage-postgresql-azure-readonly
+ minReplicas: 2
+ maxReplicas: 10
+ metrics:
+ - type: Resource
+ resource:
+ name: cpu
+ target:
+ type: Utilization
+ averageUtilization: 150
+---
# Source: swh/templates/scheduler/update-metrics-cronjob.yaml
apiVersion: batch/v1
kind: CronJob
metadata:
name: scheduler-update-metrics-cronjob
spec:
# By default, every 4h at midnight
schedule: "27 3-23/4 * * *"
concurrencyPolicy: Forbid
jobTemplate:
@@ -27854,20 +28349,44 @@
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: search-rpc
port:
number: 5010
---
+# Source: swh/templates/storage/ingress.yaml
+apiVersion: networking.k8s.io/v1
+kind: Ingress
+metadata:
+ namespace: swh
+ name: storage-postgresql-azure-readonly-ingress-default
+ annotations:
+ nginx.ingress.kubernetes.io/whitelist-source-range: 192.168.101.0/24
+ nginx.ingress.kubernetes.io/proxy-body-size: 4G
+ nginx.ingress.kubernetes.io/proxy-buffering: "on"
+
+spec:
+ rules:
+ - host: storage-postgresql-read-only-rpc-ingress
+ http:
+ paths:
+ - path: /
+ pathType: Prefix
+ backend:
+ service:
+ name: storage-postgresql-azure-readonly
+ port:
+ number: 5002
+---
# Source: swh/charts/keda/templates/metrics-server/apiservice.yaml
apiVersion: apiregistration.k8s.io/v1
kind: APIService
metadata:
annotations:
labels:
app.kubernetes.io/name: v1beta1.external.metrics.k8s.io
helm.sh/chart: keda-2.11.0
app.kubernetes.io/component: operator
app.kubernetes.io/managed-by: Helm
------------- diff for environment production namespace swh-cassandra -------------
--- /tmp/swh-chart.swh.Lc0i0BC6/production-swh-cassandra.before 2023-12-13 11:29:41.401454450 +0100
+++ /tmp/swh-chart.swh.Lc0i0BC6/production-swh-cassandra.after 2023-12-13 11:29:41.849454386 +0100
@@ -13764,238 +13764,238 @@
image: container-registry.softwareheritage.org/swh/infra/swh-apps/utils:20231211.1
imagePullPolicy: IfNotPresent
command:
- /entrypoints/prepare-configuration.sh
env:
- name: ACCOUNT_NAME_0
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 0_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_1
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 1_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_10
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 10_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_11
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 11_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_12
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 12_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_13
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 13_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_14
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 14_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_15
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 15_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_2
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 2_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_3
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 3_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_4
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 4_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_5
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 5_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_6
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 6_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_7
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 7_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_8
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 8_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: ACCOUNT_NAME_9
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 9_account_name
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_0
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 0_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_1
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 1_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_10
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 10_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_11
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 11_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_12
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 12_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_13
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 13_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_14
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 14_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_15
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 15_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_2
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 2_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_3
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 3_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_4
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 4_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_5
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 5_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_6
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 6_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_7
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 7_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_8
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 8_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: API_SECRET_KEY_9
valueFrom:
secretKeyRef:
- name: swh-cassandra-objstorage-config
+ name: swh-objstorage-config
key: 9_api_secret_key
# 'name' secret must exist & include that ^ key
optional: false
- name: CASSANDRA_PASSWORD
valueFrom:
secretKeyRef:
name: common-secrets
key: cassandra-swh-rw-password
# 'name' secret must exist & include that ^ key
optional: false
[3]
make swh-helm-diff (migrate services to use storage rpc)
[swh] Comparing changes between branches production and migrate-rpc-services-to-prod (per environment)...
Your branch is ahead of 'origin/production' by 2 commits.
(use "git push" to publish your local commits)
[swh] Generate config in production branch for environment staging, namespace swh...
[swh] Generate config in production branch for environment staging, namespace swh-cassandra...
[swh] Generate config in production branch for environment staging, namespace swh-cassandra-next-version...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment staging...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment staging...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment staging...
Your branch is ahead of 'origin/production' by 2 commits.
(use "git push" to publish your local commits)
[swh] Generate config in production branch for environment production, namespace swh...
[swh] Generate config in production branch for environment production, namespace swh-cassandra...
[swh] Generate config in production branch for environment production, namespace swh-cassandra-next-version...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment production...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment production...
[swh] Generate config in migrate-rpc-services-to-prod branch for environment production...
------------- diff for environment staging namespace swh -------------
No differences
------------- diff for environment staging namespace swh-cassandra -------------
No differences
------------- diff for environment staging namespace swh-cassandra-next-version -------------
No differences
------------- diff for environment production namespace swh -------------
--- /tmp/swh-chart.swh.sOuiUH0l/production-swh.before 2023-12-13 12:22:54.696905114 +0100
+++ /tmp/swh-chart.swh.sOuiUH0l/production-swh.after 2023-12-13 12:22:55.152904990 +0100
@@ -172,21 +172,21 @@
name: checker-deposit-template
namespace: swh
data:
config.yml.template: |
extraction_dir: "/tmp/swh.checker.deposit/"
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_modules:
- swh.deposit.loader.tasks
task_queues:
- swh.deposit.loader.tasks.ChecksDepositTsk
deposit:
url: https://deposit.softwareheritage.org/1/private/
auth:
@@ -247,21 +247,21 @@
name: graphql
namespace: swh
data:
# TODO: rename to not have a dot in the name to allow testing
config.yml: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
search:
cls: remote
url: http://search-rpc-ingress
debug: false
introspection: true
max_raw_content_size: 10000
@@ -312,21 +312,21 @@
metadata:
name: lister-bitbucket-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.bitbucket.tasks.IncrementalBitBucketLister
- swh.lister.bitbucket.tasks.FullBitBucketRelister
@@ -406,21 +406,21 @@
metadata:
name: lister-bower-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.bower.tasks.BowerListerTask
sentry_settings_for_celery_tasks:
@@ -499,21 +499,21 @@
metadata:
name: lister-cgit-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.cgit.tasks.CGitListerTask
sentry_settings_for_celery_tasks:
@@ -592,21 +592,21 @@
metadata:
name: lister-cran-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.cran.tasks.CRANListerTask
sentry_settings_for_celery_tasks:
@@ -685,21 +685,21 @@
metadata:
name: lister-debian-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.debian.tasks.DebianListerTask
sentry_settings_for_celery_tasks:
@@ -778,21 +778,21 @@
metadata:
name: lister-gitea-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.gitea.tasks.IncrementalGiteaLister
- swh.lister.gitea.tasks.RangeGiteaLister
- swh.lister.gitea.tasks.FullGiteaRelister
@@ -873,21 +873,21 @@
metadata:
name: lister-github-full-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.github.tasks.FullGitHubRelister
- swh.lister.github.tasks.RangeGitHubLister
@@ -967,21 +967,21 @@
metadata:
name: lister-github-incremental-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.github.tasks.IncrementalGitHubLister
sentry_settings_for_celery_tasks:
@@ -1060,21 +1060,21 @@
metadata:
name: lister-gitiles-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.gitiles.tasks.GitilesListerTask
sentry_settings_for_celery_tasks:
@@ -1153,21 +1153,21 @@
metadata:
name: lister-gitlab-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.gitlab.tasks.IncrementalGitLabLister
- swh.lister.gitlab.tasks.FullGitLabRelister
@@ -1247,21 +1247,21 @@
metadata:
name: lister-gitweb-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.gitweb.tasks.GitwebListerTask
sentry_settings_for_celery_tasks:
@@ -1340,21 +1340,21 @@
metadata:
name: lister-gnu-full-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.gnu.tasks.GNUListerTask
sentry_settings_for_celery_tasks:
@@ -1433,21 +1433,21 @@
metadata:
name: lister-gogs-full-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.gogs.tasks.FullGogsRelister
sentry_settings_for_celery_tasks:
@@ -1526,21 +1526,21 @@
metadata:
name: lister-golang-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.golang.tasks.FullGolangLister
- swh.lister.golang.tasks.IncrementalGolangLister
@@ -1620,21 +1620,21 @@
metadata:
name: lister-launchpad-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.launchpad.tasks.FullLaunchpadLister
- swh.lister.launchpad.tasks.IncrementalLaunchpadLister
@@ -1714,21 +1714,21 @@
metadata:
name: lister-maven-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.maven.tasks.FullMavenLister
- swh.lister.maven.tasks.IncrementalMavenLister
@@ -1808,21 +1808,21 @@
metadata:
name: lister-npm-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.npm.tasks.NpmListerTask
sentry_settings_for_celery_tasks:
@@ -1901,21 +1901,21 @@
metadata:
name: lister-opam-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.opam.tasks.OpamListerTask
sentry_settings_for_celery_tasks:
@@ -1994,21 +1994,21 @@
metadata:
name: lister-packagist-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.packagist.tasks.PackagistListerTask
sentry_settings_for_celery_tasks:
@@ -2087,21 +2087,21 @@
metadata:
name: lister-pagure-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.pagure.tasks.PagureListerTask
sentry_settings_for_celery_tasks:
@@ -2180,21 +2180,21 @@
metadata:
name: lister-phabricator-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.phabricator.tasks.FullPhabricatorLister
sentry_settings_for_celery_tasks:
@@ -2273,21 +2273,21 @@
metadata:
name: lister-pubdev-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.pubdev.tasks.PubDevListerTask
sentry_settings_for_celery_tasks:
@@ -2366,21 +2366,21 @@
metadata:
name: lister-pypi-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.pypi.tasks.PyPIListerTask
sentry_settings_for_celery_tasks:
@@ -2459,21 +2459,21 @@
metadata:
name: lister-rpm-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.rpm.tasks.FullRPMLister
- swh.lister.rpm.tasks.IncrementalRPMLister
@@ -2553,21 +2553,21 @@
metadata:
name: lister-sourceforge-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.sourceforge.tasks.FullSourceForgeLister
- swh.lister.sourceforge.tasks.IncrementalSourceForgeLister
@@ -2647,21 +2647,21 @@
metadata:
name: lister-stagit-template
namespace: swh
data:
config.yml.template: |
storage:
cls: pipeline
steps:
- cls: retry
- cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
scheduler:
cls: remote
url: http://scheduler.internal.softwareheritage.org
celery:
task_broker: amqp://swhconsumer:${AMQP_PASSWORD}@rabbitmq.internal.softwareheritage.org:5672/%2f
task_acks_late: true
task_queues:
- swh.lister.stagit.tasks.StagitListerTask
sentry_settings_for_celery_tasks:
@@ -5330,21 +5330,21 @@
metadata:
name: search-journal-client-indexed-configuration-template
namespace: swh
data:
config.yml.template: |
search:
cls: remote
url: http://search-rpc-ingress
storage:
cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
journal:
brokers:
- kafka1.internal.softwareheritage.org
- kafka2.internal.softwareheritage.org
- kafka3.internal.softwareheritage.org
- kafka4.internal.softwareheritage.org
group_id: swh.search.journal_client.indexed-v0.11
object_types:
- origin_intrinsic_metadata
- origin_extrinsic_metadata
@@ -5356,21 +5356,21 @@
metadata:
name: search-journal-client-objects-configuration-template
namespace: swh
data:
config.yml.template: |
search:
cls: remote
url: http://search-rpc-ingress
storage:
cls: remote
- url: http://saam.internal.softwareheritage.org:5002
+ url: http://storage-rpc-ingress
journal:
brokers:
- kafka1.internal.softwareheritage.org
- kafka2.internal.softwareheritage.org
- kafka3.internal.softwareheritage.org
- kafka4.internal.softwareheritage.org
group_id: swh.search.journal_client-v0.11
object_types:
- origin
- origin_visit_status
@@ -16042,21 +16042,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: checker-deposit
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: e0060dd8509216fa8803ef4a5bab4e42579a0f80e4f05300e24ba31bd1efd01a
+ checksum/config: 778b0a18637a8c791d0b5c31f1707f12c39491434bdabf130125ce1166fc0068
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/deposit
operator: In
values:
@@ -16203,21 +16203,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: graphql
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 4638e4ad458c5c9204149648fd843cc423171e8e3250edcb98bc8f36562ae9f9
+ checksum/config: 74a0f62bb8f87c315c3857ee134d13881a8c6ce5654376e36c7e9a01f12329c9
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/rpc
operator: In
values:
- "true"
@@ -16300,21 +16300,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-bitbucket
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 0a7c395f3042dc0d6361f688fee44f0d6feffd0996517fb635f9e8a33d1d820f
+ checksum/config: fe710ea835fab0d9ce78e771c64487022f436fcc520d00e6c591200dec138ec3
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -16463,21 +16463,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-bower
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 41d0d894cf9de0a20bfc27df89d260a01c95cd321f546f68d2f53e95717c7c49
+ checksum/config: 8649a9b3ba30854e2a7617144b47839f1bfcf4f848f47b79b1ecbdbdb48d4a20
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -16626,21 +16626,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-cgit
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: bc2311148ded6c4b7a20d36bb75c67a20c71491cf7e9b22bfb10a97ed1c29c9d
+ checksum/config: 1ac33f5bde82e51b7cec35666cd410b82376c8458d3a3ba5ccd361ef04a9ffa3
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -16789,21 +16789,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-cran
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: cf31683079952117130c7d227a10ebd24e28ffdbda16b0e2e9c3bdc0879e19e4
+ checksum/config: da1a6fcea4380b3fad5141f9571b7139fbf276a8e642846b94062da9308387b0
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -16952,21 +16952,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-debian
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 682e78058f8274d0a2bf9b950806db65172f6818a5a44a8c9c86ed509416aa60
+ checksum/config: ed3f21ec81d484106ba74b66b76e87f7e6c19e2c6d7714f8248df7043f2c2400
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -17115,21 +17115,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-gitea
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: f9258ea4422da26d85bd0853b63aac7e76ec61882209f66c19eb11f807e5d75d
+ checksum/config: c4e7ce72a436e2667591defef365dc93c85c048c2640ee5e924960ae5421113a
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -17278,21 +17278,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-github-full
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 066f0b68c489a5ee9be4d7373df0514c2300e1303495090353764f6cd6b11c20
+ checksum/config: d894d70629e47e3816a363d975bc6990c022c273a98b9724021581ca9128fb73
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -17441,21 +17441,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-github-incremental
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 664a263214923954ed7ee3d8e8a345704d7fc18f88fe03af550d2cef9d2ddc28
+ checksum/config: 0ff189520ab7564b2c08049c7e908f2246db7ae18ebed5892da82e8a2d3fe5c5
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -17604,21 +17604,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-gitiles
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: ec6183f4a4486a4bf28240abe5be019dfb7a12f150d9a7a55eeefb8da4b0dd7c
+ checksum/config: 58ae52efb80b12e4762e81ac65c486034c6e2e26a9497fac28414823313b29ee
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -17767,21 +17767,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-gitlab
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 634ad254af9f3f0d7d2ce72d6918196c32db7969290f758a40812b92d1cba67d
+ checksum/config: 3738c22fd48b16415a4b52b473d5c83adec149a9d922718eb53e9ab6cd1255cc
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -17930,21 +17930,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-gitweb
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 396b42d71fb293efa6c489e240628a787bb1f20165051c5f02894e8643edca7a
+ checksum/config: a83d34dc3acee752f230fb0fa71fca9e4d19ff226e2a060a1b59c47655487448
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -18093,21 +18093,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-gnu-full
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: ef9b6fae9f2250c3a318020543cdec47af9b54add9a05b68752a29bb2f295669
+ checksum/config: 64c8544d16aee507efe79ecae0c82df6c977068ada7f6e371e73b4d79ec6f028
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -18256,21 +18256,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-gogs-full
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: a3ac7764cc996568b639c981c49c9b0fa56c271cdde12d2d72561a13cdb53045
+ checksum/config: aa9db64f339658e8113c4d87fed468b7858ab7d5ebddecaab7454a093166c2f3
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -18419,21 +18419,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-golang
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: bb6e6de43a1bfa41277d2a104bdc0c6c3f9e5095b60d8827eca62b5c6adedeb4
+ checksum/config: f213aa8cd53a92a30502ee51e6b948b1c75e5369e2bb444895d5f6ed7a40ff2b
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -18582,21 +18582,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-launchpad
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: abbbbb6b13db48d9b007f9c2a85f4fe4e68eb7f5a6bdb20ef51687dbdbebad50
+ checksum/config: 443876d3f5c1b9782d95be0114fe98cf78b0d3e48aac40603301b2f8ab884614
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -18745,21 +18745,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-maven
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 74dbd11938ab05c0b2261ee2f4bf9881b173128ddfa060e480c3b45f4ef9b66c
+ checksum/config: 31961c172379a03013a01f02afe47eebc93a068b759d8dc1a7f371961f8afc52
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -18908,21 +18908,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-npm
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 4c0ba846143ca91eafaa50d6e1917f72a4e18b9c0da9dcef3c4a13a680457709
+ checksum/config: a5ee51e36be477c4ce3edae68f1a03f3aefd3652ed468ba0597ff7c0b26e11f9
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -19071,21 +19071,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-opam
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 443e76d244ba2728c9c75b708d3a265881916465df82cb8e69aa431995f366ea
+ checksum/config: fa63e710601d67b7da1adf2b9cc9dd06eb870c09b7de74d24d1c8eb24e72eb9d
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -19234,21 +19234,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-packagist
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 43a1761978dbeac2375715385a46a26e0609ef27639fa748ebc9eb760e699c03
+ checksum/config: b038dd5fb06ac62e78b5263f77e3207e83e4036f78d32c3e7f903edf7893c4bf
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -19397,21 +19397,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-pagure
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: de90cfbafd19269de52f400ebd3b42488b757014c31892efb354dca77476e2a5
+ checksum/config: 844dc195ad6304795e55b13805b3c29b8edc5bc104e44c3c9c0e1225e4cf4713
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -19560,21 +19560,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-phabricator
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 84a800057528b68ab64cf70afdba4bc6645f8edaae16b51751641fea4f1098a4
+ checksum/config: 206817168fcf08a1ba7e1162416a16c0dce48c5c577fbef11d3975b90af3bbd2
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -19723,21 +19723,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-pubdev
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 74090200a405c203cedea629b76864e65c64cdfee7ecf9864a48b4b141e9e710
+ checksum/config: 0e55ea61937c9f6ef9ee708ed124ae14c054749437a7d817fc1e3cc03af8d371
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -19886,21 +19886,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-pypi
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 0db96254565b1c24cf560ad15f811971db9465230c921401127919aebe5d3493
+ checksum/config: c04c295024d0c2339a11f84ab3db4edb1be2a160ad398e7a415083fbeecfe917
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -20049,21 +20049,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-rpm
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 80cf656fb657e67491cff7b61050abfef3ab2b1ac9cd54ae7801b6cdad3eab60
+ checksum/config: 58990678eead3b7fe093c5a613fc356d53b5fed2777bb270118f1e3db3208f33
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -20212,21 +20212,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-sourceforge
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 65c3b5c8e062cdd953318b4ab11f945337cf8da0a184968c9f81869821cc710e
+ checksum/config: 32cd89b4e8c9f3c9ac867e13e86e3dab643a80a1a6498c9d9b56a97df2b2da27
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -20375,21 +20375,21 @@
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: lister-stagit
annotations:
# Force a rollout upgrade if the configuration changes
- checksum/config: 37655dbcef96066ca584eb4eda75c11670a48b64110918b38dce61db8ddf2e69
+ checksum/config: c528081243f7415db1a04a22121e91282d382426cb464b4b3f107ab72c81264b
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/lister
operator: In
values:
@@ -27052,21 +27052,21 @@
app: search-journal-client-indexed
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: search-journal-client-indexed
annotations:
- checksum/config: 4e3fed7fa56755e9a4ec6e5e8029227976a474753ef79e43c39693443bfccca5
+ checksum/config: f49df0a73f90dac54030f3e2e17bcac052318351e43317ffa028273048bd3727
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/journal_client
operator: In
values:
- "true"
@@ -27155,21 +27155,21 @@
app: search-journal-client-objects
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
template:
metadata:
labels:
app: search-journal-client-objects
annotations:
- checksum/config: ff78968853b36a07f33030c3cc75fde0193b517154918320d3060b555c4cab13
+ checksum/config: d632006f9f6c7614389412583593d9109a9e87a7042275e6a8b8d455073ab2d2
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: swh/journal_client
operator: In
values:
- "true"
------------- diff for environment production namespace swh-cassandra -------------
No differences
Edited by Antoine R. Dumont