From 5975b30030c1bfe5d22a9d1e350d82b45e4cdb91 Mon Sep 17 00:00:00 2001 From: Martin Gruner Date: Thu, 7 Nov 2024 07:39:40 +0100 Subject: [PATCH] Update to Zammad 6.4.0 and perform major dependency updates (#300) - All subcharts received updates to the latest major version. Please refer to their upgrading instructions. - Note especially [bitnami/postgresql#upgrading](https://artifacthub.io/packages/helm/bitnami/postgresql#upgrading), because the upgrade to PostgeSQL 17 will require manual action to upgrade the cluster data to the new version. --- .github/updatecli.yaml | 15 ++++++++------ zammad/Chart.yaml | 14 +++++++------- zammad/README.md | 44 ++++++++++++++++++++++++------------------ zammad/values.yaml | 1 + 4 files changed, 42 insertions(+), 32 deletions(-) diff --git a/.github/updatecli.yaml b/.github/updatecli.yaml index 514e6e8d..bc2e00d1 100644 --- a/.github/updatecli.yaml +++ b/.github/updatecli.yaml @@ -6,7 +6,10 @@ sources: spec: image: "zammad/zammad-docker-compose" architecture: "linux/amd64" - tagfilter: "6\\.3\\.1-\\d{3}" + tagfilter: "^6\\.4\\.0$" + # tagfilter: "^6\\.4\\.0-\\d{1}" + # tagfilter: "^6\\.4\\.0-\\d{2}" + # tagfilter: "^6\\.4\\.0-\\d{3}" alpine: kind: dockerimage spec: @@ -21,35 +24,35 @@ sources: url: https://charts.bitnami.com/bitnami name: elasticsearch versionfilter: - pattern: "19.x.x" + pattern: "21.x.x" minio: kind: helmchart spec: url: https://charts.bitnami.com/bitnami name: minio versionfilter: - pattern: "13.x.x" + pattern: "14.x.x" memcached: kind: helmchart spec: url: https://charts.bitnami.com/bitnami name: memcached versionfilter: - pattern: "6.x.x" + pattern: "7.x.x" postgresql: kind: helmchart spec: url: https://charts.bitnami.com/bitnami name: postgresql versionfilter: - pattern: "12.x.x" + pattern: "16.x.x" redis: kind: helmchart spec: url: https://charts.bitnami.com/bitnami name: redis versionfilter: - pattern: "17.x.x" + pattern: "20.x.x" conditions: {} diff --git a/zammad/Chart.yaml b/zammad/Chart.yaml index 872af1e6..4fe45681 100755 --- a/zammad/Chart.yaml +++ b/zammad/Chart.yaml @@ -1,7 +1,7 @@ apiVersion: v2 name: zammad -version: 12.5.1 -appVersion: 6.3.1-196 +version: 13.0.0 +appVersion: 6.4.0 description: Zammad is a web based open source helpdesk/customer support system with many features to manage customer communication via several channels like telephone, facebook, twitter, chat and e-mails. home: https://zammad.org icon: https://raw.githubusercontent.com/zammad/zammad-documentation/main/images/zammad_logo_600x520.png @@ -16,21 +16,21 @@ maintainers: dependencies: - name: elasticsearch repository: https://charts.bitnami.com/bitnami - version: 19.21.2 + version: 21.3.22 condition: zammadConfig.elasticsearch.enabled - name: minio - version: 13.8.4 + version: 14.8.2 repository: https://charts.bitnami.com/bitnami condition: zammadConfig.minio.enabled - name: memcached - version: 6.14.0 + version: 7.5.2 repository: https://charts.bitnami.com/bitnami condition: zammadConfig.memcached.enabled - name: postgresql - version: 12.12.10 + version: 16.1.1 repository: https://charts.bitnami.com/bitnami condition: zammadConfig.postgresql.enabled - name: redis - version: 17.17.1 + version: 20.2.1 repository: https://charts.bitnami.com/bitnami condition: zammadConfig.redis.enabled diff --git a/zammad/README.md b/zammad/README.md index ee4af063..10c1d1dd 100644 --- a/zammad/README.md +++ b/zammad/README.md @@ -88,7 +88,7 @@ I, [2024-01-24T11:06:14.627896#168-5980] INFO -- : storage remove '/opt/zammad/ To deploy on OpenShift unprivileged and with [arbitrary UIDs and GIDs](https://cloud.redhat.com/blog/a-guide-to-openshift-and-uids): -- [Delete the default key](https://helm.sh/docs/chart_template_guide/values_files/#deleting-a-default-key) `securityContext` and `zammadConfig.initContainers.zammad.securityContext.runAsUser` with `null`. +- [Delete the default key](https://helm.sh/docs/chart_template_guide/values_files/#deleting-a-default-key) `securityContext` and `zammadConfig.initContainers.zammad.securityContext.runAsUser` with `null`. - Disable if used: - also `podSecurityContext` in all subcharts. - the privileged [sysctlImage](https://github.com/bitnami/charts/tree/main/bitnami/elasticsearch#default-kernel-settings) in elasticsearch subchart. @@ -130,10 +130,10 @@ minio: redis: master: - podSecurityContext: - enabled: false - containerSecurityContext: - enabled: false + podSecurityContext: + enabled: false + containerSecurityContext: + enabled: false replica: podSecurityContext: enabled: false @@ -156,6 +156,12 @@ zammadConfig: ## Upgrading +### From Chart Version 12.x to 13.0.0 + +- All subcharts received updates to the latest major version. Please refer to their upgrading instructions. +- Note especially [bitnami/postgresql#upgrading](https://artifacthub.io/packages/helm/bitnami/postgresql#upgrading), + because the upgrade to PostgeSQL 17 will require manual action to upgrade the cluster data to the new version. + ### From Chart Version 11.x to 12.0.0 #### The Previous `StatefulSet` Was Split up into `Deployments` @@ -229,13 +235,13 @@ securityContext: On the containerlevel the following settings are used fo all zammad containers now (some init containers may run as root though): ```yaml - securityContext: - allowPrivilegeEscalation: false - capabilities: - drop: - - ALL - readOnlyRootFilesystem: true - privileged: false +securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: + - ALL + readOnlyRootFilesystem: true + privileged: false ``` As `readOnlyRootFilesystem: true` is set for all Zammad containers, the Nginx container writes its PID and tmp files to `/tmp`. @@ -254,11 +260,11 @@ We've also set the Elasticsearch master heapsize to "512m" by default. - Bitnami Elasticsearch chart is used now as Elastic does not support the old chart anymore in favour of ECK operator - reindexing of all data is needed so get sure "zammadConfig.elasticsearch.reindex" is set to "true" - Memchached was updated from 6.0.16 to 6.3.0 -- PostgreSql chart was updated from 10.16.2 to 12.1.0 +- PostgreSQL chart was updated from 10.16.2 to 12.1.0 - this includes major version change of Postgres DB version too - backup / restore is needed to update - postgres password settings were changed - - see also upgrading [PostgreSql upgrading notes](https://github.com/bitnami/charts/tree/main/bitnami/postgresql#upgrading) + - see also upgrading [PostgreSQL upgrading notes](https://github.com/bitnami/charts/tree/main/bitnami/postgresql#upgrading) - Redis chart is updated from 16.8.7 to 17.3.7 - see [Redis upgrading notes](https://github.com/bitnami/charts/tree/main/bitnami/redis#to-1700) - Zammad @@ -298,16 +304,16 @@ This has changed: - import your filebackup here - all requirement charts has been updated to the latest versions - Elasticsearch - - docker image was changed to elastic/elasticsearch + - docker image was changed to `elastic/elasticsearch` - version was raised from 5.6 to 7.6 - reindexing will be done automatically - Postgres - - bitnami/postgresql chart is used instead of stable/postgresql + - `bitnami/postgresql` chart is used instead of `stable/postgresql` - version was raised from 10.6.0 to 11.7.0 - there is no automated upgrade path - you have to import a backup manually - Memcached - - bitnami/memcached chart is used instead of stable/memcached + - `bitnami/memcached` chart is used instead of `stable/memcached` - version was raised from 1.5.6 to 1.5.22 - nothing to do here @@ -327,14 +333,14 @@ kubectl -n zammad delete pvc data-zammad-postgresql-0 data-zammad-elasticsearch- helm upgrade --install zammad zammad/zammad --namespace=zammad --version=2.0.3 ``` -- Import your file and SQL backups inside the Zammad & Postgresql containers +- Import your file and SQL backups inside the Zammad & PostgreSQL containers ### From Zammad 2.6.x to 3.x As Helm 2.x was deprecated Helm 3.x is needed now to install Zammad Helm chart. Minimum Kubernetes version is 1.16.x now. -As Porstgresql dependency Helm chart was updated to, have a look at the upgrading instructions to 9.0.0 and 10.0.0 of the Postgresql chart: +As Porstgresql dependency Helm chart was updated to, have a look at the upgrading instructions to 9.0.0 and 10.0.0 of the PostgreSQL chart: - - diff --git a/zammad/values.yaml b/zammad/values.yaml index 2d2b2e92..8f5f6319 100755 --- a/zammad/values.yaml +++ b/zammad/values.yaml @@ -484,6 +484,7 @@ elasticsearch: heapSize: 512m masterOnly: false replicaCount: 1 + resourcesPreset: medium resources: {} # requests: # cpu: 50m