commit 6c566652d8d2083be37b425d6b30045d01744988
parent d0db7f9ba08eb7e1763c5545a64c3c536f146263
Author: MTRNord <mtrnord1@gmail.com>
Date: Mon, 10 Mar 2025 11:08:25 +0100
Prepare hubzilla
Diffstat:
11 files changed, 366 insertions(+), 88 deletions(-)
diff --git a/apps/2024_cluster/namespaces/hubzilla.yaml b/apps/2024_cluster/namespaces/hubzilla.yaml
@@ -0,0 +1,4 @@
+apiVersion: v1
+kind: Namespace
+metadata:
+ name: hubzilla
diff --git a/apps/2024_cluster/namespaces/kustomization.yaml b/apps/2024_cluster/namespaces/kustomization.yaml
@@ -30,3 +30,4 @@ resources:
- envoy-gateway.yaml
- vault.yaml
- rundeck.yaml
+ - hubzilla.yaml
diff --git a/apps/2024_cluster/secrets/hubzilla.yaml b/apps/2024_cluster/secrets/hubzilla.yaml
@@ -0,0 +1,28 @@
+apiVersion: v1
+stringData:
+ mariadb-password: ENC[AES256_GCM,data:O2lEVMvV3MybAVVMbZsBvlS7TYzLXyym7XRvs2dzxzyUWJ++oK8yi8dAH5D81k713bT+GHOWSuyLPK/Sm1FGZA==,iv:hIGrhdhLMgZBSrfIWw0vRab+NPfTE4xl9zBkKGkdedg=,tag:paFYkmc/EYJlnrylWcEtpw==,type:str]
+ email-password: ENC[AES256_GCM,data:G0YzZF7Of+0Q,iv:I1Phjqa5VIOjGMXK4kSIu7OKjofYg/mGxBW47KKx0Nk=,tag:F+0OYzRlMyVRwN3aiNGDrQ==,type:str]
+kind: Secret
+metadata:
+ name: hubzilla-env
+ namespace: hubzilla
+sops:
+ kms: []
+ gcp_kms: []
+ azure_kv: []
+ hc_vault: []
+ age:
+ - recipient: age1esjyg2qfy49awv0ptkzvpk425adczjr38m37w2mmcahzc4p8n54sll2nzh
+ enc: |
+ -----BEGIN AGE ENCRYPTED FILE-----
+ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBLRUM1Ti9RZUY0L3BCQzRu
+ SXZvbG1YWk1KMGR5d1VBUVAySHE2elg4eFNjCkRmWHhjQ3hlWHE4TE5CSUZtZzNC
+ cmdnN1lkUzd2MmFOYnAxazBZcjl2MmMKLS0tIFhBenNsdURNc0ZsbFNid3BpSmdR
+ YzcvaDhCb3E3ZU1Ic0p0dm9Ba0NCZzQKxF6vXmYKK8+Q0UIK9OcHDULTVNenypQX
+ 56rV7vHpLBSmyxNNpr2EOKpB9Fwph0/ppSui2dadFFSSn3BzXLDhrg==
+ -----END AGE ENCRYPTED FILE-----
+ lastmodified: "2025-03-10T10:04:42Z"
+ mac: ENC[AES256_GCM,data:8+RtQ8y1l83m02TGQONlh00KOWXjBXZBmup5ExPraUYt0xJAJDoGMOYaFSFMPytEGiDxLAVvKpC1T8IhnMIIygX0k7f0mtkVl7wO25oZ3Md57v5BtDP8N5lm7se1jlkYoLs6ZNWXktGA/vzUXi4cxwbqVsg8zyTV0/vVyqJLGwY=,iv:oZmMxFZemERdImF5aVsOby6omQiMKffSNvAfvCM3PwY=,tag:4vROVVQhr58dF95Vgg/Q8Q==,type:str]
+ pgp: []
+ encrypted_regex: ^(adminPassword|adminEmail|jenkinsAdminEmail|securityRealm|gerrit.config|routing_key|DATABASE_URL|SMTP_PASSWORD|SECRET_KEY_BASE|admin_password|extraCommands|key|clickhouseDatabaseURL|databaseURL|client_id|client_secret|secret_key_base|otp_secret|private_key|public_key|primaryKey|deterministicKey|keyDerivationSalt|token|clientId|secretKey|installationId|installationKey|uriOverride|adminToken.value|password.value|sql_password|erlangCookie|AUTHENTICATION_PASSWORD|ROOM_API_SECRET_KEY|adminPassword|configPassword|adminUser|configUser|MAIL_PASSWORD|APP_KEY|api_key|api_secret|keys|livekit_key|livekit_secret|secret_key|admin_pass|admin_email|mariadbPassword|mariadbRootPassword|privateKey|data|stringData|PASSWD|password|pass|postgresPassword|postgresqlPassword|redminePassword|smtpPassword|registration_shared_secret|shared_secret|secret|admin_token|integrationKey|rootPassword)$
+ version: 3.9.1
diff --git a/apps/2024_cluster/secrets/mariadb-operator.yaml b/apps/2024_cluster/secrets/mariadb-operator.yaml
@@ -1,6 +1,6 @@
apiVersion: v1
stringData:
- password: ENC[AES256_GCM,data:kY53tTCUmSbY9dNKyISq9TEkrULxqlSaiz7EhOmaSe2VTz9DP/XDDsen5shHZIq60tJfPVrZ4kSb6B4KNLtGnA==,iv:5hfT4V5heotzQzPqrQkwJ0z4Pk9TS5qfuAqLMdq/zhk=,tag:8yW3xOsKR7/dJvwnWMyajA==,type:str]
+ password: ENC[AES256_GCM,data:xQ9sZCJsZ1GDUn8vbm6AZXQ6Eq/ZPV7SFwKX27IP3mJ1JrDYbT6bQEfE9O2as1ZGp+mcjxu0A3MKVjZZlkzaVQ==,iv:oxpKX8tpBXa9llPX8uE7PLi1HI2/uHSA6/KZGbhXlNU=,tag:5ANl995mK/z/q3g3bhTOKA==,type:str]
kind: Secret
metadata:
name: mariadb-osticket
@@ -14,14 +14,42 @@ sops:
- recipient: age1esjyg2qfy49awv0ptkzvpk425adczjr38m37w2mmcahzc4p8n54sll2nzh
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
- YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBQVHhZaGcyUFFUZHQwRTFG
- Y0cwc3NWaUxOVXdLb3N1WEl1NWlHMzdJbDJJClJMSkYrKy9UMXZyMkRNTTNuU1JM
- UDZjNUhqWGFiczIwLy94REdYVEp1UlEKLS0tIEVPZ0tmbzVueW1neTJ4bG9VYVhC
- TERGKzhyZDJFS05EbW1taG4xckdrQUkKNamaTUZek5Rlx4WnNEG1leHJ4PViVA5m
- NrtDpL214EyEd3GqdhvwbCTdVu9px8a5+6eQWvOZp/CHhRJHIKTRzQ==
+ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBSQXF3MXFKVlVmU2lhVi9V
+ c0dDK3p2SmpnT29zYjlTV05Rbk9JYndCeEZvCkVPNVJTekpycys5MGJQN3JFQXJT
+ SUlFa1ozb2o2ZCswRUxpeC9xVWxoZGcKLS0tIDZnM2ZjQkxxd2U1YlZKdnVFYXBI
+ K1dxajlEUVVCTlI2TkZ0R21mY1ZZNEEKCb0zLtFZHOrKWSjH0CB9mU/PmxdNpr6z
+ bbZiBmM105pmfcPQuSwxPXFFI8zsEy5hjXzL/4kGpEYCe8j5X625cA==
-----END AGE ENCRYPTED FILE-----
- lastmodified: "2025-01-07T22:01:16Z"
- mac: ENC[AES256_GCM,data:KlLKz8hv/6VJD92YYehfh/kXt1+NLi26rnCd1K1Eh7mSyWveTviFyQ4OUE2VsLtcPlqWKT1eRyKCRNyA4iWdgCrMu5bDW+aAQCb2GHsdfRHmsj6NSS1BoTPLDxCClQ/LdUh2cvoZNxCO8pJfIrG+mm5KgrKcxaN6W+OG/TFQGGw=,iv:6vNynE/CHE22QJW+/E4bzxCA1p7xb/T91xZYOiSUGaE=,tag:qHx34Gk3I4PtjuH1OKJcvQ==,type:str]
+ lastmodified: "2025-03-10T09:54:43Z"
+ mac: ENC[AES256_GCM,data:i+0x2iuiXVCoD4ioFlFOzL2GRCzMH1W13OheEV7HTQv0X6fcN+479ow8a5I75t+OMEtR4Jo5qQI/x4VKQ9iAMPPpcbRScoCWyi9ITawEpUiVWWUhbogpT2WgdMweDyvBbnazGotJNmYcsKomk1/mabR2czSHXMnQa3UVYDkkbXw=,iv:ALAuviL2mJm+kR2hCMRLM0bNX39DDmngAgQXJJgryKU=,tag:nU8cljPz566rt5mgncZlQw==,type:str]
+ pgp: []
+ encrypted_regex: ^(adminPassword|adminEmail|jenkinsAdminEmail|securityRealm|gerrit.config|routing_key|DATABASE_URL|SMTP_PASSWORD|SECRET_KEY_BASE|admin_password|extraCommands|key|clickhouseDatabaseURL|databaseURL|client_id|client_secret|secret_key_base|otp_secret|private_key|public_key|primaryKey|deterministicKey|keyDerivationSalt|token|clientId|secretKey|installationId|installationKey|uriOverride|adminToken.value|password.value|sql_password|erlangCookie|AUTHENTICATION_PASSWORD|ROOM_API_SECRET_KEY|adminPassword|configPassword|adminUser|configUser|MAIL_PASSWORD|APP_KEY|api_key|api_secret|keys|livekit_key|livekit_secret|secret_key|admin_pass|admin_email|mariadbPassword|mariadbRootPassword|privateKey|data|stringData|PASSWD|password|pass|postgresPassword|postgresqlPassword|redminePassword|smtpPassword|registration_shared_secret|shared_secret|secret|admin_token|integrationKey|rootPassword)$
+ version: 3.9.1
+---
+apiVersion: v1
+stringData:
+ password: ENC[AES256_GCM,data:EPg5V8IuCTPSsDw3b41bqcfLNpGAiZTvMIlFYkCRu9xn+S/Cvr+xCnEKB5+LbhPNrmyYE3IQOZqNSBvOtMIBpQ==,iv:NCrSnkW1LxY77XbHgzD/DQoeUvloNJ30Fw94Srr6bF0=,tag:6E1tNTG/vfmLDGjOH606Eg==,type:str]
+kind: Secret
+metadata:
+ name: mariadb-hubzilla
+ namespace: mariadb-operator
+sops:
+ kms: []
+ gcp_kms: []
+ azure_kv: []
+ hc_vault: []
+ age:
+ - recipient: age1esjyg2qfy49awv0ptkzvpk425adczjr38m37w2mmcahzc4p8n54sll2nzh
+ enc: |
+ -----BEGIN AGE ENCRYPTED FILE-----
+ YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBSQXF3MXFKVlVmU2lhVi9V
+ c0dDK3p2SmpnT29zYjlTV05Rbk9JYndCeEZvCkVPNVJTekpycys5MGJQN3JFQXJT
+ SUlFa1ozb2o2ZCswRUxpeC9xVWxoZGcKLS0tIDZnM2ZjQkxxd2U1YlZKdnVFYXBI
+ K1dxajlEUVVCTlI2TkZ0R21mY1ZZNEEKCb0zLtFZHOrKWSjH0CB9mU/PmxdNpr6z
+ bbZiBmM105pmfcPQuSwxPXFFI8zsEy5hjXzL/4kGpEYCe8j5X625cA==
+ -----END AGE ENCRYPTED FILE-----
+ lastmodified: "2025-03-10T09:54:43Z"
+ mac: ENC[AES256_GCM,data:i+0x2iuiXVCoD4ioFlFOzL2GRCzMH1W13OheEV7HTQv0X6fcN+479ow8a5I75t+OMEtR4Jo5qQI/x4VKQ9iAMPPpcbRScoCWyi9ITawEpUiVWWUhbogpT2WgdMweDyvBbnazGotJNmYcsKomk1/mabR2czSHXMnQa3UVYDkkbXw=,iv:ALAuviL2mJm+kR2hCMRLM0bNX39DDmngAgQXJJgryKU=,tag:nU8cljPz566rt5mgncZlQw==,type:str]
pgp: []
encrypted_regex: ^(adminPassword|adminEmail|jenkinsAdminEmail|securityRealm|gerrit.config|routing_key|DATABASE_URL|SMTP_PASSWORD|SECRET_KEY_BASE|admin_password|extraCommands|key|clickhouseDatabaseURL|databaseURL|client_id|client_secret|secret_key_base|otp_secret|private_key|public_key|primaryKey|deterministicKey|keyDerivationSalt|token|clientId|secretKey|installationId|installationKey|uriOverride|adminToken.value|password.value|sql_password|erlangCookie|AUTHENTICATION_PASSWORD|ROOM_API_SECRET_KEY|adminPassword|configPassword|adminUser|configUser|MAIL_PASSWORD|APP_KEY|api_key|api_secret|keys|livekit_key|livekit_secret|secret_key|admin_pass|admin_email|mariadbPassword|mariadbRootPassword|privateKey|data|stringData|PASSWD|password|pass|postgresPassword|postgresqlPassword|redminePassword|smtpPassword|registration_shared_secret|shared_secret|secret|admin_token|integrationKey|rootPassword)$
version: 3.9.1
diff --git a/apps/base/envoy-gateway/release.yaml b/apps/base/envoy-gateway/release.yaml
@@ -298,9 +298,9 @@ spec:
certificateRefs:
- kind: Secret
name: mtrnord.blog-tls
- - name: https-mtrnord-blog
+ - name: https-mtrnord-blog-hubzilla
protocol: HTTPS
- hostname: "*.mtrnord.blog"
+ hostname: "hub.mtrnord.blog"
port: 443
allowedRoutes:
namespaces:
@@ -309,7 +309,7 @@ spec:
mode: Terminate
certificateRefs:
- kind: Secret
- name: mtrnord.blog-tls
+ name: hub.mtrnord.blog-tls
- name: http
protocol: HTTP
port: 80
diff --git a/apps/base/hubzilla/deployment.yaml b/apps/base/hubzilla/deployment.yaml
@@ -0,0 +1,142 @@
+apiVersion: v1
+kind: PersistentVolumeClaim
+metadata:
+ name: hubzilla-data
+ namespace: hubzilla
+spec:
+ accessModes:
+ - ReadWriteMany
+ resources:
+ requests:
+ storage: 10Gi
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: hubzilla
+ namespace: hubzilla
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: hubzilla
+ strategy:
+ rollingUpdate:
+ maxSurge: 25%
+ maxUnavailable: 25%
+ type: RollingUpdate
+ template:
+ metadata:
+ labels:
+ app: hubzilla
+ spec:
+ containers:
+ - image: ghcr.io/saiwal/hubzilla-docker:latest
+ imagePullPolicy: Always
+ name: hubzilla
+ env:
+ - name: HUBZILLA_DB_HOST
+ value: mariadb-maxscale.mariadb-operator.svc.cluster.local
+ - name: HUBZILLA_DB_USER
+ value: hubzilla
+ - name: HUBZILLA_DB_PASS
+ valueFrom:
+ secretKeyRef:
+ name: hubzilla-env
+ key: mariadb-password
+ - name: HUBZILLA_DB_NAME
+ value: hubzilla
+ - name: SSMTP_ROOT
+ value: support@midnightthoughts.space
+ - name: SSMTP_MAILHUB
+ value: mail.midnightthoughts.space:587
+ - name: SSMTP_AUTHUSER
+ value: support@midnightthoughts.space
+ - name: SSMTP_AUTHPASS
+ valueFrom:
+ secretKeyRef:
+ name: hubzilla-env
+ key: email-password
+ - name: SSMTP_USESTARTTLS
+ value: "Yes"
+ - name: SSMTP_FROMLINEOVERRIDE
+ value: "No"
+ - name: REVALIASES_ROOT
+ value: support@midnightthoughts.space:mail.midnightthoughts.space:587
+ - name: REVALIASES_WWWDATA
+ value: support@midnightthoughts.space:mail.midnightthoughts.space:587
+ livenessProbe:
+ failureThreshold: 3
+ httpGet:
+ path: /
+ port: 80
+ initialDelaySeconds: 60
+ periodSeconds: 30
+ successThreshold: 1
+ timeoutSeconds: 1
+ readinessProbe:
+ httpGet:
+ path: /
+ port: 80
+ initialDelaySeconds: 60
+ periodSeconds: 30
+ resources:
+ requests:
+ ephemeral-storage: 1024Mi
+ cpu: 100m
+ memory: 200Mi
+ limits:
+ ephemeral-storage: 2048Mi
+ cpu: 2000m
+ memory: 2000Mi
+ securityContext:
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ #runAsNonRoot: true
+ volumeMounts:
+ - mountPath: /var/www/html
+ name: hubzilla-data
+ - mountPath: /tmp
+ name: tmp
+ volumes:
+ - name: hubzilla-data
+ persistentVolumeClaim:
+ claimName: hubzilla-data
+ - name: tmp
+ emptyDir:
+ sizeLimit: 2048Mi
+---
+apiVersion: v1
+kind: Service
+metadata:
+ labels:
+ app: hubzilla
+ name: hubzilla-srv
+ namespace: hubzilla
+spec:
+ ports:
+ - port: 80
+ protocol: TCP
+ targetPort: 80
+ selector:
+ app: hubzilla
+ type: ClusterIP
+---
+apiVersion: gateway.networking.k8s.io/v1
+kind: HTTPRoute
+metadata:
+ name: hubzilla
+ namespace: hubzilla
+spec:
+ parentRefs:
+ - name: envoy-gateway
+ namespace: envoy-gateway
+ hostnames:
+ - "hub.mtrnord.blog"
+ rules:
+ - backendRefs:
+ - name: hubzilla
+ port: 80
diff --git a/apps/base/hubzilla/kustomization.yaml b/apps/base/hubzilla/kustomization.yaml
@@ -0,0 +1,5 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+kind: Kustomization
+namespace: hubzilla
+resources:
+ - deployment.yaml
diff --git a/apps/base/mariadb-operator/mariadb.yaml b/apps/base/mariadb-operator/mariadb.yaml
@@ -160,3 +160,69 @@ spec:
username: osticket
grantOption: false
host: "%"
+---
+apiVersion: k8s.mariadb.com/v1alpha1
+kind: Database
+metadata:
+ name: hubzilla
+spec:
+ mariaDbRef:
+ name: mariadb
+ characterSet: utf8
+ collate: utf8_general_ci
+ # Delete the resource in the database whenever the CR gets deleted.
+ # Alternatively, you can specify Skip in order to omit deletion.
+ cleanupPolicy: Delete
+ requeueInterval: 30s
+ retryInterval: 5s
+---
+apiVersion: k8s.mariadb.com/v1alpha1
+kind: User
+metadata:
+ name: hubzilla
+spec:
+ # If you want the user to be created with a different name than the resource name
+ # name: user-custom
+ mariaDbRef:
+ name: mariadb
+ passwordSecretKeyRef:
+ name: mariadb-hubzilla
+ key: password
+ # This field defaults to 10
+ maxUserConnections: 10
+ host: "%"
+ # Delete the resource in the database whenever the CR gets deleted.
+ # Alternatively, you can specify Skip in order to omit deletion.
+ cleanupPolicy: Delete
+ requeueInterval: 30s
+ retryInterval: 5s
+---
+apiVersion: k8s.mariadb.com/v1alpha1
+kind: Grant
+metadata:
+ name: grant-hubzilla
+spec:
+ mariaDbRef:
+ name: mariadb
+ privileges:
+ - "ALL PRIVILEGES"
+ database: "hubzilla"
+ table: "*"
+ username: hubzilla
+ grantOption: false
+ host: "%"
+---
+apiVersion: k8s.mariadb.com/v1alpha1
+kind: Grant
+metadata:
+ name: grant-hubzilla-show-db
+spec:
+ mariaDbRef:
+ name: mariadb
+ privileges:
+ - "SHOW DATABASES"
+ database: "*"
+ table: "*"
+ username: hubzilla
+ grantOption: false
+ host: "%"
diff --git a/apps/base/matrix/draupnir-fluffy/deployment.yaml b/apps/base/matrix/draupnir-fluffy/deployment.yaml
@@ -34,52 +34,52 @@ spec:
- image: gnuxie/draupnir:v2.2.0
imagePullPolicy: IfNotPresent
livenessProbe:
- failureThreshold: 3
- httpGet:
- path: /healthz
- port: 8080
- initialDelaySeconds: 60
- periodSeconds: 30
- successThreshold: 1
- timeoutSeconds: 1
+ failureThreshold: 3
+ httpGet:
+ path: /healthz
+ port: 8080
+ initialDelaySeconds: 60
+ periodSeconds: 30
+ successThreshold: 1
+ timeoutSeconds: 1
name: mjolnir-fluffy-container
resources:
- requests:
- ephemeral-storage: 1024Mi
- cpu: 100m
- memory: 200Mi
- limits:
- ephemeral-storage: 2048Mi
- cpu: 2000m
- memory: 2000Mi
+ requests:
+ ephemeral-storage: 1024Mi
+ cpu: 100m
+ memory: 200Mi
+ limits:
+ ephemeral-storage: 2048Mi
+ cpu: 2000m
+ memory: 2000Mi
readinessProbe:
- httpGet:
- path: /health
- port: 8080
- initialDelaySeconds: 60
- periodSeconds: 30
+ httpGet:
+ path: /health
+ port: 8080
+ initialDelaySeconds: 60
+ periodSeconds: 30
securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- #runAsNonRoot: true
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ #runAsNonRoot: true
volumeMounts:
- - mountPath: /data/config/production.yaml
- name: config-volume
- subPath: production.yaml
- - mountPath: /data/storage
- name: storage
- - mountPath: /tmp
- name: tmp
+ - mountPath: /data/config/production.yaml
+ name: config-volume
+ subPath: production.yaml
+ - mountPath: /data/storage
+ name: storage
+ - mountPath: /tmp
+ name: tmp
volumes:
- configMap:
- name: mjolnir-fluffy-config
+ name: mjolnir-fluffy-config
name: config-volume
- name: storage
persistentVolumeClaim:
- claimName: mjolnir-fluffy-persistent-storage
+ claimName: mjolnir-fluffy-persistent-storage
- name: tmp
emptyDir:
- sizeLimit: 2048Mi
+ sizeLimit: 2048Mi
diff --git a/apps/base/matrix/draupnir-freifunk/deployment.yaml b/apps/base/matrix/draupnir-freifunk/deployment.yaml
@@ -33,52 +33,52 @@ spec:
containers:
- image: gnuxie/draupnir:v2.2.0
livenessProbe:
- failureThreshold: 3
- httpGet:
- path: /healthz
- port: 8080
- initialDelaySeconds: 60
- periodSeconds: 30
- successThreshold: 1
- timeoutSeconds: 1
+ failureThreshold: 3
+ httpGet:
+ path: /healthz
+ port: 8080
+ initialDelaySeconds: 60
+ periodSeconds: 30
+ successThreshold: 1
+ timeoutSeconds: 1
name: mjolnir-freifunk-container
resources:
- requests:
- ephemeral-storage: 1024Mi
- cpu: 100m
- memory: 200Mi
- limits:
- ephemeral-storage: 2048Mi
- cpu: 2000m
- memory: 2000Mi
+ requests:
+ ephemeral-storage: 1024Mi
+ cpu: 100m
+ memory: 200Mi
+ limits:
+ ephemeral-storage: 2048Mi
+ cpu: 2000m
+ memory: 2000Mi
readinessProbe:
- httpGet:
- path: /health
- port: 8080
- initialDelaySeconds: 60
- periodSeconds: 30
+ httpGet:
+ path: /health
+ port: 8080
+ initialDelaySeconds: 60
+ periodSeconds: 30
securityContext:
- allowPrivilegeEscalation: false
- capabilities:
- drop:
- - ALL
- readOnlyRootFilesystem: true
- #runAsNonRoot: true
+ allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
+ #runAsNonRoot: true
volumeMounts:
- - mountPath: /data/config/production.yaml
- name: config-volume
- subPath: production.yaml
- - mountPath: /data/storage
- name: storage
- - mountPath: /tmp
- name: tmp
+ - mountPath: /data/config/production.yaml
+ name: config-volume
+ subPath: production.yaml
+ - mountPath: /data/storage
+ name: storage
+ - mountPath: /tmp
+ name: tmp
volumes:
- configMap:
- name: mjolnir-freifunk-config
+ name: mjolnir-freifunk-config
name: config-volume
- name: storage
persistentVolumeClaim:
- claimName: mjolnir-freifunk-persistent-storage
+ claimName: mjolnir-freifunk-persistent-storage
- name: tmp
emptyDir:
- sizeLimit: 2048Mi
+ sizeLimit: 2048Mi
diff --git a/apps/base/victoria-metrics-k8s-stack/release.yaml b/apps/base/victoria-metrics-k8s-stack/release.yaml
@@ -173,7 +173,9 @@ spec:
annotations:
__dashboardUid__: tbO9LAiZK
__panelId__: "7"
- description: One or more OSDs have reached the NEARFULL threshold. Use 'ceph health detail' and 'ceph osd df' to identify the problem. To resolve, add capacity to the affected OSD's failure domain, restore down/out OSDs, or delete unwanted data.
+ description: One or more OSDs have reached the NEARFULL threshold. Use 'ceph health detail'
+ and 'ceph osd df' to identify the problem. To resolve, add capacity to the affected OSD's
+ failure domain, restore down/out OSDs, or delete unwanted data.
runbook_url: https://docs.ceph.com/en/latest/rados/operations/health-checks#osd-nearfull
summary: OSD(s) running low on free space (NEARFULL)
isPaused: false
@@ -234,7 +236,8 @@ spec:
execErrState: Error
for: 5m
annotations:
- description: Depending on the rate limit, cert-manager may be unable to generate certificates for up to a week.
+ description: Depending on the rate limit, cert-manager may be unable to generate certificates
+ for up to a week.
summary: Cert manager hitting LetsEncrypt rate limits.
labels: {}
isPaused: false
@@ -1436,7 +1439,8 @@ spec:
auth_url: https://auth.midnightthoughts.space/application/o/authorize/
token_url: https://auth.midnightthoughts.space/application/o/token/
api_url: https://auth.midnightthoughts.space/application/o/userinfo/
- role_attribute_path: contains(groups, 'Grafana Admins') && 'Admin' || contains(groups, 'Grafana Editors') && 'Editor' || 'Viewer'
+ role_attribute_path: contains(groups, 'Grafana Admins') && 'Admin' || contains(groups, 'Grafana Editors')
+ && 'Editor' || 'Viewer'
imageRenderer:
enabled: true
kubeProxy: