Skip to content

Commit

Permalink
update zammad & subcharts
Browse files Browse the repository at this point in the history
Signed-off-by: André Bauer <[email protected]>
  • Loading branch information
monotek committed Nov 3, 2022
1 parent ce0b275 commit 11eb29e
Show file tree
Hide file tree
Showing 6 changed files with 75 additions and 198 deletions.
14 changes: 7 additions & 7 deletions zammad/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
apiVersion: v2
name: zammad
version: 6.7.1
appVersion: 5.2.1
version: 7.0.0
appVersion: 5.2.3-32
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
Expand All @@ -16,18 +16,18 @@ maintainers:
email: [email protected]
dependencies:
- name: elasticsearch
repository: https://helm.elastic.co
version: 7.17.3
repository: https://charts.bitnami.com/bitnami
version: 19.5.0
condition: zammadConfig.elasticsearch.enabled
- name: memcached
version: 6.0.16
version: 6.3.0
repository: https://charts.bitnami.com/bitnami
condition: zammadConfig.memcached.enabled
- name: postgresql
version: 10.16.2
version: 12.1.0
repository: https://charts.bitnami.com/bitnami
condition: zammadConfig.postgresql.enabled
- name: redis
version: 16.8.7
version: 17.3.7
repository: https://charts.bitnami.com/bitnami
condition: zammadConfig.redis.enabled
112 changes: 23 additions & 89 deletions zammad/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,95 +26,11 @@ helm upgrade --install zammad zammad/zammad --namespace zammad

## Configuration

The following table lists the configurable parameters of the zammad chart and their default values.

