Dockerfile: add postgresql-client and bake db-customization/ SQL scripts into the image at /vnc/db-customization/. config/migrate.sh: detection + migration script with two modes: - pre-upgrade: runs idempotent prosody-13-new-deployment.sql on 13.0.x databases; skips 0.11.6 (unsafe pre-upgrade) and new deployments. - post-upgrade: waits for Prosody table, then runs the appropriate scripts — full 0.11.6->13.0.6 migration (rules-triggers + migration-once + new-deployment) or idempotent drift correction for 13.0.x. Helm chart: two Job templates (db-migration-pre-upgrade.yaml, db-migration-post-upgrade.yaml) gated by dbMigration.enabled (default true). Both reuse the Prosody image and DB credentials from existing values. backoffLimit: 0, hook-delete-policy: hook-succeeded. Also tracks the db-customization SQL files (previously untracked, now referenced by the Dockerfile ADD). Part-of: <http://gitlab.vnc.biz/uxf/vnctalk-prosody/-/merge_requests/3>
136 lines
3.1 KiB
YAML
136 lines
3.1 KiB
YAML
# Default values for owncloud.
|
|
# This is a YAML-formatted file.
|
|
# Declare variables to be passed into your templates.
|
|
|
|
replicaCount: 1
|
|
|
|
image:
|
|
repository: eu.gcr.io/vnc-development/vnctalk-prosody
|
|
pullPolicy: IfNotPresent
|
|
# Overrides the image tag whose default is the chart appVersion.
|
|
tag: release-13.0.6-vnc
|
|
|
|
imagePullSecrets: []
|
|
nameOverride: ""
|
|
fullnameOverride: ""
|
|
|
|
serviceAccount:
|
|
# Specifies whether a service account should be created
|
|
create: true
|
|
# Annotations to add to the service account
|
|
annotations: {}
|
|
# The name of the service account to use.
|
|
# If not set and create is true, a name is generated using the fullname template
|
|
name: ""
|
|
|
|
podAnnotations: {}
|
|
|
|
podSecurityContext: {}
|
|
# fsGroup: 2000
|
|
|
|
securityContext: {}
|
|
# capabilities:
|
|
# drop:
|
|
# - ALL
|
|
# readOnlyRootFilesystem: true
|
|
# runAsNonRoot: true
|
|
# runAsUser: 1000
|
|
|
|
tlsUpdates:
|
|
enabled: false
|
|
secretName: none
|
|
|
|
# Pre-upgrade and post-upgrade Helm hook Jobs that detect the database
|
|
# state and run the appropriate SQL migrations from db-customization/.
|
|
# The hooks use the same image and DB credentials as the Prosody container.
|
|
dbMigration:
|
|
enabled: true
|
|
|
|
service:
|
|
type: NodePort
|
|
port: 5280
|
|
annotations: {}
|
|
|
|
node:
|
|
name: prosody-internal
|
|
|
|
ingress:
|
|
enabled: true
|
|
annotations:
|
|
# kubernetes.io/ingress.class: nginx
|
|
# kubernetes.io/tls-acme: "true"
|
|
tls:
|
|
- hosts:
|
|
- "xmpp.chart.example"
|
|
secretName: xmpp-tls
|
|
hosts:
|
|
- host: "xmpp.chart.example"
|
|
paths: ["/xmpp-websocket*"]
|
|
service:
|
|
name: xmpp-ws-ingress
|
|
port:
|
|
number: 5280
|
|
name: http
|
|
- host: "xmpp.chart.example"
|
|
paths: ["/*"]
|
|
service:
|
|
name: xmpp-plain-ingress
|
|
port:
|
|
number: 8080
|
|
name: http
|
|
|
|
ingress_additional_host:
|
|
enabled: false
|
|
|
|
# Non-sensitive environment variables rendered as literal env values.
|
|
# Sensitive credentials must NOT go here — use secretEnv below.
|
|
env: {}
|
|
|
|
# Credentials mounted from a pre-provisioned Secret via secretKeyRef.
|
|
# Create the Secret out-of-band (e.g. kubectl create secret generic
|
|
# prosody-secrets --from-literal=prosodyDBpass=... ) and reference it here.
|
|
secretEnv:
|
|
# Name of an existing Secret in the release namespace.
|
|
existingSecret: ""
|
|
# Map of environment variable name -> key within the Secret.
|
|
keys: {}
|
|
# prosodyDBpass: prosodyDBpass
|
|
# fcmApiKey: fcmApiKey
|
|
# fileShareSecret: fileShareSecret
|
|
# avatarUploadPass: avatarUploadPass
|
|
|
|
# Dedicated resource requests and limits for each container in the pod.
|
|
# `resourcesProsody` is the XMPP server (the real workload); `resourcesSidecar`
|
|
# is the static-file/redirect http-server (a tiny slice). Each accepts the
|
|
# standard Kubernetes resources shape with `requests` and `limits`.
|
|
resourcesProsody:
|
|
requests:
|
|
cpu: 2000m
|
|
memory: 2048Mi
|
|
limits:
|
|
cpu: 4000m
|
|
memory: 4096Mi
|
|
|
|
resourcesSidecar:
|
|
requests:
|
|
cpu: 100m
|
|
memory: 64Mi
|
|
limits:
|
|
cpu: 200m
|
|
memory: 128Mi
|
|
|
|
autoscaling:
|
|
enabled: false
|
|
minReplicas: 1
|
|
maxReplicas: 10
|
|
targetCPUUtilizationPercentage: 90
|
|
|
|
pdb:
|
|
maxUnavailable: "50%"
|
|
|
|
nodeSelector: {}
|
|
|
|
tolerations: []
|
|
|
|
affinity: {}
|