# Snappy Mail Helm Chart This Helm chart installs and manages the Snappy Mail application in Kubernetes. ## Prerequisites - Kubernetes cluster - Helm 3 ## Configuration The following table lists the configurable parameters for this chart and their default values. | Parameter | Description | Default | | --------------------------------- | ---------------------------------------- | ---------------------------- | | replicaCount | Number of replicas to run | `1` | | image.repository | Snappy Mail image repository | `porto.interlegis.leg.br/library/docker-snappymail-il` | | image.pullPolicy | Snappy Mail image pull policy | `IfNotPresent` | | image.tag | Snappy Mail image tag | `""` | | imagePullSecrets | Image pull secrets for private repos | `[]` | | nameOverride | Override the name of the chart | `""` | | fullnameOverride | Override the full name of the chart | `""` | | podAnnotations | Annotations to add to the pod | `{}` | | podSecurityContext | Security context for the pod | `{}` | | securityContext | Security context for the container | `{}` | | service.type | Type of service | `ClusterIP` | | service.port | Port for the service | `80` | | snappymail.uploadMaxSize | Maximum size of uploaded files | `25M` | | snappymail.memoryLimit | Memory limit for Snappy Mail | `128M` | | snappymail.secureCookies | Option to turn on secure cookies | `true` | | snappymail.logToStderr | Option to log to stderr | `true` | | ingress.enabled | Option to enable ingress | `false` | | ingress.className | The ingress class for the service | `""` | | ingress.annotations | Annotations for the ingress | `{}` | | ingress.hosts[0].host | Host for ingress | `chart-example.local` | | ingress.hosts[0].paths[0].path | Path for ingress | `/` | | ingress.hosts[0].paths[0].pathType | Path type for ingress | `ImplementationSpecific` | | ingress.tls | TLS settings for ingress | `[]` | | resources.limits.cpu | CPU limit for resources | `1500m` | | resources.limits.memory | Memory limit for resources | `1500Mi` | | resources.requests.cpu | CPU request for resources | `500m` | | resources.requests.memory | Memory request for resources | `700Mi` | | autoscaling.enabled | Option to enable horizontal pod autoscaler | `false` | | autoscaling.minReplicas | Minimum number of replicas | `2` | | autoscaling.maxReplicas | Maximum number of replicas | `10` | | autoscaling.targetCPUUtilizationPercentage | Target CPU utilization percentage | `70` | | nodeSelector | Node labels for pod assignment | `{}` | | tolerations | Toleration labels for pod assignment | `[]` | | persistence.accessMode | Access mode for storage | `ReadWriteMany` | | persistence.size | Size of the storage | `8Gi` | | persistence.storageClass | Storage class | `""` | | mariadb.auth.rootPassword | Root password for MariaDB | `changeme` | | mariadb.auth.database | Database for MariaDB | `snappymail` | | mariadb.auth.username | Username for MariaDB | `snappymail` | | mariadb.auth.password | Password for MariaDB | `changeme` | | mariadb.architecture | MariaDB architecture | `standalone` | | mariadb.primary.resources.limits.cpu | CPU limit for primary container | `1500m` | | mariadb.primary.resources.limits.memory | Memory limit for primary container | `768Mi` | | mariadb.primary.resources.requests.cpu | CPU request for primary container | `500m` | | mariadb.primary.resources.requests.memory | Memory request for primary container | `256Mi` | | redis.architecture | Redis architecture | `standalone` | | redis.auth.enabled | Option to enable authentication for Redis | `false` | | redis.master.persistence.enabled | Option to enable persistence for Redis | `true` | | redis.master.persistence.size | Size of the storage for Redis | `8Gi` | | redis.master.persistence.storageClass | Storage class for Redis | `""` | Specify each parameter using the `--set key=value[,key=value]` argument to `helm install` or provide a values.yaml file in the command like `-f values.yaml`. ## Uninstall To uninstall the chart, run: ``` helm delete snappymail ```