| Parameter | Description | Default |
| ------------------------------------------- | ------------------------------------------------ | ------------------------------- |
| `image.repository` | Container image to use | `zammad/zammad-docker-compose` |
| `image.tag` | Container image tag to deploy | `5.2.1-6` |
| `image.pullPolicy` | Container pull policy | `IfNotPresent` |
| `image.imagePullSecrets` | An array of imagePullSecrets | `[]` |
| `service.type` | Service type | `ClusterIP` |
| `service.port` | Service port | `8080` |
| `ingress.enabled` | Enable Ingress | `false` |
| `ingress.annotations` | Additional ingress annotations | `""` |
| `ingress.className` | Use IngressClassName | `""` |
| `ingress.hosts` | Ingress hosts | `""` |
| `ingress.tls` | Ingress TLS | `[]` |
| `zammadConfig.elasticsearch.enabled` | Use Elasticsearch chart dependency | `true` |
| `zammadConfig.elasticsearch.schema` | Elasticsearch schema | `http` |
| `zammadConfig.elasticsearch.host` | Elasticsearch host | `zammad-master` |
| `zammadConfig.elasticsearch.initialisation` | Run zammad specific Elasticsearch initialisation | `true` |
| `zammadConfig.elasticsearch.port` | Elasticsearch port | `9200` |
| `zammadConfig.elasticsearch.user` | Elasticsearch user | `""` |
| `zammadConfig.elasticsearch.pass` | Elasticsearch pass | `""` |
| `zammadConfig.elasticsearch.reindex` | Elasticsearch reindex is run on start | `true` |
| `zammadConfig.memcached.enabled` | Use Memcached dependency | `true` |
| `zammadConfig.memcached.host` | Memcached host | `zammad-memcached` |
| `zammadConfig.memcached.port` | Memcached port | `11211` |
| `zammadConfig.nginx.websocketExtraHeaders` | Additional nginx headers for ws location | `[]` |
| `zammadConfig.nginx.extraHeaders` | Additional nginx headers for / location | `[]` |
| `zammadConfig.nginx.knowledgeBaseUrl` | Value of custom URL for knowledge base | `""` |
| `zammadConfig.nginx.resources` | Resource usage of Zammad's nginx container | `{}` |
| `zammadConfig.nginx.livenessProbe` | Liveness probe for the nginx container | see values.yaml |
| `zammadConfig.nginx.readinessProbe` | Readiness probe for the nginx container | see values.yaml |
| `zammadConfig.postgresql.enabled` | Use PostgreSQL dependency | `true` |
| `zammadConfig.postgresql.host` | PostgreSql host | `zammad-postgresql` |
| `zammadConfig.postgresql.port` | PostgreSql port | `5432` |
| `zammadConfig.postgresql.pass` | PostgreSql pass | `""` |
| `zammadConfig.postgresql.user` | PostgreSql user | `zammad` |
| `zammadConfig.postgresql.db` | PostgreSql database | `zammad_production` |
| `zammadConfig.railsserver.resources` | Resource usage of Zammad's railsserver container | `{}` |
| `zammadConfig.railsserver.livenessProbe` | Liveness probe for the railsserver container | see values.yaml |
| `zammadConfig.railsserver.readinessProbe` | Readiness probe for the railsserver container | see values.yaml |
| `zammadConfig.railsserver.trustedProxies` | Configure Rails trusted proxies | `"['127.0.0.1', '::1']"` |
| `zammadConfig.redis.enabled` | Use REdis chart dependency | `true` |
| `zammadConfig.redis.host` | Redis host | `zammad-redis` |
| `zammadConfig.redis.port` | Redis port | `6379` |
| `zammadConfig.scheduler.resources` | Resource usage of Zammad's scheduler container | `{}` |
| `zammadConfig.websocket.resources` | Resource usage of Zammad's websocket container | `{}` |
| `zammadConfig.websocket.livenessProbe` | Liveness probe for the websocket container | see values.yaml |
| `zammadConfig.websocket.readinessProbe` | Readiness probe for the websocket container | see values.yaml |
| `zammadConfig.initContainers` | Resources for the different init containers | see values.yaml |
| `autoWizard.enabled` | enable autowizard | `false` |
| `autoWizard.config` | autowizard json config | `""` |
| `podAnnotations` | Annotations for Pods | `{}` |
| `volumePermissions.enabled` | Enable data volume permissions correction | `false` |
| `volumePermissions.image.repository` | initContainer image to use | `alpine` |
| `volumePermissions.image.tag` | initContainer image tag to deploy | `3.14` |
| `volumePermissions.image.pullPolicy` | initContainer pull policy | `IfNotPresent` |
| `persistence.enabled` | Enable persistence | `true` |
| `persistence.accessModes` | Access modes | `["ReadWriteOnce"]` |
| `persistence.size` | Volume size | `15Gi` |
| `persistence.storageClass` | storage class | `""` |
| `persistence.annotations` | annotations | `{}` |
| `nodeSelector` | NodeSelector | `{}` |
| `tolerations` | Tolerations | `[]` |
| `affinity` | Affinity | `{}` |
| `initContainers` | Additional init containers | `[]` |
| `sidecars` | Sidecar containers | `[]` |
| `serviceAccount.create` | Create service accounnt | `false` |
| `serviceAccount.annotations` | Service account annotations | `{}` |
| `serviceAccount.name` | Service account name | `""` |
| `rbac.create` | Create RBAC | `false` |
| `podSecurityPolicy.enabled` | Enable podSecurityPolicy | `false` |
| `podSecurityPolicy.create` | Create podSecurityPolicy | `false` |
| `podSecurityPolicy.annotations` | PodSecurityPolicy annotations | `{}` |
| `podSecurityPolicy.name` | PodSecurityPolicy name | `""` |
| `elasticsearch.image` | Elasticsearch docker image | `zammad/zammad-docker-compose` |
| `elasticsearch.imageTag` | Elasticsearch docker image tag | `zammad-elasticsearch-5.2.1-6` |
| `elasticsearch.clusterName` | Elasticsearch cluster name | `zammad` |
| `elasticsearch.replicas` | Elasticsearch replicas | `1` |
| `elasticsearch.clusterHealthCheckParams` | Workaround to get ES test work in GitHubCI | `"timeout=1s"` |
| `memcached.replicaCount` | Memcached replicas | `1` |
| `postgresql.postgresqlUsername` | PostgreSQL user | `zammad` |
| `postgresql.postgresqlPassword` | PostgreSQL password | `zammad` |
| `postgresql.postgresqlDatabase` | PostgreSQL DB | `zammad_production` |
| `redis.architecture` | Redis architecture | `standalone` |
| `redis.auth.password` | Redis auth password | `zammad` |
| `redis.master.resources` | Set Redis resources | `{}` |

Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
See [Customizing the Chart Before Installing](https://helm.sh/docs/intro/using_helm/#customizing-the-chart-before-installing). To see all configurable options with detailed comments, visit the chart's [values.yaml](./values.yaml), or run these configuration commands:

```console
helm show values zammad/zammad
```

### Important note for NFS filesystems

Expand All @@ -137,6 +53,24 @@ Open your browser on <http://localhost:8080>

## Upgrading

### From chart version 6.x to 7.x

- Bitnami Elasticsearch chart is used now as elastic does not support the old charts 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
- 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)
- 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
- Pod Security Policy settings were removed as thes are [deprecated in Kubernetes 1.25](https://kubernetes.io/docs/concepts/security/pod-security-policy/)
- Docker image tag is used from Chart.yaml "appVersion" by default
- Replicas can be configured (needs ReadWriteMany volume if replica > 1!)
- livenessProbes and readinessProbe have been adjusted to not be the same

### From chart version 6.0.4 to 6.0.x

- minimum helm version now is 3.2.0+
Expand Down
2 changes: 1 addition & 1 deletion zammad/templates/configmap-init.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ data:
elasticsearch-init: |-
#!/bin/bash
set -e
bundle exec rails r 'Setting.set("es_url", "{{ .Values.zammadConfig.elasticsearch.schema }}://{{ if .Values.zammadConfig.elasticsearch.enabled }}zammad-master{{ else }}{{ .Values.zammadConfig.elasticsearch.host }}{{ end }}:{{ .Values.zammadConfig.elasticsearch.port }}")'
bundle exec rails r 'Setting.set("es_url", "{{ .Values.zammadConfig.elasticsearch.schema }}://{{ if .Values.zammadConfig.elasticsearch.enabled }}zammad-elasticsearch{{ else }}{{ .Values.zammadConfig.elasticsearch.host }}{{ end }}:{{ .Values.zammadConfig.elasticsearch.port }}")'
ELASTICSEARCH_USER=${ELASTICSEARCH_USER:-{{ .Values.zammadConfig.elasticsearch.user }}}
if [ -n "${ELASTICSEARCH_USER}" ] && [ -n "${ELASTICSEARCH_PASSWORD}" ]; then
bundle exec rails r "Setting.set(\"es_user\", \"${ELASTICSEARCH_USER}\")"
Expand Down
41 changes: 0 additions & 41 deletions zammad/templates/psp.yaml

This file was deleted.

Loading

0 comments on commit 11eb29e

Please sign in to comment.