diff --git a/.github/workflows/generate-chart-readme.yml b/.github/workflows/generate-chart-readme.yml index 81a188da29..15d2f12990 100644 --- a/.github/workflows/generate-chart-readme.yml +++ b/.github/workflows/generate-chart-readme.yml @@ -30,6 +30,9 @@ on: - 'bitnami/nginx-ingress-controller/values.yaml' - 'bitnami/node/values.yaml' - 'bitnami/node-exporter/values.yaml' + - 'bitnami/parse/values.yaml' + - 'bitnami/phabricator/values.yaml' + - 'bitnami/phpbb/values.yaml' jobs: generate-chart-readme: diff --git a/bitnami/parse/Chart.yaml b/bitnami/parse/Chart.yaml index a9c990b981..75fbd72051 100644 --- a/bitnami/parse/Chart.yaml +++ b/bitnami/parse/Chart.yaml @@ -30,4 +30,4 @@ sources: - https://github.com/bitnami/bitnami-docker-parse - https://github.com/bitnami/bitnami-docker-parse-dashboard - https://parse.com/ -version: 15.0.0 +version: 15.0.1 diff --git a/bitnami/parse/README.md b/bitnami/parse/README.md index e5981561c9..c2b6efdb4e 100644 --- a/bitnami/parse/README.md +++ b/bitnami/parse/README.md @@ -46,152 +46,181 @@ The command removes all the Kubernetes components associated with the chart and ## Parameters -The following table lists the configurable parameters of the Parse chart and their default values. +### Global parameters -### Global Parameters +| Name | Description | Value | +| ------------------------- | ----------------------------------------------- | ----- | +| `global.imageRegistry` | Global Docker image registry | `nil` | +| `global.imagePullSecrets` | Global Docker registry secret names as an array | `[]` | +| `global.storageClass` | Global StorageClass for Persistent Volume(s) | `nil` | -| Parameter | Description | Default | -|---------------------------|-------------------------------------------------|---------------------------------------------------------| -| `global.imageRegistry` | Global Docker image registry | `nil` | -| `global.imagePullSecrets` | Global Docker registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | -| `global.storageClass` | Global storage class for dynamic provisioning | `nil` | ### Common Parameters -| Parameter | Description | Default | -|---------------------|-----------------------------------------------------------------------------------------------------------|--------------------------------| -| `nameOverride` | String to partially override common.names.fullname template with a string (will prepend the release name) | `nil` | -| `fullnameOverride` | String to fully override common.names.fullname template with a string | `nil` | -| `commonLabels` | Labels to add to all deployed objects | `{}` | -| `commonAnnotations` | Annotations to add to all deployed objects | `{}` | -| `extraDeploy` | Array of extra objects to deploy with the release | `[]` (evaluated as a template) | +| Name | Description | Value | +| ------------------- | -------------------------------------------------------------------------------------------- | ----- | +| `nameOverride` | String to partially override common.names.fullname template (will maintain the release name) | `nil` | +| `fullnameOverride` | String to fully override common.names.fullname template | `nil` | +| `kubeVersion` | Force target Kubernetes version (using Helm capabilites if not set) | `nil` | +| `commonLabels` | Add labels to all the deployed resources | `{}` | +| `commonAnnotations` | Add annotations to all the deployed resources | `{}` | +| `extraDeploy` | Array of extra objects to deploy with the release | `[]` | + ### Parse server parameters -| Parameter | Description | Default | -|-------------------------------------|--------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------| -| `server.image.registry` | Parse image registry | `docker.io` | -| `server.image.repository` | Parse image name | `bitnami/parse` | -| `server.image.tag` | Parse image tag | `{TAG_NAME}` | -| `server.image.pullPolicy` | Image pull policy | `IfNotPresent` | -| `server.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | -| `server.securityContext.enabled` | Enable security context for Parse Server | `true` | -| `server.securityContext.fsGroup` | Group ID for Parse Server container | `1001` | -| `server.securityContext.runAsUser` | User ID for Parse Server container | `1001` | -| `server.host` | Hostname to use to access Parse server (when `ingress.enabled=true` is set to `ingress.server.hosts[0].name` by default) | `nil` | -| `server.port` | Parse server port | `1337` | -| `server.hostAliases` | Add deployment host aliases | `[]` | -| `server.mountPath` | Parse server API mount path | `/parse` | -| `server.appId` | Parse server App Id | `myappID` | -| `server.masterKey` | Parse server Master Key | `random 10 character alphanumeric string` | -| `server.enableCloudCode` | Enable Parse Cloud Clode | `false` | -| `server.cloudCodeScripts` | Dictionary of Cloud Code scripts | `nil` | -| `server.existingCloudCodeScriptsCM` | ConfigMap with Cloud Code scripts (Note: Overrides `cloudCodeScripts`). | `nil` | -| `server.resources` | The [resources] to allocate for container | `{}` | -| `server.livenessProbe` | Liveness probe configuration for Server | `Check values.yaml file` | -| `server.readinessProbe` | Readiness probe configuration for Server | `Check values.yaml file` | -| `server.podAffinityPreset` | Parse server pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | -| `server.podAntiAffinityPreset` | Parse server pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` | -| `server.nodeAffinityPreset.type` | Parse server node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | -| `server.nodeAffinityPreset.key` | Parse server node label key to match Ignored if `affinity` is set. | `""` | -| `server.nodeAffinityPreset.values` | Parse server node label values to match. Ignored if `affinity` is set. | `[]` | -| `server.affinity` | Parse server affinity for pod assignment | `{}` (evaluated as a template) | -| `server.nodeSelector` | Parse server node labels for pod assignment | `{}` (evaluated as a template) | -| `server.tolerations` | Parse server tolerations for pod assignment | `[]` (evaluated as a template) | -| `server.extraEnvVars` | Array containing extra env vars (evaluated as a template) | `nil` | -| `server.extraEnvVarsCM` | ConfigMap containing extra env vars (evaluated as a template) | `nil` | -| `server.extraEnvVarsSecret` | Secret containing extra env vars (evaluated as a template) | `nil` | +| Name | Description | Value | +| ------------------------------------------- | ------------------------------------------------------------------------------------------------------ | ---------------------- | +| `server.image.registry` | Parse image registry | `docker.io` | +| `server.image.repository` | Parse image repository | `bitnami/parse` | +| `server.image.tag` | Parse image tag (immutable tags are recommended) | `4.9.3-debian-10-r170` | +| `server.image.pullPolicy` | Image pull policy | `IfNotPresent` | +| `server.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | +| `server.hostAliases` | Deployment pod host aliases | `[]` | +| `server.securityContext.enabled` | Enable security context for Parse Server | `true` | +| `server.securityContext.fsGroup` | Group ID for Parse Server container | `1001` | +| `server.securityContext.runAsUser` | User ID for Parse Server container | `1001` | +| `server.port` | Parse server port | `1337` | +| `server.mountPath` | Parse server API mount path | `/parse` | +| `server.appId` | Parse server App ID | `myappID` | +| `server.masterKey` | Parse server Master Key | `nil` | +| `server.extraEnvVars` | An array to add extra env vars | `[]` | +| `server.extraEnvVarsCM` | Name of a ConfigMap containing extra environment variables | `nil` | +| `server.extraEnvVarsSecret` | Name of a Secret containing extra environment variables | `nil` | +| `server.enableCloudCode` | Enable Parse Cloud Code | `false` | +| `server.cloudCodeScripts` | Cloud Code scripts | `{}` | +| `server.existingCloudCodeScriptsCM` | ConfigMap with Cloud Code scripts (Note: Overrides `cloudCodeScripts`). | `nil` | +| `server.resources` | Parse Server pods' resource requests and limits | `{}` | +| `server.livenessProbe.enabled` | Enable livenessProbe | `true` | +| `server.livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `120` | +| `server.livenessProbe.periodSeconds` | Period seconds for livenessProbe | `10` | +| `server.livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `5` | +| `server.livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `5` | +| `server.livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` | +| `server.readinessProbe.enabled` | Enable readinessProbe | `true` | +| `server.readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `30` | +| `server.readinessProbe.periodSeconds` | Period seconds for readinessProbe | `5` | +| `server.readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `5` | +| `server.readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `5` | +| `server.readinessProbe.successThreshold` | Success threshold for readinessProbe | `1` | +| `server.podAffinityPreset` | Parse server pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | +| `server.podAntiAffinityPreset` | Parse server pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` | +| `server.nodeAffinityPreset.type` | Parse server node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | +| `server.nodeAffinityPreset.key` | Parse server node label key to match Ignored if `affinity` is set. | `""` | +| `server.nodeAffinityPreset.values` | Parse server node label values to match. Ignored if `affinity` is set. | `[]` | +| `server.affinity` | Parse server affinity for pod assignment | `{}` | +| `server.nodeSelector` | Parse server node labels for pod assignment | `{}` | +| `server.tolerations` | Parse server tolerations for pod assignment | `[]` | + ### Traffic Exposure Parameters -| Parameter | Description | Default | -|----------------------------------|----------------------------------------|--------------------------| -| `service.type` | Kubernetes Service type | `LoadBalancer` | -| `service.port` | Service HTTP port (Dashboard) | `80` | -| `service.loadBalancerIP` | `loadBalancerIP` for the Parse Service | `nil` | -| `service.externalTrafficPolicy` | Enable client source IP preservation | `Cluster` | -| `service.nodePorts.http` | Kubernetes http node port | `""` | -| `ingress.enabled` | Enable ingress controller resource | `false` | -| `ingress.annotations` | Ingress annotations | `[]` | -| `ingress.certManager` | Add annotations for cert-manager | `false` | -| `ingress.dashboard.hostname` | Default host for the ingress resource | `parse-dashboard.local` | -| `ingress.dashboard.extraHosts` | Extra hosts for the ingress resource | `[]` | -| `ingress.dashboard.path` | Default path for the ingress resource | `/` | -| `ingress.dashboard.pathType` | Ingress path type | `ImplementationSpecific` | -| `ingress.server.hostname` | Default host for the ingress resource | `parse-server.local` | -| `ingress.server.path` | Default path for the ingress resource | `/` | -| `ingress.server.pathType` | Ingress path type | `ImplementationSpecific` | -| `ingress.server.extraHosts` | Extra hosts for the ingress resource | `[]` | -| `ingress.secrets[0].name` | TLS Secret Name | `nil` | -| `ingress.secrets[0].certificate` | TLS Secret Certificate | `nil` | -| `ingress.secrets[0].key` | TLS Secret Key | `nil` | +| Name | Description | Value | +| ------------------------------- | ---------------------------------------------------------------------------------------------------------- | ------------------------ | +| `service.type` | Kubernetes Service type | `LoadBalancer` | +| `service.port` | Service HTTP port (Dashboard) | `80` | +| `service.nodePorts.http` | Kubernetes HTTP node port | `""` | +| `service.externalTrafficPolicy` | Enable client source IP preservation | `Cluster` | +| `ingress.enabled` | Set to true to enable ingress record generation | `false` | +| `ingress.certManager` | Set this to true in order to add the corresponding annotations for cert-manager | `false` | +| `ingress.tls` | Enable TLS configuration for the hostname defined at ingress.hostname parameter | `false` | +| `ingress.annotations` | Ingress annotations | `nil` | +| `ingress.dashboard.hostname` | Default host for the ingress resource | `parse-dashboard.local` | +| `ingress.dashboard.path` | The Path to WordPress. You may need to set this to '/*' in order to use this with ALB ingress controllers. | `/` | +| `ingress.dashboard.pathType` | Ingress path type | `ImplementationSpecific` | +| `ingress.dashboard.extraHosts` | The list of additional hostnames to be covered with this ingress record. | `[]` | +| `ingress.dashboard.extraPaths` | Any additional arbitrary paths that may need to be added to the ingress under the main host. | `[]` | +| `ingress.server.hostname` | Default host for the ingress resource | `parse-server.local` | +| `ingress.server.path` | Default path for the ingress resource*' in order to use this with ALB ingress controllers. | `/` | +| `ingress.server.pathType` | Ingress path type | `ImplementationSpecific` | +| `ingress.server.extraHosts` | The list of additional hostnames to be covered with this ingress record. | `[]` | +| `ingress.server.extraPaths` | Any additional arbitrary paths that may need to be added to the ingress under the main host. | `[]` | +| `ingress.extraTls` | The tls configuration for additional hostnames to be covered with this ingress record. | `[]` | +| `ingress.secrets` | If you're providing your own certificates, please use this to add the certificates as secrets | `nil` | + ### Persistence Parameters -| Parameter | Description | Default | -|----------------------------|--------------------------------------|---------------------------------------------| -| `persistence.enabled` | Enable Parse persistence using PVC | `true` | -| `persistence.storageClass` | PVC Storage Class for Parse volume | `nil` (uses alpha storage class annotation) | -| `persistence.accessMode` | PVC Access Mode for Parse volume | `ReadWriteOnce` | -| `persistence.size` | PVC Storage Request for Parse volume | `8Gi` | +| Name | Description | Value | +| -------------------------- | ------------------------------------ | --------------- | +| `persistence.enabled` | Enable Parse persistence using PVC | `true` | +| `persistence.storageClass` | PVC Storage Class for Parse volume | `nil` | +| `persistence.accessMode` | PVC Access Mode for Parse volume | `ReadWriteOnce` | +| `persistence.size` | PVC Storage Request for Parse volume | `8Gi` | + ### Dashboard Parameters -| Parameter | Description | Default | -|---------------------------------------|-----------------------------------------------------------------------------------------------------------|---------------------------------------------------------| -| `dashboard.enabled` | Enable parse dashboard | `true` | -| `dashboard.image.registry` | Dashboard image registry | `docker.io` | -| `dashboard.image.repository` | Dashboard image name | `bitnami/parse-dashboard` | -| `dashboard.image.tag` | Dashboard image tag | `{TAG_NAME}` | -| `dashboard.image.pullPolicy` | Image pull policy | `IfNotPresent` | -| `dashboard.securityContext.enabled` | Enable security context for Dashboard | `true` | -| `dashboard.securityContext.fsGroup` | Group ID for Dashboard container | `1001` | -| `dashboard.securityContext.runAsUser` | User ID for Dashboard container | `1001` | -| `dashboard.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | -| `dashboard.hostAliases` | Add deployment host aliases | `[]` | -| `dashboard.username` | Dashboard username | `user` | -| `dashboard.password` | Dashboard user password | `random 10 character alphanumeric string` | -| `dashboard.appName` | Dashboard application name | `MyDashboard` | -| `dashboard.parseServerUrlProtocol` | Protocol used by Parse Dashboard to form the URLs to Parse Server. | `http` | -| `dashboard.resources` | The [resources] to allocate for container | `{}` | -| `dashboard.livenessProbe` | Liveness probe configuration for Dashboard | `Check values.yaml file` | -| `dashboard.readinessProbe` | Readiness probe configuration for Dashboard | `Check values.yaml file` | -| `dashboard.podAffinityPreset` | Parse dashboard pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | -| `dashboard.podAntiAffinityPreset` | Parse dashboard pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` | -| `dashboard.nodeAffinityPreset.type` | Parse dashboard node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | -| `dashboard.nodeAffinityPreset.key` | Parse dashboard node label key to match Ignored if `affinity` is set. | `""` | -| `dashboard.nodeAffinityPreset.values` | Parse dashboard node label values to match. Ignored if `affinity` is set. | `[]` | -| `dashboard.affinity` | Parse dashboard affinity for pod assignment | `{}` (evaluated as a template) | -| `dashboard.nodeSelector` | Parse dashboard node labels for pod assignment | `{}` (evaluated as a template) | -| `dashboard.tolerations` | Parse dashboard tolerations for pod assignment | `[]` (evaluated as a template) | -| `dashboard.extraEnvVars` | Array containing extra env vars (evaluated as a template) | `nil` | -| `dashboard.extraEnvVarsCM` | ConfigMap containing extra env vars (evaluated as a template) | `nil` | -| `dashboard.extraEnvVarsSecret` | Secret containing extra env vars (evaluated as a template) | `nil` | +| Name | Description | Value | +| ---------------------------------------------- | --------------------------------------------------------------------------------------------------------- | ------------------------- | +| `dashboard.enabled` | Enable parse dashboard | `true` | +| `dashboard.image.registry` | Dashboard image registry | `docker.io` | +| `dashboard.image.repository` | Dashboard image repository | `bitnami/parse-dashboard` | +| `dashboard.image.tag` | Dashboard image tag (immutable tags are recommended) | `2.1.0-debian-10-r397` | +| `dashboard.image.pullPolicy` | Image pull policy | `IfNotPresent` | +| `dashboard.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | +| `dashboard.hostAliases` | Deployment pod host aliases | `[]` | +| `dashboard.securityContext.enabled` | Enable security context for Dashboard | `true` | +| `dashboard.securityContext.fsGroup` | Group ID for Dashboard container | `1001` | +| `dashboard.securityContext.runAsUser` | User ID for Dashboard container | `1001` | +| `dashboard.username` | Parse Dashboard application username | `user` | +| `dashboard.password` | Parse Dashboard application password | `nil` | +| `dashboard.appName` | Parse Dashboard application name | `MyDashboard` | +| `dashboard.resources` | Parse Dashboard pods' resource requests and limits | `{}` | +| `dashboard.livenessProbe.enabled` | Enable livenessProbe | `true` | +| `dashboard.livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `240` | +| `dashboard.livenessProbe.periodSeconds` | Period seconds for livenessProbe | `10` | +| `dashboard.livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `5` | +| `dashboard.livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `5` | +| `dashboard.livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` | +| `dashboard.readinessProbe.enabled` | Enable readinessProbe | `true` | +| `dashboard.readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `30` | +| `dashboard.readinessProbe.periodSeconds` | Period seconds for readinessProbe | `5` | +| `dashboard.readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `5` | +| `dashboard.readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `5` | +| `dashboard.readinessProbe.successThreshold` | Success threshold for readinessProbe | `1` | +| `dashboard.podAffinityPreset` | Parse dashboard pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | +| `dashboard.podAntiAffinityPreset` | Parse dashboard pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` | +| `dashboard.nodeAffinityPreset.type` | Parse dashboard node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | +| `dashboard.nodeAffinityPreset.key` | Parse dashboard node label key to match Ignored if `affinity` is set. | `""` | +| `dashboard.nodeAffinityPreset.values` | Parse dashboard node label values to match. Ignored if `affinity` is set. | `[]` | +| `dashboard.affinity` | Parse dashboard affinity for pod assignment | `{}` | +| `dashboard.nodeSelector` | Parse dashboard node labels for pod assignment | `{}` | +| `dashboard.tolerations` | Parse dashboard tolerations for pod assignment | `[]` | +| `dashboard.parseServerUrlProtocol` | Protocol used by Parse Dashboard to form the URLs to Parse server | `http` | +| `dashboard.extraEnvVars` | An array to add extra env vars | `[]` | +| `dashboard.extraEnvVarsCM` | Name of a ConfigMap containing extra environment variables | `nil` | +| `dashboard.extraEnvVarsSecret` | Name of a Secret containing extra environment variables | `nil` | + ### Volume Permissions parameters -| Parameter | Description | Default | -|--------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------| -| `volumePermissions.enabled` | Enable init container that changes volume permissions in the data directory (for cases where the default k8s `runAsUser` and `fsUser` values do not work) | `false` | -| `volumePermissions.image.registry` | Init container volume-permissions image registry | `docker.io` | -| `volumePermissions.image.repository` | Init container volume-permissions image name | `bitnami/bitnami-shell` | -| `volumePermissions.image.tag` | Init container volume-permissions image tag | `"10"` | -| `volumePermissions.image.pullPolicy` | Init container volume-permissions image pull policy | `Always` | -| `volumePermissions.resources` | Init container resource requests/limit | `nil` | +| Name | Description | Value | +| ------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- | +| `volumePermissions.enabled` | Enable init container that changes volume permissions in the data directory (for cases where the default k8s `runAsUser` and `fsUser` values do not work) | `false` | +| `volumePermissions.image.registry` | Init container volume-permissions image registry | `docker.io` | +| `volumePermissions.image.repository` | Init container volume-permissions image name | `bitnami/bitnami-shell` | +| `volumePermissions.image.tag` | Init container volume-permissions image tag | `10-debian-10-r120` | +| `volumePermissions.image.pullPolicy` | Init container volume-permissions image pull policy | `Always` | +| `volumePermissions.image.pullSecrets` | Init container volume-permissions image pull secrets | `[]` | +| `volumePermissions.resources` | The resources for the container | `{}` | + ### MongoDB® Parameters -| Parameter | Description | Default | -|------------------------------------|---------------------------------------------|---------------------------------------------| -| `mongodb.auth.enabled` | Enable MongoDB® password authentication | `true` | -| `mongodb.auth.rootPassword` | MongoDB® admin password | `nil` | -| `mongodb.auth.username` | MongoDB® user | `bn_parse` | -| `mongodb.auth.password` | MongoDB® user password | `` | -| `mongodb.auth.database` | MongoDB® database | `bitnami_parse` | -| `mongodb.persistence.enabled` | Enable MongoDB® persistence using PVC | `true` | -| `mongodb.persistence.storageClass` | PVC Storage Class for MongoDB® volume | `nil` (uses alpha storage class annotation) | -| `mongodb.persistence.accessMode` | PVC Access Mode for MongoDB® volume | `ReadWriteOnce` | -| `mongodb.persistence.size` | PVC Storage Request for MongoDB® volume | `8Gi` | +| Name | Description | Value | +| ---------------------------------- | ------------------------------------------- | --------------- | +| `mongodb.enabled` | Enable MongoDB® chart | `true` | +| `mongodb.auth.enabled` | Enable MongoDB® password authentication | `true` | +| `mongodb.auth.rootPassword` | MongoDB® admin password | `""` | +| `mongodb.auth.username` | MongoDB® user | `bn_parse` | +| `mongodb.auth.password` | MongoDB® user password | `""` | +| `mongodb.auth.database` | MongoDB® database | `bitnami_parse` | +| `mongodb.persistence.enabled` | Enable MongoDB® persistence using PVC | `true` | +| `mongodb.persistence.storageClass` | PVC Storage Class for MongoDB® volume | `nil` | +| `mongodb.persistence.accessMode` | PVC Access Mode for MongoDB® volume | `ReadWriteOnce` | +| `mongodb.persistence.size` | PVC Storage Request for MongoDB® volume | `8Gi` | + The above parameters map to the env variables defined in [bitnami/parse](http://github.com/bitnami/bitnami-docker-parse). For more information please refer to the [bitnami/parse](http://github.com/bitnami/bitnami-docker-parse) image documentation. diff --git a/bitnami/parse/values.yaml b/bitnami/parse/values.yaml index 383411c2b3..94e4874b42 100644 --- a/bitnami/parse/values.yaml +++ b/bitnami/parse/values.yaml @@ -1,77 +1,55 @@ +## @section Global parameters ## Global Docker image parameters ## Please, note that this will override the image parameters, including dependencies, configured to use the global value -## Current available global Docker image parameters: imageRegistry and imagePullSecrets -## -# global: -# imageRegistry: myRegistryName -# imagePullSecrets: -# - myRegistryKeySecretName -# storageClass: myStorageClass +## Current available global Docker image parameters: imageRegistry, imagePullSecrets and storageClass -## String to partially override common.names.fullname template (will maintain the release name) +## @param global.imageRegistry Global Docker image registry +## @param global.imagePullSecrets Global Docker registry secret names as an array +## @param global.storageClass Global StorageClass for Persistent Volume(s) ## -# nameOverride: +global: + imageRegistry: + ## E.g. + ## imagePullSecrets: + ## - myRegistryKeySecretName + ## + imagePullSecrets: [] + storageClass: -## String to fully override common.names.fullname template +## @section Common Parameters + +## @param nameOverride String to partially override common.names.fullname template (will maintain the release name) ## -# fullnameOverride: - -## Force target Kubernetes version (using Helm capabilites if not set) +nameOverride: +## @param fullnameOverride String to fully override common.names.fullname template +## +fullnameOverride: +## @param kubeVersion Force target Kubernetes version (using Helm capabilites if not set) ## kubeVersion: - -## Add labels to all the deployed resources +## @param commonLabels Add labels to all the deployed resources ## commonLabels: {} - -## Add annotations to all the deployed resources +## @param commonAnnotations Add annotations to all the deployed resources ## commonAnnotations: {} - -## Init containers parameters: -## volumePermissions: Change the owner and group of the persistent volume mountpoint to runAsUser:fsGroup values from the securityContext section. +## @param extraDeploy Array of extra objects to deploy with the release ## -volumePermissions: - enabled: false - image: - registry: docker.io - repository: bitnami/bitnami-shell - tag: 10-debian-10-r120 - pullPolicy: Always - ## Optionally specify an array of imagePullSecrets. - ## Secrets must be manually created in the namespace. - ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ - ## - # pullSecrets: - # - myRegistryKeySecretName - resources: {} +extraDeploy: [] -## Kubernetes serviceType for Parse Deployment -## ref: http://kubernetes.io/docs/user-guide/services/#publishing-services---service-types -## -service: - type: LoadBalancer - # Parse dashboard HTTP Port - port: 80 - ## loadBalancerIP: - ## - ## nodePorts: - ## http: - ## - nodePorts: - http: "" - ## Enable client source IP preservation - ## ref http://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip - ## - externalTrafficPolicy: Cluster +## @section Parse server parameters ## loadBalancerIP for the Parse Service (optional, cloud specific) ## ref: http://kubernetes.io/docs/user-guide/services/#type-loadbalancer ## -# server: ## Bitnami Parse image version ## ref: https://hub.docker.com/r/bitnami/parse/tags/ + ## @param server.image.registry Parse image registry + ## @param server.image.repository Parse image repository + ## @param server.image.tag Parse image tag (immutable tags are recommended) + ## @param server.image.pullPolicy Image pull policy + ## @param server.image.pullSecrets Specify docker-registry secret names as an array ## image: registry: docker.io @@ -85,83 +63,85 @@ server: ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ + ## Example: + ## pullSecrets: + ## - myRegistryKeySecretName ## - # pullSecrets: - # - myRegistryKeySecretName - - ## Deployment pod host aliases + pullSecrets: [] + ## @param server.hostAliases Deployment pod host aliases ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ ## hostAliases: [] - ## Parse Server Pod Security Context ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ + ## @param server.securityContext.enabled Enable security context for Parse Server + ## @param server.securityContext.fsGroup Group ID for Parse Server container + ## @param server.securityContext.runAsUser User ID for Parse Server container ## securityContext: enabled: true fsGroup: 1001 runAsUser: 1001 - - ## Parse Server Port + ## @param server.port Parse server port ## ref: https://github.com/bitnami/bitnami-docker-parse#configuration ## port: 1337 - - ## Parse API mount path + ## @param server.mountPath Parse server API mount path ## ref: https://github.com/bitnami/bitnami-docker-parse#configuration ## mountPath: /parse - - ## Parse Server App ID + ## @param server.appId Parse server App ID ## ref: https://github.com/bitnami/bitnami-docker-parse#configuration ## appId: myappID - - ## Parse Server Master Key + ## @param server.masterKey Parse server Master Key ## ref: https://github.com/bitnami/bitnami-docker-parse#configuration ## - # masterKey: - - ## An array to add extra env vars + masterKey: + ## @param server.extraEnvVars An array to add extra env vars ## For example: ## extraEnvVars: ## - name: PARSE_SERVER_ALLOW_CLIENT_CLASS_CREATION ## value: "true" ## extraEnvVars: [] - ## Name of a ConfigMap containing extra env vars + ## @param server.extraEnvVarsCM Name of a ConfigMap containing extra environment variables ## extraEnvVarsCM: - ## Name of a Secret containing extra env vars + ## @param server.extraEnvVarsSecret Name of a Secret containing extra environment variables ## extraEnvVarsSecret: - - ## Enable Cloud Clode + ## @param server.enableCloudCode Enable Parse Cloud Code ## ref: https://github.com/bitnami/bitnami-docker-parse#how-to-deploy-your-cloud-functions-with-parse-cloud-code ## enableCloudCode: false - - ## Cloud Code scripts + ## @param server.cloudCodeScripts Cloud Code scripts ## Specify dictionary of Cloud Code scripts and content ## Alternatively, you can put your scripts under the files/cloud directory ## - # cloudCodeScripts: - # main.js: | - # Parse.Cloud.define("sayHelloWorld", function(request, response) { - # return "Hello world!"; - # }); - - ## ConfigMap with Cloud Code scripts + ## cloudCodeScripts: + ## main.js: | + ## Parse.Cloud.define("sayHelloWorld", function(request, response) { + ## return "Hello world!"; + ## }); + ## + cloudCodeScripts: {} + ## @param server.existingCloudCodeScriptsCM ConfigMap with Cloud Code scripts (Note: Overrides `cloudCodeScripts`). ## NOTE: This will override cloudCodeScripts ## - # existingCloudCodeScriptsCM - - ## Parse Server pods' resource requests and limits + existingCloudCodeScriptsCM: + ## @param server.resources Parse Server pods' resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ ## resources: {} - ## Parse Server pods' liveness and readiness probes + ## Parse Server pods' liveness probes ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes) + ## @param server.livenessProbe.enabled Enable livenessProbe + ## @param server.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe + ## @param server.livenessProbe.periodSeconds Period seconds for livenessProbe + ## @param server.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe + ## @param server.livenessProbe.failureThreshold Failure threshold for livenessProbe + ## @param server.livenessProbe.successThreshold Success threshold for livenessProbe ## livenessProbe: enabled: true @@ -170,6 +150,15 @@ server: timeoutSeconds: 5 successThreshold: 1 failureThreshold: 5 + ## Parse Server pods' readiness probes + ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes) + ## @param server.readinessProbe.enabled Enable readinessProbe + ## @param server.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe + ## @param server.readinessProbe.periodSeconds Period seconds for readinessProbe + ## @param server.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe + ## @param server.readinessProbe.failureThreshold Failure threshold for readinessProbe + ## @param server.readinessProbe.successThreshold Success threshold for readinessProbe + ## readinessProbe: enabled: true initialDelaySeconds: 30 @@ -177,64 +166,205 @@ server: timeoutSeconds: 5 successThreshold: 1 failureThreshold: 5 - - ## Pod affinity preset + ## @param server.podAffinityPreset Parse server pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity - ## Allowed values: soft, hard ## podAffinityPreset: "" - - ## Pod anti-affinity preset + ## @param server.podAntiAffinityPreset Parse server pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity - ## Allowed values: soft, hard ## podAntiAffinityPreset: soft - ## Node affinity preset ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity - ## Allowed values: soft, hard ## nodeAffinityPreset: - ## Node affinity type - ## Allowed values: soft, hard + ## @param server.nodeAffinityPreset.type Parse server node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` ## type: "" - ## Node label key to match + ## @param server.nodeAffinityPreset.key Parse server node label key to match Ignored if `affinity` is set. ## E.g. ## key: "kubernetes.io/e2e-az-name" ## key: "" - ## Node label values to match + ## @param server.nodeAffinityPreset.values Parse server node label values to match. Ignored if `affinity` is set. ## E.g. ## values: ## - e2e-az1 ## - e2e-az2 ## values: [] - - ## Affinity for pod assignment + ## @param server.affinity Parse server affinity for pod assignment ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity ## Note: server.podAffinityPreset, server.podAntiAffinityPreset, and server.nodeAffinityPreset will be ignored when it's set ## affinity: {} - - ## Node labels for pod assignment + ## @param server.nodeSelector Parse server node labels for pod assignment ## ref: https://kubernetes.io/docs/user-guide/node-selection/ ## nodeSelector: {} - - ## Tolerations for pod assignment + ## @param server.tolerations Parse server tolerations for pod assignment ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ ## tolerations: [] -dashboard: - ## Enable deployment of Parse Dashboard +## @section Traffic Exposure Parameters + +## Kubernetes serviceType for Parse Deployment +## ref: http://kubernetes.io/docs/user-guide/services/#publishing-services---service-types +## +service: + ## @param service.type Kubernetes Service type + ## + type: LoadBalancer + ## @param service.port Service HTTP port (Dashboard) + ## + port: 80 + ## loadBalancerIP: + ## @param service.nodePorts.http Kubernetes HTTP node port + ## nodePorts: + ## http: + ## + nodePorts: + http: "" + ## @param service.externalTrafficPolicy Enable client source IP preservation + ## ref http://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip + ## + externalTrafficPolicy: Cluster +## Configure the ingress resource that allows you to access the Parse installation. +## ref: http://kubernetes.io/docs/user-guide/ingress/ +## +ingress: + ## @param ingress.enabled Set to true to enable ingress record generation + ## + enabled: false + ## @param ingress.certManager Set this to true in order to add the corresponding annotations for cert-manager + ## + certManager: false + ## @param ingress.tls Enable TLS configuration for the hostname defined at ingress.hostname parameter + ## TLS certificates will be retrieved from a TLS secret with name: {{- printf "%s-tls" .Values.ingress.hostname }} + ## You can use the ingress.secrets parameter to create this TLS secret or relay on cert-manager to create it + ## + tls: false + ## @param ingress.annotations Ingress annotations + ## If certManager is set to true, the annotation 'kubernetes.io/tls-acme: "true"' will automatically be set + ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md + ## e.g: + ## kubernetes.io/ingress.class: nginx + ## + annotations: + dashboard: + ## @param ingress.dashboard.hostname Default host for the ingress resource + ## + hostname: parse-dashboard.local + ## @param ingress.dashboard.path The Path to WordPress. You may need to set this to '/*' in order to use this with ALB ingress controllers. + ## + path: / + ## @param ingress.dashboard.pathType Ingress path type + ## + pathType: ImplementationSpecific + ## @param ingress.dashboard.extraHosts The list of additional hostnames to be covered with this ingress record. + ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array + ## extraHosts: + ## - name: wordpress.local + ## path: / + ## + extraHosts: [] + ## @param ingress.dashboard.extraPaths Any additional arbitrary paths that may need to be added to the ingress under the main host. + ## For example: The ALB ingress controller requires a special rule for handling SSL redirection. + ## extraPaths: + ## - path: /* + ## backend: + ## serviceName: ssl-redirect + ## servicePort: use-annotation + ## + extraPaths: [] + server: + ## @param ingress.server.hostname Default host for the ingress resource + ## + hostname: parse-server.local + ## @param ingress.server.path Default path for the ingress resource*' in order to use this with ALB ingress controllers. + ## + path: / + ## @param ingress.server.pathType Ingress path type + ## + pathType: ImplementationSpecific + ## @param ingress.server.extraHosts The list of additional hostnames to be covered with this ingress record. + ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array + ## extraHosts: + ## - name: wordpress.local + ## path: / + ## + extraHosts: [] + ## @param ingress.server.extraPaths Any additional arbitrary paths that may need to be added to the ingress under the main host. + ## For example: The ALB ingress controller requires a special rule for handling SSL redirection. + ## extraPaths: + ## - path: /* + ## backend: + ## serviceName: ssl-redirect + ## servicePort: use-annotation + ## + extraPaths: [] + ## @param ingress.extraTls The tls configuration for additional hostnames to be covered with this ingress record. + ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls + ## extraTls: + ## - hosts: + ## - wordpress.local + ## secretName: wordpress.local-tls + ## + extraTls: [] + ## @param ingress.secrets If you're providing your own certificates, please use this to add the certificates as secrets + ## key and certificate should start with -----BEGIN CERTIFICATE----- or + ## -----BEGIN RSA PRIVATE KEY----- + ## + ## name should line up with a tlsSecret set further up + ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set + ## + ## It is also possible to create and manage the certificates outside of this helm chart + ## Please see README.md for more information + ## e.g: + ## - name: parse.local-tls + ## key: + ## certificate: + ## + secrets: + +## @section Persistence Parameters + +## Enable persistence using Persistent Volume Claims +## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ +## +persistence: + ## @param persistence.enabled Enable Parse persistence using PVC ## enabled: true + ## @param persistence.storageClass PVC Storage Class for Parse volume + ## If defined, storageClassName: + ## If set to "-", storageClassName: "", which disables dynamic provisioning + ## If undefined (the default) or set to null, no storageClassName spec is + ## set, choosing the default provisioner. (gp2 on AWS, standard on + ## GKE, AWS & OpenStack) + ## + storageClass: + ## @param persistence.accessMode PVC Access Mode for Parse volume + ## + accessMode: ReadWriteOnce + ## @param persistence.size PVC Storage Request for Parse volume + ## + size: 8Gi +## @section Dashboard Parameters + +dashboard: + ## @param dashboard.enabled Enable parse dashboard + ## + enabled: true ## Bitnami Parse Dashboard image version ## ref: https://hub.docker.com/r/bitnami/parse-dashboard/tags/ + ## @param dashboard.image.registry Dashboard image registry + ## @param dashboard.image.repository Dashboard image repository + ## @param dashboard.image.tag Dashboard image tag (immutable tags are recommended) + ## @param dashboard.image.pullPolicy Image pull policy + ## @param dashboard.image.pullSecrets Specify docker-registry secret names as an array ## image: registry: docker.io @@ -248,45 +378,50 @@ dashboard: ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ + ## Example: + ## pullSecrets: + ## - myRegistryKeySecretName ## - # pullSecrets: - # - myRegistryKeySecretName - - ## Deployment pod host aliases + pullSecrets: [] + ## @param dashboard.hostAliases Deployment pod host aliases ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ ## hostAliases: [] - ## Parse Dashboard Pod Security Context ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ + ## @param dashboard.securityContext.enabled Enable security context for Dashboard + ## @param dashboard.securityContext.fsGroup Group ID for Dashboard container + ## @param dashboard.securityContext.runAsUser User ID for Dashboard container ## securityContext: enabled: true fsGroup: 1001 runAsUser: 1001 - - ## Parse Dashboard application username + ## @param dashboard.username Parse Dashboard application username ## ref: https://github.com/bitnami/bitnami-docker-parse-dashboard#configuration ## username: user - - ## Parse Dashboard application password + ## @param dashboard.password Parse Dashboard application password ## Defaults to a random 10-character alphanumeric string if not set ## ref: https://github.com/bitnami/bitnami-docker-parse-dashboard#configuration ## - # password: - - ## Parse Dashboard application name + password: + ## @param dashboard.appName Parse Dashboard application name ## ref: https://github.com/bitnami/bitnami-docker-parse-dashboard#configuration ## appName: MyDashboard - - ## Parse Dashboard pods' resource requests and limits + ## @param dashboard.resources Parse Dashboard pods' resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ ## resources: {} - ## Parse Dashboard pods' liveness and readiness probes + ## Parse Dashboard pods' liveness probe ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes) + ## @param dashboard.livenessProbe.enabled Enable livenessProbe + ## @param dashboard.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe + ## @param dashboard.livenessProbe.periodSeconds Period seconds for livenessProbe + ## @param dashboard.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe + ## @param dashboard.livenessProbe.failureThreshold Failure threshold for livenessProbe + ## @param dashboard.livenessProbe.successThreshold Success threshold for livenessProbe ## livenessProbe: enabled: true @@ -295,6 +430,15 @@ dashboard: timeoutSeconds: 5 successThreshold: 1 failureThreshold: 5 + ## Parse Dashboard pods' liveness probe + ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes) + ## @param dashboard.readinessProbe.enabled Enable readinessProbe + ## @param dashboard.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe + ## @param dashboard.readinessProbe.periodSeconds Period seconds for readinessProbe + ## @param dashboard.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe + ## @param dashboard.readinessProbe.failureThreshold Failure threshold for readinessProbe + ## @param dashboard.readinessProbe.successThreshold Success threshold for readinessProbe + ## readinessProbe: enabled: true initialDelaySeconds: 30 @@ -302,247 +446,146 @@ dashboard: timeoutSeconds: 5 successThreshold: 1 failureThreshold: 5 - - ## Pod affinity preset + ## @param dashboard.podAffinityPreset Parse dashboard pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity - ## Allowed values: soft, hard ## podAffinityPreset: "" - - ## Pod anti-affinity preset + ## @param dashboard.podAntiAffinityPreset Parse dashboard pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity - ## Allowed values: soft, hard ## podAntiAffinityPreset: soft - ## Node affinity preset ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity ## Allowed values: soft, hard ## nodeAffinityPreset: - ## Node affinity type - ## Allowed values: soft, hard + ## @param dashboard.nodeAffinityPreset.type Parse dashboard node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` ## type: "" - ## Node label key to match + ## @param dashboard.nodeAffinityPreset.key Parse dashboard node label key to match Ignored if `affinity` is set. ## E.g. ## key: "kubernetes.io/e2e-az-name" ## key: "" - ## Node label values to match + ## @param dashboard.nodeAffinityPreset.values Parse dashboard node label values to match. Ignored if `affinity` is set. ## E.g. ## values: ## - e2e-az1 ## - e2e-az2 ## values: [] - - ## Affinity for pod assignment + ## @param dashboard.affinity Parse dashboard affinity for pod assignment ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity ## Note: dashboard.podAffinityPreset, dashboard.podAntiAffinityPreset, and dashboard.nodeAffinityPreset will be ignored when it's set ## affinity: {} - - ## Node labels for pod assignment + ## @param dashboard.nodeSelector Parse dashboard node labels for pod assignment ## ref: https://kubernetes.io/docs/user-guide/node-selection/ ## nodeSelector: {} - - ## Tolerations for pod assignment + ## @param dashboard.tolerations Parse dashboard tolerations for pod assignment ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ ## tolerations: [] - - ## Protocol to form URLs to Parse + ## @param dashboard.parseServerUrlProtocol Protocol used by Parse Dashboard to form the URLs to Parse server ## parseServerUrlProtocol: "http" - - ## An array to add extra env vars + ## @param dashboard.extraEnvVars An array to add extra env vars ## For example: ## extraEnvVars: ## - name: KIBANA_ELASTICSEARCH_URL ## value: test ## extraEnvVars: [] - ## Name of a ConfigMap containing extra env vars + ## @param dashboard.extraEnvVarsCM Name of a ConfigMap containing extra environment variables ## extraEnvVarsCM: - ## Name of a Secret containing extra env vars + ## @param dashboard.extraEnvVarsSecret Name of a Secret containing extra environment variables ## extraEnvVarsSecret: -## Configure the ingress resource that allows you to access the -## Parse installation. -## ref: http://kubernetes.io/docs/user-guide/ingress/ +## @section Volume Permissions parameters + +## Init containers parameters: +## volumePermissions: Change the owner and group of the persistent volume mountpoint to runAsUser:fsGroup values from the securityContext section. ## -ingress: - ## Set to true to enable ingress record generation +volumePermissions: + ## @param volumePermissions.enabled Enable init container that changes volume permissions in the data directory (for cases where the default k8s `runAsUser` and `fsUser` values do not work) ## enabled: false - - ## Set this to true in order to add the corresponding annotations for cert-manager + ## @param volumePermissions.image.registry Init container volume-permissions image registry + ## @param volumePermissions.image.repository Init container volume-permissions image name + ## @param volumePermissions.image.tag Init container volume-permissions image tag + ## @param volumePermissions.image.pullPolicy Init container volume-permissions image pull policy + ## @param volumePermissions.image.pullSecrets Init container volume-permissions image pull secrets ## - certManager: false - - ## Enable TLS configuration for the hostname defined at ingress.hostname parameter - ## TLS certificates will be retrieved from a TLS secret with name: {{- printf "%s-tls" .Values.ingress.hostname }} - ## You can use the ingress.secrets parameter to create this TLS secret or relay on cert-manager to create it + image: + registry: docker.io + repository: bitnami/bitnami-shell + tag: 10-debian-10-r120 + pullPolicy: Always + ## Optionally specify an array of imagePullSecrets. + ## Secrets must be manually created in the namespace. + ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ + ## Example: + ## pullSecrets: + ## - myRegistryKeySecretName + ## + pullSecrets: [] + ## @param volumePermissions.resources The resources for the container ## - tls: false + resources: {} - ## Ingress annotations done as key:value pairs. If certManager is set to true, - ## the annotation 'kubernetes.io/tls-acme: "true"' will automatically be set - ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md - ## - annotations: - # kubernetes.io/ingress.class: nginx +## @section MongoDB® Parameters - dashboard: - ## When the ingress is enabled, a host pointing to this will be created - ## - hostname: parse-dashboard.local - - ## The Path to WordPress. You may need to set this to '/*' in order to use this - ## with ALB ingress controllers. - ## - path: / - - ## Ingress Path type - ## - pathType: ImplementationSpecific - - ## The list of additional hostnames to be covered with this ingress record. - ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array - ## extraHosts: - ## - name: wordpress.local - ## path: / - ## - ## Any additional arbitrary paths that may need to be added to the ingress under the main host. - ## For example: The ALB ingress controller requires a special rule for handling SSL redirection. - ## extraPaths: - ## - path: /* - ## backend: - ## serviceName: ssl-redirect - ## servicePort: use-annotation - ## - - server: - ## When the ingress is enabled, a host pointing to this will be created - ## - hostname: parse-server.local - - ## The Path to WordPress. You may need to set this to '/*' in order to use this - ## with ALB ingress controllers. - ## - path: / - - ## Ingress Path type - ## - pathType: ImplementationSpecific - - ## The list of additional hostnames to be covered with this ingress record. - ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array - ## extraHosts: - ## - name: wordpress.local - ## path: / - ## - ## Any additional arbitrary paths that may need to be added to the ingress under the main host. - ## For example: The ALB ingress controller requires a special rule for handling SSL redirection. - ## extraPaths: - ## - path: /* - ## backend: - ## serviceName: ssl-redirect - ## servicePort: use-annotation - ## - - ## The tls configuration for additional hostnames to be covered with this ingress record. - ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls - ## extraTls: - ## - hosts: - ## - wordpress.local - ## secretName: wordpress.local-tls - ## - - secrets: - ## If you're providing your own certificates, please use this to add the certificates as secrets - ## key and certificate should start with -----BEGIN CERTIFICATE----- or - ## -----BEGIN RSA PRIVATE KEY----- - ## - ## name should line up with a tlsSecret set further up - ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set - ## - ## It is also possible to create and manage the certificates outside of this helm chart - ## Please see README.md for more information - # - name: parse.local-tls - # key: - # certificate: - -## Enable persistence using Persistent Volume Claims -## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ -## -persistence: - enabled: true - ## parse data Persistent Volume Storage Class - ## If defined, storageClassName: - ## If set to "-", storageClassName: "", which disables dynamic provisioning - ## If undefined (the default) or set to null, no storageClassName spec is - ## set, choosing the default provisioner. (gp2 on AWS, standard on - ## GKE, AWS & OpenStack) - ## - # storageClass: "-" - accessMode: ReadWriteOnce - size: 8Gi - -## ## MongoDB(R) chart configuration -## ## https://github.com/bitnami/charts/blob/master/bitnami/mongodb/values.yaml ## mongodb: - # This is necessary for bitnami/common validation purposes. Setting enabled=false will - # make no difference in deploying the subchart. Change this when further standardizations - # are added (externalDB) + ## @param mongodb.enabled Enable MongoDB® chart + ## This is necessary for bitnami/common validation purposes. Setting enabled=false will + ## make no difference in deploying the subchart. Change this when further standardizations + ## are added (externalDB) + ## enabled: true ## MongoDB(R) Authentication parameters ## auth: - ## Enable authentication + ## @param mongodb.auth.enabled Enable MongoDB® password authentication ## ref: https://docs.mongodb.com/manual/tutorial/enable-authentication/ ## enabled: true - ## MongoDB(R) root password + ## @param mongodb.auth.rootPassword MongoDB® admin password ## ref: https://github.com/bitnami/bitnami-docker-mongodb/blob/master/README.md#setting-the-root-password-on-first-run ## rootPassword: "" - - ## MongoDB(R) username + ## @param mongodb.auth.username MongoDB® user ## username: bn_parse - - ## MongoDB(R) password + ## @param mongodb.auth.password MongoDB® user password ## password: "" - - ## MongoDB(R) database + ## @param mongodb.auth.database MongoDB® database ## database: bitnami_parse - ## Enable persistence using Persistent Volume Claims ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## persistence: + ## @param mongodb.persistence.enabled Enable MongoDB® persistence using PVC + ## enabled: true - ## mongodb data Persistent Volume Storage Class + ## @param mongodb.persistence.storageClass PVC Storage Class for MongoDB® volume ## If defined, storageClassName: ## If set to "-", storageClassName: "", which disables dynamic provisioning ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. (gp2 on AWS, standard on ## GKE, AWS & OpenStack) ## - # storageClass: "-" + storageClass: + ## @param mongodb.persistence.accessMode PVC Access Mode for MongoDB® volume + ## accessMode: ReadWriteOnce + ## @param mongodb.persistence.size PVC Storage Request for MongoDB® volume + ## size: 8Gi - -## Array with extra yaml to deploy with the chart. Evaluated as a template -## -extraDeploy: [] diff --git a/bitnami/phabricator/Chart.yaml b/bitnami/phabricator/Chart.yaml index 0da71efa8c..e8ca3c827f 100644 --- a/bitnami/phabricator/Chart.yaml +++ b/bitnami/phabricator/Chart.yaml @@ -37,4 +37,4 @@ name: phabricator sources: - https://github.com/bitnami/bitnami-docker-phabricator - https://www.phacility.com/phabricator/ -version: 11.0.23 +version: 11.0.24 diff --git a/bitnami/phabricator/README.md b/bitnami/phabricator/README.md index 334424549f..0179d26344 100644 --- a/bitnami/phabricator/README.md +++ b/bitnami/phabricator/README.md @@ -48,174 +48,198 @@ The command removes all the Kubernetes components associated with the chart and ## Parameters -The following tables list the configurable parameters of the Phabricator chart and their default values per section/component: - ### Global parameters -| Parameter | Description | Default | -|----------------------------------|----------------------------------------------------------------------------------------------------------|--------------------------------------------------------------| -| `global.imageRegistry` | Global Docker image registry | `nil` | -| `global.imagePullSecrets` | Global Docker registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | -| `global.storageClass` | Global storage class for dynamic provisioning | `nil` | +| Name | Description | Value | +| ------------------------- | ----------------------------------------------- | ----- | +| `global.imageRegistry` | Global Docker image registry | `nil` | +| `global.imagePullSecrets` | Global Docker registry secret names as an array | `[]` | +| `global.storageClass` | Global StorageClass for Persistent Volume(s) | `nil` | + ### Common parameters -| Parameter | Description | Default | -|----------------------------------|----------------------------------------------------------------------------------------------------------|--------------------------------------------------------------| -| `nameOverride` | String to partially override common.names.fullname template with a string (will prepend the release name)| `nil` | -| `fullnameOverride` | String to fully override common.names.fullname template with a string | `nil` | -| `commonLabels` | Labels to add to all deployed objects | `{}` | -| `commonAnnotations` | Annotations to add to all deployed objects | `{}` | -| `kubeVersion` | Force target Kubernetes version (using Helm capabilities if not set) | `nil` | -| `clusterDomain` | Default Kubernetes cluster domain | `cluster.local` | -| `extraDeploy` | Array of extra objects to deploy with the release | `[]` (evaluated as a template) | +| Name | Description | Value | +| ------------------- | -------------------------------------------------------------------------------------------- | --------------- | +| `nameOverride` | String to partially override common.names.fullname template (will maintain the release name) | `nil` | +| `fullnameOverride` | String to fully override common.names.fullname template | `nil` | +| `commonLabels` | Add labels to all the deployed resources | `{}` | +| `commonAnnotations` | Add annotations to all the deployed resources | `{}` | +| `kubeVersion` | Force target Kubernetes version (using Helm capabilities if not set) | `nil` | +| `clusterDomain` | Kubernetes Cluster Domain | `cluster.local` | +| `extraDeploy` | Extra objects to deploy (value evaluated as a template) | `[]` | + ### Phabricator parameters -| Parameter | Description | Default | -|----------------------------------|----------------------------------------------------------------------------------------------------------|--------------------------------------------------------------| -| `image.registry` | Phabricator image registry | `docker.io` | -| `image.repository` | Phabricator image name | `bitnami/phabricator` | -| `image.tag` | Phabricator image tag | `{TAG_NAME}` | -| `image.pullPolicy` | Image pull policy | `IfNotPresent` | -| `image.pullSecrets` | Specify docker-registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | -| `image.debug` | Specify if debug logs should be enabled | `false` | -| `phabricatorUsername` | User of the application | `user` | -| `phabricatorPassword` | Application password | _random 10 character long alphanumeric string_ | -| `phabricatorEmail` | Admin email | `user@example.com` | -| `phabricatorFirstName` | First name | `First Name` | -| `phabricatorLastName` | Last name | `Last Name` | -| `phabricatorHost` | Phabricator host to create application URLs | `nil` | -| `phabricatorAlternateFileDomain` | Phabricator alternate domain to upload files | `nil` | -| `phabricatorEnableHttps` | Configure Phabricator to build application URLs using https | `true` | -| `phabricatorUseLFS` | Configure Phabricator to use GIT Large File Storage (LFS) | `false` | -| `phabricatorGitSSH` | Configure a self-hosted GIT repository with SSH authentication | `false` | -| `phabricatorEnablePygments` | Enable syntax highlighting using Pygments | `true` | -| `phabricatorSkipInstall` | Skip the initial bootstrapping for the application | `false` | -| `smtpHost` | SMTP mail delivery host | `nil` | -| `smtpPort` | SMTP mail delivery port | `nil` | -| `smtpUser` | SMTP mail delivery user | `nil` | -| `smtpPassword` | SMTP mail delivery password | `nil` | -| `smtpProtocol` | SMTP mail delivery protocol [`ssl`, `tls`] | `nil` | -| `command` | Override default container command (useful when using custom images) | `nil` | -| `args` | Override default container args (useful when using custom images) | `nil` | -| `extraEnvVars` | Extra environment variables to be set on Phabricator container | `{}` | -| `extraEnvVarsCM` | Name of existing ConfigMap containing extra env vars | `nil` | -| `extraEnvVarsSecret` | Name of existing Secret containing extra env vars | `nil` | +| Name | Description | Value | +| -------------------------------- | -------------------------------------------------------------------- | ------------------------- | +| `image.registry` | Phabricator image registry | `docker.io` | +| `image.repository` | Phabricator image repository | `bitnami/phabricator` | +| `image.tag` | Phabricator image tag (immutable tags are recommended) | `2021.26.0-debian-10-r11` | +| `image.pullPolicy` | Image pull policy | `IfNotPresent` | +| `image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | +| `image.debug` | Specify if debug logs should be enabled | `false` | +| `phabricatorUsername` | Phabricator admin user | `user` | +| `phabricatorPassword` | Admin user password | `nil` | +| `phabricatorEmail` | Admin user email | `user@example.com` | +| `phabricatorFirstName` | Admin user first name | `First Name` | +| `phabricatorLastName` | Admin user last name | `Last Name` | +| `phabricatorHost` | Phabricator host to create application URLs | `nil` | +| `phabricatorAlternateFileDomain` | Phabricator alternate domain to upload files | `nil` | +| `phabricatorEnableHttps` | Configure Phabricator to build application URLs using https | `true` | +| `phabricatorUseLFS` | Configure Phabricator to use GIT Large File Storage (LFS) | `false` | +| `phabricatorGitSSH` | Configure a self-hosted GIT repository with SSH authentication | `false` | +| `phabricatorEnablePygments` | Enable syntax highlighting using Pygments | `true` | +| `phabricatorSkipInstall` | Skip the initial bootstrapping for the application | `false` | +| `smtpHost` | SMTP mail delivery host | `nil` | +| `smtpPort` | SMTP mail delivery port | `nil` | +| `smtpUser` | SMTP mail delivery user | `nil` | +| `smtpPassword` | SMTP mail delivery password | `nil` | +| `smtpProtocol` | SMTP mail delivery protocol [`ssl`, `tls`] | `nil` | +| `command` | Override default container command (useful when using custom images) | `[]` | +| `args` | Override default container args (useful when using custom images) | `[]` | +| `extraEnvVars` | An array to add extra env vars | `[]` | +| `extraEnvVarsCM` | Name of existing ConfigMap containing extra environment variables | `nil` | +| `extraEnvVarsSecret` | Name of existing Secret containing extra environment variables | `nil` | + ### Phabricator deployment parameters -| Parameter | Description | Default | -|----------------------------------|----------------------------------------------------------------------------------------------------------|---------------------------------------------------------| -| `containerPorts.http` | HTTP port to expose at container level | `8080` | -| `containerPorts.https` | HTTPS port to expose at container level | `8443` | -| `containerPorts.ssh` | SSH port to expose at container level | `2222` | -| `podSecurityContext` | Phabricator pods' Security Context | Check `values.yaml` file | -| `containerSecurityContext` | Phabricator containers' Security Context | Check `values.yaml` file | -| `resources.limits` | The resources limits for the Phabricator container | `{}` | -| `resources.requests` | The requested resources for the Phabricator container | `{"memory": "512Mi", "cpu": "300m"}` | -| `livenessProbe` | Liveness probe configuration for Phabricator | Check `values.yaml` file | -| `readinessProbe` | Readiness probe configuration for Phabricator | Check `values.yaml` file | -| `customLivenessProbe` | Override default liveness probe | `nil` | -| `customReadinessProbe` | Override default readiness probe | `nil` | -| `updateStrategy` | Strategy to use to update Pods | Check `values.yaml` file | -| `podAffinityPreset` | Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | -| `podAntiAffinityPreset` | Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` | -| `nodeAffinityPreset.type` | Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | -| `nodeAffinityPreset.key` | Node label key to match. Ignored if `affinity` is set. | `""` | -| `nodeAffinityPreset.values` | Node label values to match. Ignored if `affinity` is set. | `[]` | -| `affinity` | Affinity for pod assignment | `{}` (evaluated as a template) | -| `nodeSelector` | Node labels for pod assignment | `{}` (evaluated as a template) | -| `tolerations` | Tolerations for pod assignment | `[]` (evaluated as a template) | -| `podLabels` | Extra labels for Phabricator pods | `{}` (evaluated as a template) | -| `podAnnotations` | Annotations for Phabricator pods | `{}` (evaluated as a template) | -| `extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for Phabricator container(s) | `[]` | -| `extraVolumes` | Optionally specify extra list of additional volumes for Phabricator pods | `[]` | -| `initContainers` | Add additional init containers to the Phabricator pods | `{}` (evaluated as a template) | -| `sidecars` | Add additional sidecar containers to the Phabricator pods | `{}` (evaluated as a template) | -| `persistence.enabled` | Enable persistence using PVC | `true` | -| `persistence.storageClass` | PVC Storage Class for Phabricator volume | `nil` (uses alpha storage class annotation) | -| `persistence.accessMode` | PVC Access Mode for Phabricator volume | `ReadWriteOnce` | -| `persistence.size` | PVC Storage Request for Phabricator volume | `8Gi` | -| `persistence.existingClaim` | An Existing PVC name for Phabricator volume | `nil` (uses alpha storage class annotation) | -| `persistence.hostPath` | Host mount path for Phabricator volume | `nil` (will not mount to a host path) | +| Name | Description | Value | +| ------------------------------------ | ----------------------------------------------------------------------------------------- | --------------- | +| `updateStrategy.type` | StrategyType | `RollingUpdate` | +| `containerPorts` | Phabricator container ports to open | `{}` | +| `podSecurityContext.enabled` | Enable Phabricator pods' Security Context | `true` | +| `podSecurityContext.fsGroup` | Group ID for the volumes of the pod | `1001` | +| `containerSecurityContext.enabled` | Enable Phabricator containers' SecurityContext | `true` | +| `containerSecurityContext.runAsUser` | User ID for the container | `1001` | +| `resources.limits` | The resources limits for the container | `{}` | +| `resources.requests` | The requested resources for the container | `{}` | +| `livenessProbe.enabled` | Enable livenessProbe | `true` | +| `livenessProbe.path` | Request path for livenessProbe | `/auth/` | +| `livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `180` | +| `livenessProbe.periodSeconds` | Period seconds for livenessProbe | `10` | +| `livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `5` | +| `livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `6` | +| `livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` | +| `readinessProbe.enabled` | Enable readinessProbe | `true` | +| `readinessProbe.path` | Request path for readinessProbe | `/auth/` | +| `readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `30` | +| `readinessProbe.periodSeconds` | Period seconds for readinessProbe | `10` | +| `readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `5` | +| `readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `6` | +| `readinessProbe.successThreshold` | Success threshold for readinessProbe | `1` | +| `startupProbe.enabled` | Enable startupProbe | `false` | +| `startupProbe.path` | Request path for startupProbe | `/auth/` | +| `startupProbe.initialDelaySeconds` | Initial delay seconds for startupProbe | `0` | +| `startupProbe.periodSeconds` | Period seconds for startupProbe | `10` | +| `startupProbe.timeoutSeconds` | Timeout seconds for startupProbe | `3` | +| `startupProbe.failureThreshold` | Failure threshold for startupProbe | `20` | +| `startupProbe.successThreshold` | Success threshold for startupProbe | `1` | +| `customLivenessProbe` | Override default liveness probe | `{}` | +| `customReadinessProbe` | Override default readiness probe | `{}` | +| `customStartupProbe` | Custom Startup probe for Phabricator | `{}` | +| `podLabels` | Extra labels for Phabricator pods | `{}` | +| `podAnnotations` | Annotations for Phabricator pods | `{}` | +| `podAffinityPreset` | Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | +| `podAntiAffinityPreset` | Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` | +| `nodeAffinityPreset.type` | Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | +| `nodeAffinityPreset.key` | Node label key to match. Ignored if `affinity` is set. | `""` | +| `nodeAffinityPreset.values` | Node label values to match. Ignored if `affinity` is set. | `[]` | +| `affinity` | Affinity for pod assignment. Evaluated as a template. | `{}` | +| `nodeSelector` | Node labels for pod assignment. Evaluated as a template. | `{}` | +| `tolerations` | Tolerations for pod assignment. Evaluated as a template. | `[]` | +| `extraVolumes` | Optionally specify extra list of additional volumes for Phabricator pods | `[]` | +| `extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for Phabricator container(s) | `[]` | +| `initContainers` | Add init containers to the Phabricator pods. | `{}` | +| `sidecars` | Add sidecars to the Phabricator pods | `{}` | +| `persistence.enabled` | Enable persistence using PVC | `true` | +| `persistence.storageClass` | PVC Storage Class for Phabricator volume | `nil` | +| `persistence.accessMode` | PVC Access Mode for Phabricator volume | `ReadWriteOnce` | +| `persistence.size` | PVC Storage Request for Phabricator volume | `8Gi` | +| `persistence.existingClaim` | An Existing PVC name for Phabricator volume | `nil` | +| `persistence.hostPath` | Host mount path for Phabricator volume | `nil` | + ### Traffic Exposure Parameters -| Parameter | Description | Default | -|----------------------------------|----------------------------------------------------------------------------------------------------------|---------------------------------------------------------| -| `service.type` | Kubernetes Service type | `LoadBalancer` | -| `service.port` | Service HTTP port | `80` | -| `service.httpsPort` | Service HTTP port | `443` | -| `service.sshPort` | Service SSH port | `22` | -| `service.loadBalancerIP` | `loadBalancerIP` for the Phabricator Service | `nil` | -| `service.externalTrafficPolicy` | Enable client source IP preservation | `Cluster` | -| `service.nodePorts.http` | Kubernetes http node port | `""` | -| `service.nodePorts.https` | Kubernetes https node port | `""` | -| `service.nodePorts.ssh` | Kubernetes ssh node port | `""` | -| `service.annotations` | Service annotations | `[]` | -| `ingress.enabled` | Enable ingress controller resource | `false` | -| `ingress.certManager` | Add annotations for cert-manager | `false` | -| `ingress.hostname` | Default host for the ingress resource | `phabricator.local` | -| `ingress.apiVersion` | Force Ingress API version (automatically detected if not set) | `nil` | -| `ingress.path` | Ingress path | `/` | -| `ingress.pathType` | Ingress path type | `ImplementationSpecific` | -| `ingress.tls` | Create TLS Secret | `false` | -| `ingress.annotations` | Ingress annotations | `[]` (evaluated as a template) | -| `ingress.extraHosts[0].name` | Additional hostnames to be covered | `nil` | -| `ingress.extraHosts[0].path` | Additional hostnames to be covered | `nil` | -| `ingress.extraPaths` | Additional arbitrary path/backend objects | `nil` | -| `ingress.extraTls[0].hosts[0]` | TLS configuration for additional hostnames to be covered | `nil` | -| `ingress.extraTls[0].secretName` | TLS configuration for additional hostnames to be covered | `nil` | -| `ingress.secrets[0].name` | TLS Secret Name | `nil` | -| `ingress.secrets[0].certificate` | TLS Secret Certificate | `nil` | -| `ingress.secrets[0].key` | TLS Secret Key | `nil` | +| Name | Description | Value | +| ------------------------------- | ------------------------------------------------------------------------------------------------------------ | ------------------------ | +| `service.type` | Kubernetes Service type | `LoadBalancer` | +| `service.port` | Service HTTP port | `80` | +| `service.httpsPort` | Service HTTP port | `443` | +| `service.sshPort` | Service SSH port | `22` | +| `service.nodePorts.http` | Kubernetes HTTP node port | `""` | +| `service.nodePorts.https` | Kubernetes HTTPS node port | `""` | +| `service.nodePorts.ssh` | Kubernetes SSH node port | `""` | +| `service.loadBalancerIP` | `loadBalancerIP` for the Phabricator Service | `nil` | +| `service.externalTrafficPolicy` | Enable client source IP preservation | `Cluster` | +| `service.annotations` | Service annotations | `{}` | +| `ingress.enabled` | Set to true to enable ingress record generation | `false` | +| `ingress.tls` | Enable TLS configuration for the hostname defined at ingress.hostname parameter | `false` | +| `ingress.certManager` | Set this to true in order to add the corresponding annotations for cert-manager | `false` | +| `ingress.pathType` | Ingress path type | `ImplementationSpecific` | +| `ingress.apiVersion` | Force Ingress API version (automatically detected if not set) | `nil` | +| `ingress.hostname` | Default host for the ingress resource | `phabricator.local` | +| `ingress.path` | The Path to Phabricator. You may need to set this to '/*' in order to use this with ALB ingress controllers. | `ImplementationSpecific` | +| `ingress.annotations` | Ingress annotations | `{}` | +| `ingress.extraHosts` | The list of additional hostnames to be covered with this ingress record. | `[]` | +| `ingress.extraPaths` | Any additional arbitrary paths that may need to be added to the ingress under the main host. | `[]` | +| `ingress.extraTls` | The tls configuration for additional hostnames to be covered with this ingress record. | `[]` | +| `ingress.secrets` | If you're providing your own certificates, please use this to add the certificates as secrets | `[]` | + ### Database parameters -| Parameter | Description | Default | -|--------------------------------------------|------------------------------------------------------------------------------------------------|---------------------------------------------------------| -| `mariadb.enabled` | Whether to use the MariaDB chart | `true` | -| `mariadb.architecture` | MariaDB architecture (`standalone` or `replication`) | `standalone` | -| `mariadb.auth.rootPassword` | Password for the MariaDB `root` user | _random 10 character alphanumeric string_ | -| `mariadb.primary.configuration` | MariaDB Primary configuration to be injected as ConfigMap | Check `values.yaml` file | -| `mariadb.primary.extraFlags` | Additional command line flags | Check `values.yaml` file | -| `mariadb.primary.persistence.enabled` | Enable database persistence using PVC | `true` | -| `mariadb.primary.persistence.accessMode` | Database Persistent Volume Access Modes | `ReadWriteOnce` | -| `mariadb.primary.persistence.size` | Database Persistent Volume Size | `8Gi` | -| `mariadb.primary.persistence.existingClaim`| Enable persistence using an existing PVC | `nil` | -| `mariadb.primary.persistence.storageClass` | PVC Storage Class | `nil` (uses alpha storage class annotation) | -| `mariadb.primary.persistence.hostPath` | Host mount path for MariaDB volume | `nil` (will not mount to a host path) | -| `externalDatabase.host` | Host of the existing database | `nil` | -| `externalDatabase.port` | Port of the existing database | `3306` | -| `externalDatabase.rootUser` | Username in the external db with root privileges | `root` | -| `externalDatabase.rootPassword` | Password for the above username | `nil` | -| `externalDatabase.existingSecret` | Name of the database existing Secret Object | `nil` | +| Name | Description | Value | +| ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ | ------------------ | +| `mariadb.enabled` | Whether to use the MariaDB chart | `true` | +| `mariadb.architecture` | MariaDB architecture. Allowed values: `standalone` or `replication` | `standalone` | +| `mariadb.auth.rootPassword` | Password for the MariaDB `root` user | `""` | +| `mariadb.primary.configuration` | MariaDB Primary configuration to be injected as ConfigMap | `""` | +| `mariadb.primary.extraFlags` | Additional command line flags | `--local-infile=0` | +| `mariadb.primary.persistence.enabled` | Enable database persistence using PVC | `true` | +| `mariadb.primary.persistence.storageClass` | mariadb data Persistent Volume Storage Class | `nil` | +| `mariadb.primary.persistence.accessModes` | Database Persistent Volume Access Modes | `[]` | +| `mariadb.primary.persistence.size` | Database Persistent Volume Size | `8Gi` | +| `mariadb.primary.persistence.hostPath` | Host mount path for MariaDB volume in case you want to use local host path volumes (not recommended in production) | `nil` | +| `mariadb.primary.persistence.existingClaim` | Enable persistence using an existing PVC | `nil` | +| `externalDatabase.existingSecret` | Name of the database existing Secret Object | `nil` | +| `externalDatabase.host` | Host of the existing database | `localhost` | +| `externalDatabase.port` | Port of the existing database | `3306` | +| `externalDatabase.rootUser` | Username in the external db with root privileges | `root` | +| `externalDatabase.rootPassword` | Password for the above username | `""` | + ### Volume Permissions parameters -| Parameter | Description | Default | -|--------------------------------------------|------------------------------------------------------------------------------------------------|---------------------------------------------------------| -| `volumePermissions.enabled` | Enable init container that changes volume permissions in the data directory ( | `false` | -| `volumePermissions.image.registry` | Init container volume-permissions image registry | `docker.io` | -| `volumePermissions.image.repository` | Init container volume-permissions image name | `bitnami/bitnami-shell` | -| `volumePermissions.image.tag` | Init container volume-permissions image tag | `"10"` | -| `volumePermissions.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | -| `volumePermissions.image.pullPolicy` | Init container volume-permissions image pull policy | `Always` | -| `volumePermissions.resources` | Init container resource requests/limit | `nil` | +| Name | Description | Value | +| -------------------------------------- | ----------------------------------------------------------------------------- | ----------------------- | +| `volumePermissions.enabled` | Enable init container that changes volume permissions in the data directory ( | `false` | +| `volumePermissions.image.registry` | Init container volume-permissions image registry | `docker.io` | +| `volumePermissions.image.repository` | Init container volume-permissions image repository | `bitnami/bitnami-shell` | +| `volumePermissions.image.tag` | Init container volume-permissions image tag (immutable tags are recommended) | `10-debian-10-r127` | +| `volumePermissions.image.pullPolicy` | Init container volume-permissions image pull policy | `Always` | +| `volumePermissions.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | +| `volumePermissions.resources.limits` | The resources limits for the container | `{}` | +| `volumePermissions.resources.requests` | The requested resources for the container | `{}` | + ### Metrics parameters -| Parameter | Description | Default | -|----------------------------------|----------------------------------------------------------------------------------------------------------|--------------------------------------------------------------| -| `metrics.enabled` | Start a side-car prometheus exporter | `false` | -| `metrics.image.registry` | Apache exporter image registry | `docker.io` | -| `metrics.image.repository` | Apache exporter image name | `bitnami/apache-exporter` | -| `metrics.image.tag` | Apache exporter image tag | `{TAG_NAME}` | -| `metrics.image.pullPolicy` | Image pull policy | `IfNotPresent` | -| `metrics.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | -| `metrics.podAnnotations` | Additional annotations for Metrics exporter pod | `{prometheus.io/scrape: "true", prometheus.io/port: "9117"}` | -| `metrics.resources` | Exporter resource requests/limit | `{}` | +| Name | Description | Value | +| ---------------------------- | ---------------------------------------------------------- | ------------------------- | +| `metrics.enabled` | Start a side-car prometheus exporter | `false` | +| `metrics.image.registry` | Apache exporter image registry | `docker.io` | +| `metrics.image.repository` | Apache exporter image repository | `bitnami/apache-exporter` | +| `metrics.image.tag` | Apache exporter image tag (immutable tags are recommended) | `0.9.0-debian-10-r24` | +| `metrics.image.pullPolicy` | Image pull policy | `IfNotPresent` | +| `metrics.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | +| `metrics.podAnnotations` | Additional annotations for Metrics exporter pod | `{}` | +| `metrics.resources.limits` | The resources limits for the container | `{}` | +| `metrics.resources.requests` | The requested resources for the container | `{}` | + The above parameters map to the env variables defined in [bitnami/phabricator](http://github.com/bitnami/bitnami-docker-phabricator). For more information please refer to the [bitnami/phabricator](http://github.com/bitnami/bitnami-docker-phabricator) image documentation. diff --git a/bitnami/phabricator/values.yaml b/bitnami/phabricator/values.yaml index 08f2c78379..d0d371b6fc 100644 --- a/bitnami/phabricator/values.yaml +++ b/bitnami/phabricator/values.yaml @@ -1,15 +1,55 @@ +## @section Global parameters ## Global Docker image parameters ## Please, note that this will override the image parameters, including dependencies, configured to use the global value -## Current available global Docker image parameters: imageRegistry and imagePullSecrets +## Current available global Docker image parameters: imageRegistry, imagePullSecrets and storageClass + +## @param global.imageRegistry Global Docker image registry +## @param global.imagePullSecrets Global Docker registry secret names as an array +## @param global.storageClass Global StorageClass for Persistent Volume(s) ## -# global: -# imageRegistry: myRegistryName -# imagePullSecrets: -# - myRegistryKeySecretName -# storageClass: myStorageClass +global: + imageRegistry: + ## E.g. + ## imagePullSecrets: + ## - myRegistryKeySecretName + ## + imagePullSecrets: [] + storageClass: + +## @section Common parameters + +## @param nameOverride String to partially override common.names.fullname template (will maintain the release name) +## +nameOverride: +## @param fullnameOverride String to fully override common.names.fullname template +## +fullnameOverride: +## @param commonLabels Add labels to all the deployed resources +## +commonLabels: {} +## @param commonAnnotations Add annotations to all the deployed resources +## +commonAnnotations: {} +## @param kubeVersion Force target Kubernetes version (using Helm capabilities if not set) +## +kubeVersion: +## @param clusterDomain Kubernetes Cluster Domain +## +clusterDomain: cluster.local +## @param extraDeploy Extra objects to deploy (value evaluated as a template) +## +extraDeploy: [] + +## @section Phabricator parameters ## Bitnami Phabricator image version ## ref: https://hub.docker.com/r/bitnami/phabricator/tags/ +## @param image.registry Phabricator image registry +## @param image.repository Phabricator image repository +## @param image.tag Phabricator image tag (immutable tags are recommended) +## @param image.pullPolicy Image pull policy +## @param image.pullSecrets Specify docker-registry secret names as an array +## @param image.debug Specify if debug logs should be enabled ## image: registry: docker.io @@ -31,176 +71,150 @@ image: ## Set to true if you would like to see extra information on logs ## debug: false - -## String to partially override common.names.fullname template (will maintain the release name) -## -# nameOverride: - -## String to fully override common.names.fullname template -## -# fullnameOverride: - -## Add labels to all the deployed resources -## -commonLabels: {} - -## Add annotations to all the deployed resources -## -commonAnnotations: {} - -## Force target Kubernetes version (using Helm capabilites if not set) -## -kubeVersion: - -## Kubernetes Cluster Domain -## -clusterDomain: cluster.local - -## Extra objects to deploy (value evaluated as a template) -## -extraDeploy: [] - -## Phabricator admin user +## @param phabricatorUsername Phabricator admin user ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration ## phabricatorUsername: user - -## Admin user password +## @param phabricatorPassword Admin user password ## Defaults to a random 10-character alphanumeric string if not set ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration ## -# phabricatorPassword: - -## Admin user email +phabricatorPassword: +## @param phabricatorEmail Admin user email ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration ## phabricatorEmail: user@example.com - -## Admin user first name +## @param phabricatorFirstName Admin user first name ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration ## phabricatorFirstName: First Name - -## Admin user last name +## @param phabricatorLastName Admin user last name ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration phabricatorLastName: Last Name - -## Phabricator host to create application URLs +## @param phabricatorHost Phabricator host to create application URLs ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration ## -# phabricatorHost: - -## Phabricator alternate domain to upload files +phabricatorHost: +## @param phabricatorAlternateFileDomain Phabricator alternate domain to upload files ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration ## -# phabricatorAlternateFileDomain: - -## Configure Phabricator to build application URLs using https +phabricatorAlternateFileDomain: +## @param phabricatorEnableHttps Configure Phabricator to build application URLs using https ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration ## Note: Instead of yes/no use true/false ## phabricatorEnableHttps: true - -## Configure Phabricator to use GIT Large File Storage (LFS) +## @param phabricatorUseLFS Configure Phabricator to use GIT Large File Storage (LFS) ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration ## Note: Instead of yes/no use true/false ## phabricatorUseLFS: false - -## Configure a self-hosted GIT repository with SSH authentication +## @param phabricatorGitSSH Configure a self-hosted GIT repository with SSH authentication ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration ## Note: Instead of yes/no use true/false ## phabricatorGitSSH: false - -## Enable syntax highlighting using Pygments +## @param phabricatorEnablePygments Enable syntax highlighting using Pygments ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration ## Note: Instead of yes/no use true/false ## phabricatorEnablePygments: true - -## Skip the initial bootstrapping for the application +## @param phabricatorSkipInstall Skip the initial bootstrapping for the application ## ref: https://github.com/bitnami/bitnami-docker-phabricator#user-and-site-configuration ## Note: Instead of yes/no use true/false ## phabricatorSkipInstall: false - ## SMTP mail delivery configuration ## ref: https://github.com/bitnami/bitnami-docker-phabricator/#smtp-configuration +## @param smtpHost SMTP mail delivery host +## @param smtpPort SMTP mail delivery port +## @param smtpUser SMTP mail delivery user +## @param smtpPassword SMTP mail delivery password +## @param smtpProtocol SMTP mail delivery protocol [`ssl`, `tls`] ## -# smtpHost: -# smtpPort: -# smtpUser: -# smtpPassword: -# smtpProtocol: - -## Command and args for running the container (set to default if not set). Use array form +smtpHost: +smtpPort: +smtpUser: +smtpPassword: +smtpProtocol: +## @param command Override default container command (useful when using custom images) ## command: [] +## @param args Override default container args (useful when using custom images) +## args: [] - -## An array to add extra env vars +## @param extraEnvVars An array to add extra env vars ## Example: ## extraEnvVars: ## - name: FOO ## value: "bar" ## extraEnvVars: [] - -## ConfigMap with extra environment variables +## @param extraEnvVarsCM Name of existing ConfigMap containing extra environment variables ## extraEnvVarsCM: - -## Secret with extra environment variables +## @param extraEnvVarsSecret Name of existing Secret containing extra environment variables ## extraEnvVarsSecret: +## @section Phabricator deployment parameters + ## Strategy to use to update Pods ## updateStrategy: - ## StrategyType + ## @param updateStrategy.type StrategyType ## Can be set to RollingUpdate or OnDelete ## type: RollingUpdate - -## Phabricator container ports to open +## @param containerPorts [object] Phabricator container ports to open ## containerPorts: http: 8080 https: 8443 ssh: 2222 - ## Phabricator pods' Security Context ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container +## @param podSecurityContext.enabled Enable Phabricator pods' Security Context +## @param podSecurityContext.fsGroup Group ID for the volumes of the pod ## podSecurityContext: enabled: true fsGroup: 1001 - ## Phabricator containers' SecurityContext ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod +## @param containerSecurityContext.enabled Enable Phabricator containers' SecurityContext +## @param containerSecurityContext.runAsUser User ID for the container ## containerSecurityContext: enabled: true runAsUser: 1001 - ## Phabricator resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ +## We usually recommend not to specify default resources and to leave this as a conscious +## choice for the user. This also increases chances charts run on environments with little +## resources, such as Minikube. If you do want to specify resources, uncomment the following +## lines, adjust them as necessary, and remove the curly braces after 'resources:'. +## @param resources.limits The resources limits for the container +## @param resources.requests [object] The requested resources for the container ## resources: - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + ## Example: + ## limits: + ## cpu: 200m + ## memory: 256Mi limits: {} - # cpu: 200m - # memory: 256Mi requests: memory: 512Mi cpu: 300m - -## Phabricator containers' liveness, readiness, and startup probes. +## Configure extra options for liveness probe ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes +## @param livenessProbe.enabled Enable livenessProbe +## @param livenessProbe.path Request path for livenessProbe +## @param livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe +## @param livenessProbe.periodSeconds Period seconds for livenessProbe +## @param livenessProbe.timeoutSeconds Timeout seconds for livenessProbe +## @param livenessProbe.failureThreshold Failure threshold for livenessProbe +## @param livenessProbe.successThreshold Success threshold for livenessProbe ## livenessProbe: enabled: true @@ -210,6 +224,16 @@ livenessProbe: timeoutSeconds: 5 failureThreshold: 6 successThreshold: 1 +## Configure extra options for readiness probe +## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes +## @param readinessProbe.enabled Enable readinessProbe +## @param readinessProbe.path Request path for readinessProbe +## @param readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe +## @param readinessProbe.periodSeconds Period seconds for readinessProbe +## @param readinessProbe.timeoutSeconds Timeout seconds for readinessProbe +## @param readinessProbe.failureThreshold Failure threshold for readinessProbe +## @param readinessProbe.successThreshold Success threshold for readinessProbe +## readinessProbe: enabled: true path: /auth/ @@ -218,6 +242,16 @@ readinessProbe: timeoutSeconds: 5 failureThreshold: 6 successThreshold: 1 +## Configure extra options for startupProbe probe +## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes +## @param startupProbe.enabled Enable startupProbe +## @param startupProbe.path Request path for startupProbe +## @param startupProbe.initialDelaySeconds Initial delay seconds for startupProbe +## @param startupProbe.periodSeconds Period seconds for startupProbe +## @param startupProbe.timeoutSeconds Timeout seconds for startupProbe +## @param startupProbe.failureThreshold Failure threshold for startupProbe +## @param startupProbe.successThreshold Success threshold for startupProbe +## startupProbe: enabled: false path: /auth/ @@ -226,87 +260,70 @@ startupProbe: timeoutSeconds: 3 failureThreshold: 20 successThreshold: 1 - -## Custom Liveness probes for Phabricator +## @param customLivenessProbe Override default liveness probe ## customLivenessProbe: {} - -## Custom Rediness probes for Phabricator +## @param customReadinessProbe Override default readiness probe ## customReadinessProbe: {} - -## Custom Startup probe for Phabricator +## @param customStartupProbe Custom Startup probe for Phabricator ## customStartupProbe: {} - -## Pod extra labels +## @param podLabels Extra labels for Phabricator pods ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ ## podLabels: {} - -## Annotations for server pods. +## @param podAnnotations Annotations for Phabricator pods ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ ## podAnnotations: {} - -## Pod affinity preset +## @param podAffinityPreset Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity -## Allowed values: soft, hard ## podAffinityPreset: "" - -## Pod anti-affinity preset +## @param podAntiAffinityPreset Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` ## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity -## Allowed values: soft, hard ## podAntiAffinityPreset: soft - ## Node affinity preset ## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity -## Allowed values: soft, hard ## nodeAffinityPreset: - ## Node affinity type - ## Allowed values: soft, hard + ## @param nodeAffinityPreset.type Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` + ## type: "" - ## Node label key to match + ## @param nodeAffinityPreset.key Node label key to match. Ignored if `affinity` is set. ## E.g. ## key: "kubernetes.io/e2e-az-name" ## key: "" - ## Node label values to match + ## @param nodeAffinityPreset.values Node label values to match. Ignored if `affinity` is set. ## E.g. ## values: ## - e2e-az1 ## - e2e-az2 ## values: [] - -## Affinity for pod assignment. Evaluated as a template. +## @param affinity Affinity for pod assignment. Evaluated as a template. ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity ## Note: podAffinityPreset, podAntiAffinityPreset, and nodeAffinityPreset will be ignored when it's set ## affinity: {} - -## Node labels for pod assignment. Evaluated as a template. +## @param nodeSelector Node labels for pod assignment. Evaluated as a template. ## ref: https://kubernetes.io/docs/user-guide/node-selection/ ## nodeSelector: {} - -## Tolerations for pod assignment. Evaluated as a template. +## @param tolerations Tolerations for pod assignment. Evaluated as a template. ## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ ## tolerations: [] - -## Extra volumes to add to the deployment +## @param extraVolumes Optionally specify extra list of additional volumes for Phabricator pods ## extraVolumes: [] - -## Extra volume mounts to add to the container +## @param extraVolumeMounts Optionally specify extra list of additional volumeMounts for Phabricator container(s) ## extraVolumeMounts: [] - -## Add init containers to the Phabricator pods. +## @param initContainers Add init containers to the Phabricator pods. ## Example: ## initContainers: ## - name: your-image-name @@ -317,8 +334,7 @@ extraVolumeMounts: [] ## containerPort: 1234 ## initContainers: {} - -## Add sidecars to the Phabricator pods. +## @param sidecars Add sidecars to the Phabricator pods ## Example: ## sidecars: ## - name: your-image-name @@ -329,53 +345,60 @@ initContainers: {} ## containerPort: 1234 ## sidecars: {} - ## Enable persistence using Persistent Volume Claims ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## persistence: + ## @param persistence.enabled Enable persistence using PVC + ## enabled: true - ## Phabricator data Persistent Volume Storage Class + ## @param persistence.storageClass PVC Storage Class for Phabricator volume ## If defined, storageClassName: ## If set to "-", storageClassName: "", which disables dynamic provisioning ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. (gp2 on AWS, standard on ## GKE, AWS & OpenStack) ## - # storageClass: "-" - + storageClass: + ## @param persistence.accessMode PVC Access Mode for Phabricator volume + ## accessMode: ReadWriteOnce + ## @param persistence.size PVC Storage Request for Phabricator volume + ## size: 8Gi - - ## A manually managed Persistent Volume Claim + ## @param persistence.existingClaim An Existing PVC name for Phabricator volume ## Requires persistence.enabled: true ## If defined, PVC must be created manually before volume will be bound ## - # existingClaim: - - ## If defined, the phabricator-data volume will mount to the specified hostPath. + existingClaim: + ## @param persistence.hostPath Host mount path for Phabricator volume ## Requires persistence.enabled: true ## Requires persistence.existingClaim: nil|false ## Default: nil. ## hostPath: -## K8s svc configuration +## @section Traffic Exposure Parameters + +## Kubernetes service configuration ## service: - ## K8s svc type + ## @param service.type Kubernetes Service type ## For minikube, set this to NodePort, elsewhere use LoadBalancer ## type: LoadBalancer - ## HTTP Port + ## @param service.port Service HTTP port ## port: 80 - ## HTTPS Port + ## @param service.httpsPort Service HTTP port ## httpsPort: 443 - ## SSH Port + ## @param service.sshPort Service SSH port ## sshPort: 22 + ## @param service.nodePorts.http Kubernetes HTTP node port + ## @param service.nodePorts.https Kubernetes HTTPS node port + ## @param service.nodePorts.ssh Kubernetes SSH node port ## nodePorts: ## http: ## https: @@ -385,70 +408,59 @@ service: http: "" https: "" ssh: "" - ## Use serviceLoadBalancerIP to request a specific static IP, - ## otherwise leave blank + ## @param service.loadBalancerIP `loadBalancerIP` for the Phabricator Service ## - # loadBalancerIP: - ## Enable client source IP preservation + loadBalancerIP: + ## @param service.externalTrafficPolicy Enable client source IP preservation ## ref http://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip ## externalTrafficPolicy: Cluster - ## Provide any additional annotations which may be required (evaluated as a template). + ## @param service.annotations Service annotations ## annotations: {} - ## Configure the ingress resource that allows you to access the ## Phabricator installation. Set up the URL ## ref: http://kubernetes.io/docs/user-guide/ingress/ ## ingress: - ## Set to true to enable ingress record generation + ## @param ingress.enabled Set to true to enable ingress record generation ## enabled: false - - ## Enable TLS configuration for the hostname defined at ingress.hostname parameter + ## @param ingress.tls Enable TLS configuration for the hostname defined at ingress.hostname parameter ## TLS certificates will be retrieved from a TLS secret with name: {{- printf "%s-tls" .Values.ingress.hostname }} ## You can use the ingress.secrets parameter to create this TLS secret or relay on cert-manager to create it ## tls: false - - ## Set this to true in order to add the corresponding annotations for cert-manager + ## @param ingress.certManager Set this to true in order to add the corresponding annotations for cert-manager ## certManager: false - - ## Ingress Path type + ## @param ingress.pathType Ingress path type ## pathType: ImplementationSpecific - - ## Override API Version (automatically detected if not set) + ## @param ingress.apiVersion Force Ingress API version (automatically detected if not set) ## apiVersion: - - ## When the ingress is enabled, a host pointing to this will be created + ## @param ingress.hostname Default host for the ingress resource ## hostname: phabricator.local - - ## The Path to Phabricator. You may need to set this to '/*' in order to use this - ## with ALB ingress controllers. + ## @param ingress.path The Path to Phabricator. You may need to set this to '/*' in order to use this with ALB ingress controllers. ## path: / - - ## Ingress annotations done as key:value pairs + ## @param ingress.annotations Ingress annotations ## For a full list of possible ingress annotations, please see ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md ## ## If certManager is set to true, annotation kubernetes.io/tls-acme: "true" will automatically be set ## annotations: {} - - ## The list of additional hostnames to be covered with this ingress record. + ## @param ingress.extraHosts The list of additional hostnames to be covered with this ingress record. ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array ## extraHosts: ## - name: phabricator.local ## path: / ## - - ## Any additional arbitrary paths that may need to be added to the ingress under the main host. + extraHosts: [] + ## @param ingress.extraPaths Any additional arbitrary paths that may need to be added to the ingress under the main host. ## For example: The ALB ingress controller requires a special rule for handling SSL redirection. ## extraPaths: ## - path: /* @@ -456,16 +468,16 @@ ingress: ## serviceName: ssl-redirect ## servicePort: use-annotation ## - - ## The tls configuration for additional hostnames to be covered with this ingress record. + extraPaths: [] + ## @param ingress.extraTls The tls configuration for additional hostnames to be covered with this ingress record. ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls ## extraTls: ## - hosts: ## - phabricator.local ## secretName: phabricator.local-tls ## - - ## If you're providing your own certificates, please use this to add the certificates as secrets + extraTls: [] + ## @param ingress.secrets If you're providing your own certificates, please use this to add the certificates as secrets ## key and certificate should start with -----BEGIN CERTIFICATE----- or ## -----BEGIN RSA PRIVATE KEY----- ## @@ -474,137 +486,36 @@ ingress: ## ## It is also possible to create and manage the certificates outside of this helm chart ## Please see README.md for more information - ## - secrets: [] + ## e.g: ## - name: phabricator.local-tls ## key: ## certificate: ## + secrets: [] -## Init containers parameters: -## volumePermissions: Change the owner and group of the persistent volume mountpoint to runAsUser:fsGroup values from the securityContext section. -## -volumePermissions: - enabled: false - image: - registry: docker.io - repository: bitnami/bitnami-shell - tag: 10-debian-10-r127 - pullPolicy: Always - ## Optionally specify an array of imagePullSecrets. - ## Secrets must be manually created in the namespace. - ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ - ## Example: - ## pullSecrets: - ## - myRegistryKeySecretName - ## - pullSecrets: [] +## @section Database parameters - ## Init container' resource requests and limits - ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ - ## - resources: - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - limits: {} - # cpu: 100m - # memory: 128Mi - requests: {} - # cpu: 100m - # memory: 128Mi - -## Prometheus Exporter / Metrics -## -metrics: - enabled: false - image: - registry: docker.io - repository: bitnami/apache-exporter - tag: 0.9.0-debian-10-r24 - pullPolicy: IfNotPresent - ## Optionally specify an array of imagePullSecrets. - ## Secrets must be manually created in the namespace. - ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ - ## Example: - ## pullSecrets: - ## - myRegistryKeySecretName - ## - pullSecrets: [] - - ## Metrics exporter pod Annotation and Labels - ## - podAnnotations: - prometheus.io/scrape: "true" - prometheus.io/port: "9117" - - ## Metrics exporter resource requests and limits - ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ - ## - resources: - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. - limits: {} - # cpu: 100m - # memory: 128Mi - requests: {} - # cpu: 100m - # memory: 128Mi - -## -## External Database Configuration -## -## All of these values are only used when mariadb.enabled is set to false -## -externalDatabase: - ## Use existing secret (ignores previous password) - ## NOTE: must contain key `mariadb-root-password` - ## NOTE: When it's set, the `externalDatabase.rootPassword` parameter is ignored - ## - # existingSecret: - - ## Database host - ## - host: localhost - - ## Database port number - ## - port: 3306 - - ## root username of MariaDB - ## - rootUser: root - - ## Database password - ## - rootPassword: "" - -## ## MariaDB chart configuration -## ## https://github.com/bitnami/charts/blob/master/bitnami/mariadb/values.yaml ## mariadb: - ## Whether to deploy a MariaDB server to satisfy the applications database requirements. To use an external database set this to false and configure the externalDatabase parameters + ## @param mariadb.enabled Whether to use the MariaDB chart + ## deploy a MariaDB server to satisfy the applications database requirements + ## To use an external database set this to false and configure the externalDatabase parameters ## enabled: true - - ## MariaDB architecture. Allowed values: standalone or replication + ## @param mariadb.architecture MariaDB architecture. Allowed values: `standalone` or `replication` ## architecture: standalone - ## MariaDB Authentication parameters ## auth: - ## MariaDB root password + ## @param mariadb.auth.rootPassword Password for the MariaDB `root` user ## ref: https://github.com/bitnami/bitnami-docker-mariadb#setting-the-root-password-on-first-run ## rootPassword: "" - primary: + ## @param mariadb.primary.configuration [string] MariaDB Primary configuration to be injected as ConfigMap ## Improvements for better database performance on Phabricator ## configuration: |- @@ -635,14 +546,17 @@ mariadb: port=3306 socket=/opt/bitnami/mariadb/tmp/mysql.sock pid-file=/opt/bitnami/mariadb/tmp/mysqld.pid + ## @param mariadb.primary.extraFlags Additional command line flags + ## extraFlags: "--local-infile=0" - ## Enable persistence using Persistent Volume Claims ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## persistence: + ## @param mariadb.primary.persistence.enabled Enable database persistence using PVC + ## enabled: true - ## mariadb data Persistent Volume Storage Class + ## @param mariadb.primary.persistence.storageClass mariadb data Persistent Volume Storage Class ## If defined, storageClassName: ## If set to "-", storageClassName: "", which disables dynamic provisioning ## If undefined (the default) or set to null, no storageClassName spec is @@ -650,12 +564,139 @@ mariadb: ## GKE, AWS & OpenStack) ## storageClass: + ## @param mariadb.primary.persistence.accessModes Database Persistent Volume Access Modes + ## accessModes: - ReadWriteOnce + ## @param mariadb.primary.persistence.size Database Persistent Volume Size + ## size: 8Gi - ## Set path in case you want to use local host path volumes (not recommended in production) + ## @param mariadb.primary.persistence.hostPath Host mount path for MariaDB volume in case you want to use local host path volumes (not recommended in production) ## hostPath: - ## Use an existing PVC + ## @param mariadb.primary.persistence.existingClaim Enable persistence using an existing PVC ## existingClaim: +## External Database Configuration +## All of these values are only used when mariadb.enabled is set to false +## +externalDatabase: + ## @param externalDatabase.existingSecret Name of the database existing Secret Object + ## NOTE: must contain key `mariadb-root-password` + ## NOTE: When it's set, the `externalDatabase.rootPassword` parameter is ignored + ## + existingSecret: + ## @param externalDatabase.host Host of the existing database + ## + host: localhost + ## @param externalDatabase.port Port of the existing database + ## + port: 3306 + ## @param externalDatabase.rootUser Username in the external db with root privileges + ## + rootUser: root + ## @param externalDatabase.rootPassword Password for the above username + ## + rootPassword: "" + +## @section Volume Permissions parameters + +## Init containers parameters: +## volumePermissions: Change the owner and group of the persistent volume mountpoint to runAsUser:fsGroup values from the securityContext section. +## +volumePermissions: + ## @param volumePermissions.enabled Enable init container that changes volume permissions in the data directory ( + ## + enabled: false + ## @param volumePermissions.image.registry Init container volume-permissions image registry + ## @param volumePermissions.image.repository Init container volume-permissions image repository + ## @param volumePermissions.image.tag Init container volume-permissions image tag (immutable tags are recommended) + ## @param volumePermissions.image.pullPolicy Init container volume-permissions image pull policy + ## @param volumePermissions.image.pullSecrets Specify docker-registry secret names as an array + ## + image: + registry: docker.io + repository: bitnami/bitnami-shell + tag: 10-debian-10-r127 + pullPolicy: Always + ## Optionally specify an array of imagePullSecrets. + ## Secrets must be manually created in the namespace. + ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ + ## Example: + ## pullSecrets: + ## - myRegistryKeySecretName + ## + pullSecrets: [] + ## Init containers' resource requests and limits + ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ + ## We usually recommend not to specify default resources and to leave this as a conscious + ## choice for the user. This also increases chances charts run on environments with little + ## resources, such as Minikube. If you do want to specify resources, uncomment the following + ## lines, adjust them as necessary, and remove the curly braces after 'resources:'. + ## @param volumePermissions.resources.limits The resources limits for the container + ## @param volumePermissions.resources.requests The requested resources for the container + ## + resources: + ## Example: + ## limits: + ## cpu: 100m + ## memory: 128Mi + limits: {} + ## Examples: + ## requests: + ## cpu: 100m + ## memory: 128Mi + requests: {} + +## @section Metrics parameters + +## Prometheus Exporter / Metrics +## +metrics: + ## @param metrics.enabled Start a side-car prometheus exporter + ## + enabled: false + ## @param metrics.image.registry Apache exporter image registry + ## @param metrics.image.repository Apache exporter image repository + ## @param metrics.image.tag Apache exporter image tag (immutable tags are recommended) + ## @param metrics.image.pullPolicy Image pull policy + ## @param metrics.image.pullSecrets Specify docker-registry secret names as an array + ## + image: + registry: docker.io + repository: bitnami/apache-exporter + tag: 0.9.0-debian-10-r24 + pullPolicy: IfNotPresent + ## Optionally specify an array of imagePullSecrets. + ## Secrets must be manually created in the namespace. + ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ + ## Example: + ## pullSecrets: + ## - myRegistryKeySecretName + ## + pullSecrets: [] + ## @param metrics.podAnnotations [object] Additional annotations for Metrics exporter pod + ## + podAnnotations: + prometheus.io/scrape: "true" + prometheus.io/port: "9117" + ## Metrics exporter resource requests and limits + ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ + ## We usually recommend not to specify default resources and to leave this as a conscious + ## choice for the user. This also increases chances charts run on environments with little + ## resources, such as Minikube. If you do want to specify resources, uncomment the following + ## lines, adjust them as necessary, and remove the curly braces after 'resources:'. + ## @param metrics.resources.limits The resources limits for the container + ## @param metrics.resources.requests The requested resources for the container + ## + resources: + ## Example: + ## limits: + ## cpu: 100m + ## memory: 128Mi + limits: {} + ## Examples: + ## requests: + ## cpu: 100m + ## memory: 128Mi + requests: {} diff --git a/bitnami/phpbb/Chart.yaml b/bitnami/phpbb/Chart.yaml index e78eeb12ab..9d4c701a89 100644 --- a/bitnami/phpbb/Chart.yaml +++ b/bitnami/phpbb/Chart.yaml @@ -26,4 +26,4 @@ name: phpbb sources: - https://github.com/bitnami/bitnami-docker-phpbb - https://www.phpbb.com/ -version: 10.1.14 +version: 10.1.15 diff --git a/bitnami/phpbb/README.md b/bitnami/phpbb/README.md index a6c5178abd..d1fcfd50ab 100644 --- a/bitnami/phpbb/README.md +++ b/bitnami/phpbb/README.md @@ -48,156 +48,170 @@ The command removes all the Kubernetes components associated with the chart and ## Parameters -The following table lists the configurable parameters of the phpBB chart and their default values per section/component: - ### Global parameters -| Parameter | Description | Default | -|---------------------------|-------------------------------------------------|---------------------------------------------------------| -| `global.imageRegistry` | Global Docker image registry | `nil` | -| `global.imagePullSecrets` | Global Docker registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | -| `global.storageClass` | Global storage class for dynamic provisioning | `nil` | +| Name | Description | Value | +| ------------------------- | ----------------------------------------------- | ----- | +| `global.imageRegistry` | Global Docker image registry | `nil` | +| `global.imagePullSecrets` | Global Docker registry secret names as an array | `[]` | +| `global.storageClass` | Global StorageClass for Persistent Volume(s) | `nil` | + ### Common parameters -| Parameter | Description | Default | -|---------------------|------------------------------------------------------------------------------|---------------------------------------------------------| -| `image.registry` | phpBB image registry | `docker.io` | -| `image.repository` | phpBB Image name | `bitnami/phpbb` | -| `image.tag` | phpBB Image tag | `{TAG_NAME}` | -| `image.pullPolicy` | phpBB image pull policy | `IfNotPresent` | -| `image.pullSecrets` | Specify docker-registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | -| `image.debug` | Specify if debug logs should be enabled | `false` | -| `nameOverride` | String to partially override common.names.fullname template | `nil` | -| `fullnameOverride` | String to fully override common.names.fullname template | `nil` | -| `commonLabels` | Labels to add to all deployed objects | `nil` | -| `commonAnnotations` | Annotations to add to all deployed objects | `[]` | -| `extraDeploy` | Array of extra objects to deploy with the release (evaluated as a template). | `nil` | +| Name | Description | Value | +| ------------------- | --------------------------------------------------------------------------------------------------------- | ----- | +| `kubeVersion` | Force target Kubernetes version (using Helm capabilities if not set) | `nil` | +| `nameOverride` | String to partially override common.names.fullname template (will maintain the release name) | `nil` | +| `fullnameOverride` | String to fully override common.names.fullname template | `nil` | +| `commonAnnotations` | Common annotations to add to all phpBB resources (sub-charts are not considered). Evaluated as a template | `{}` | +| `commonLabels` | Common labels to add to all phpBB resources (sub-charts are not considered). Evaluated as a template | `{}` | +| `extraDeploy` | Array of extra objects to deploy with the release (evaluated as a template) | `[]` | + ### phpBB parameters -| Parameter | Description | Default | -|--------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------| -| `affinity` | Map of node/pod affinities | `{}` | -| `allowEmptyPassword` | Allow DB blank passwords | `yes` | -| `args` | Override default container args (useful when using custom images) | `nil` | -| `command` | Override default container command (useful when using custom images) | `nil` | -| `hostAliases` | Add deployment host aliases | `Check values.yaml` | -| `containerSecurityContext.enabled` | Enable phpBB containers' Security Context | `true` | -| `containerSecurityContext.runAsUser` | phpBB containers' Security Context | `1001` | -| `customLivenessProbe` | Override default liveness probe | `nil` | -| `customReadinessProbe` | Override default readiness probe | `nil` | -| `existingSecret` | Name of a secret with the application password | `nil` | -| `extraEnvVarsCM` | ConfigMap containing extra env vars | `nil` | -| `extraEnvVarsSecret` | Secret containing extra env vars (in case of sensitive data) | `nil` | -| `extraEnvVars` | Extra environment variables | `nil` | -| `extraVolumeMounts` | Array of extra volume mounts to be added to the container (evaluated as template). Normally used with `extraVolumes`. | `nil` | -| `extraVolumes` | Array of extra volumes to be added to the deployment (evaluated as template). Requires setting `extraVolumeMounts` | `nil` | -| `initContainers` | Add additional init containers to the pod (evaluated as a template) | `nil` | -| `lifecycleHooks` | LifecycleHook to set additional configuration at startup Evaluated as a template | `` | -| `livenessProbe` | Liveness probe configuration | `Check values.yaml file` | -| `volumePermissions.enabled` | Enable init container that changes volume permissions in the data directory (for cases where the default k8s `runAsUser` and `fsUser` values do not work) | `false` | -| `volumePermissions.image.registry` | Init container volume-permissions image registry | `docker.io` | -| `volumePermissions.image.repository` | Init container volume-permissions image name | `bitnami/bitnami-shell` | -| `volumePermissions.image.tag` | Init container volume-permissions image tag | `"10"` | -| `volumePermissions.image.pullPolicy` | Init container volume-permissions image pull policy | `Always` | -| `volumePermissions.resources` | Init container resource requests/limit | `nil` | -| `phpbbSkipInstall` | Skip phpbb bootstrap (`no` / `yes`) | `no` | -| `phpbbUsername` | User of the application | `user` | -| `phpbbPassword` | Application password | _random 10 character alphanumeric string_ | -| `phpbbEmail` | Admin email | `user@example.com` | -| `phpbbDisableSessionValidation` | Disable session validation | `yes` | -| `nodeAffinityPreset.type` | Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | -| `nodeAffinityPreset.key` | Node label key to match Ignored if `affinity` is set. | `""` | -| `nodeAffinityPreset.values` | Node label values to match. Ignored if `affinity` is set. | `[]` | -| `nodeSelector` | Node labels for pod assignment | `{}` (The value is evaluated as a template) | -| `persistence.accessMode` | PVC Access Mode for phpBB volume | `ReadWriteOnce` | -| `persistence.enabled` | Enable persistence using PVC | `true` | -| `persistence.existingClaim` | An Existing PVC name | `nil` | -| `persistence.hostPath` | Host mount path for phpBB volume | `nil` (will not mount to a host path) | -| `persistence.size` | PVC Storage Request for phpBB volume | `8Gi` | -| `persistence.storageClass` | PVC Storage Class for phpBB volume | `nil` (uses alpha storage class annotation) | -| `podAffinityPreset` | Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | -| `podAntiAffinityPreset` | Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` | -| `podAnnotations` | Pod annotations | `{}` | -| `podLabels` | Add additional labels to the pod (evaluated as a template) | `nil` | -| `podSecurityContext.enabled` | Enable phpBB pods' Security Context | `true` | -| `podSecurityContext.fsGroup` | phpBB pods' group ID | `1001` | -| `priorityClassName` | Define the priority class name to use for the phpbb pods here. | `""` | -| `readinessProbe` | Readiness probe configuration | `Check values.yaml file` | -| `replicaCount` | Number of phpBB Pods to run | `1` | -| `resources` | CPU/Memory resource requests/limits | Memory: `512Mi`, CPU: `300m` | -| `sidecars` | Attach additional containers to the pod (evaluated as a template) | `nil` | -| `smtpHost` | SMTP host | `nil` | -| `smtpPort` | SMTP port | `nil` (but phpbb internal default is 25) | -| `smtpProtocol` | SMTP Protocol (options: ssl,tls, nil) | `nil` | -| `smtpUser` | SMTP user | `nil` | -| `smtpPassword` | SMTP password | `nil` | -| `tolerations` | Tolerations for pod assignment | `[]` (The value is evaluated as a template) | -| `updateStrategy` | Deployment update strategy | `nil` | +| Name | Description | Value | +| -------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------- | +| `image.registry` | phpBB image registry | `docker.io` | +| `image.repository` | phpBB Image repository | `bitnami/phpbb` | +| `image.tag` | phpBB Image tag (immutable tags are recommended) | `3.3.4-debian-10-r45` | +| `image.pullPolicy` | phpBB image pull policy | `IfNotPresent` | +| `image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | +| `image.debug` | Specify if debug logs should be enabled | `false` | +| `replicaCount` | Number of replicas (requires ReadWriteMany PVC support) | `1` | +| `phpbbSkipInstall` | Skip phpBB installation wizard. Useful for migrations and restoring from SQL dump | `no` | +| `phpbbDisableSessionValidation` | Disable session validation | `yes` | +| `phpbbUsername` | User of the application | `user` | +| `phpbbPassword` | Application password | `nil` | +| `phpbbEmail` | Admin email | `user@example.com` | +| `allowEmptyPassword` | Allow DB blank passwords | `no` | +| `command` | Override default container command (useful when using custom images) | `nil` | +| `args` | Override default container args (useful when using custom images) | `nil` | +| `hostAliases` | Add deployment host aliases | `[]` | +| `updateStrategy.type` | Update strategy - only really applicable for deployments with RWO PVs attached | `RollingUpdate` | +| `extraEnvVars` | An array to add extra env vars | `[]` | +| `extraEnvVarsCM` | ConfigMap with extra environment variables | `nil` | +| `extraEnvVarsSecret` | Secret with extra environment variables | `nil` | +| `extraVolumes` | Extra volumes to add to the deployment. Requires setting `extraVolumeMounts` | `[]` | +| `extraVolumeMounts` | Extra volume mounts to add to the container. Normally used with `extraVolumes` | `[]` | +| `initContainers` | Extra init containers to add to the deployment | `[]` | +| `sidecars` | Extra sidecar containers to add to the deployment | `[]` | +| `tolerations` | Tolerations for pod assignment | `[]` | +| `existingSecret` | Use existing secret for the application password | `nil` | +| `volumePermissions.enabled` | Enable init container that changes volume permissions in the data directory (for cases where the default k8s `runAsUser` and `fsUser` values do not work) | `false` | +| `volumePermissions.image.registry` | Init container volume-permissions image registry | `docker.io` | +| `volumePermissions.image.repository` | Init container volume-permissions image repository | `bitnami/bitnami-shell` | +| `volumePermissions.image.tag` | Init container volume-permissions image tag (immutable tags are recommended) | `10-debian-10-r115` | +| `volumePermissions.image.pullPolicy` | Init container volume-permissions image pull policy | `Always` | +| `volumePermissions.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | +| `volumePermissions.resources.limits` | The resources limits for the container | `{}` | +| `volumePermissions.resources.requests` | The requested resources for the container | `{}` | +| `smtpHost` | SMTP host | `nil` | +| `smtpPort` | SMTP port | `nil` | +| `smtpUser` | SMTP user | `nil` | +| `smtpPassword` | SMTP password | `nil` | +| `smtpProtocol` | SMTP Protocol (options: ssl,tls, nil) | `nil` | +| `containerPorts` | Container ports | `{}` | +| `persistence.enabled` | Enable persistence using PVC | `true` | +| `persistence.storageClass` | Database data Persistent Volume Storage Class | `nil` | +| `persistence.accessMode` | PVC Access Mode for phpBB volume | `ReadWriteOnce` | +| `persistence.size` | PVC Storage Request for phpBB volume | `8Gi` | +| `persistence.existingClaim` | A manually managed Persistent Volume Claim | `nil` | +| `persistence.hostPath` | Host mount path for phpBB volume | `nil` | +| `podAffinityPreset` | Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | +| `podAntiAffinityPreset` | Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` | +| `nodeAffinityPreset.type` | Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | +| `nodeAffinityPreset.key` | Node label key to match Ignored if `affinity` is set. | `""` | +| `nodeAffinityPreset.values` | Node label values to match. Ignored if `affinity` is set. | `[]` | +| `affinity` | Affinity for pod assignment. Evaluated as a template. | `{}` | +| `nodeSelector` | Node labels for pod assignment. Evaluated as a template. | `{}` | +| `resources.requests` | The requested resources for the container | `{}` | +| `podSecurityContext.enabled` | Enable phpBB pods' Security Context | `true` | +| `podSecurityContext.fsGroup` | phpBB pods' group ID | `1001` | +| `containerSecurityContext.enabled` | Enable phpBB containers' Security Context | `true` | +| `containerSecurityContext.runAsUser` | phpBB containers' Security Context | `1001` | +| `livenessProbe.enabled` | Enable livenessProbe | `true` | +| `livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `600` | +| `livenessProbe.periodSeconds` | Period seconds for livenessProbe | `10` | +| `livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `5` | +| `livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `6` | +| `livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` | +| `readinessProbe.enabled` | Enable readinessProbe | `true` | +| `readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `30` | +| `readinessProbe.periodSeconds` | Period seconds for readinessProbe | `5` | +| `readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `3` | +| `readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `6` | +| `readinessProbe.successThreshold` | Success threshold for readinessProbe | `1` | +| `customLivenessProbe` | Override default liveness probe | `{}` | +| `customReadinessProbe` | Override default readiness probe | `{}` | +| `priorityClassName` | Define the priority class name to use for the phpbb pods | `nil` | +| `lifecycleHooks` | LifecycleHook to set additional configuration before or after startup | `nil` | +| `podAnnotations` | Pod annotations | `{}` | +| `podLabels` | Pod extra labels | `{}` | + ### Traffic Exposure Parameters -| Parameter | Description | Default | -|----------------------------------|----------------------------------------------------------|--------------------------------| -| `service.type` | Kubernetes Service type | `LoadBalancer` | -| `service.port` | Service HTTP port | `80` | -| `service.httpsPort` | Service HTTPS port | `443` | -| `service.externalTrafficPolicy` | Enable client source IP preservation | `Cluster` | -| `service.nodePorts.http` | Kubernetes http node port | `""` | -| `service.nodePorts.https` | Kubernetes https node port | `""` | -| `service.loadBalancerIP` | loadBalancerIP for phpBB Service | `nil` | -| `ingress.enabled` | Enable ingress controller resource | `false` | -| `ingress.certManager` | Add annotations for cert-manager | `false` | -| `ingress.hostname` | Default host for the ingress resource | `phpbb.local` | -| `ingress.path` | Default path for the ingress resource | `/` | -| `ingress.pathType` | Ingress path type | `ImplementationSpecific` | -| `ingress.tls` | Create TLS Secret | `false` | -| `ingress.annotations` | Ingress annotations | `[]` (evaluated as a template) | -| `ingress.extraHosts[0].name` | Additional hostnames to be covered | `nil` | -| `ingress.extraHosts[0].path` | Additional hostnames to be covered | `nil` | -| `ingress.extraPaths` | Additional arbitrary path/backend objects | `nil` | -| `ingress.extraTls[0].hosts[0]` | TLS configuration for additional hostnames to be covered | `nil` | -| `ingress.extraTls[0].secretName` | TLS configuration for additional hostnames to be covered | `nil` | -| `ingress.secrets[0].name` | TLS Secret Name | `nil` | -| `ingress.secrets[0].certificate` | TLS Secret Certificate | `nil` | -| `ingress.secrets[0].key` | TLS Secret Key | `nil` | +| Name | Description | Value | +| ------------------------------- | ------------------------------------------------------------------------------------------------------ | ------------------------ | +| `service.type` | Kubernetes Service type | `LoadBalancer` | +| `service.port` | Service HTTP port | `80` | +| `service.httpsPort` | Service HTTPS port | `443` | +| `service.nodePorts.http` | Kubernetes HTTP node port | `""` | +| `service.nodePorts.https` | Kubernetes HTTPS node port | `""` | +| `service.externalTrafficPolicy` | Enable client source IP preservation | `Cluster` | +| `ingress.enabled` | Set to true to enable ingress record generation | `false` | +| `ingress.certManager` | Set this to true in order to add the corresponding annotations for cert-manager | `false` | +| `ingress.pathType` | Ingress path type | `ImplementationSpecific` | +| `ingress.apiVersion` | Override API Version (automatically detected if not set) | `nil` | +| `ingress.hostname` | Default host for the ingress resource | `phpbb.local` | +| `ingress.path` | The Path to phpBB. You may need to set this to '/*' in order to use this with ALB ingress controllers. | `ImplementationSpecific` | +| `ingress.annotations` | Ingress annotations | `{}` | +| `ingress.tls` | Enable TLS configuration for the hostname defined at ingress.hostname parameter | `false` | +| `ingress.extraHosts` | The list of additional hostnames to be covered with this ingress record. | `[]` | +| `ingress.extraPaths` | Any additional arbitrary paths that may need to be added to the ingress under the main host. | `[]` | +| `ingress.extraTls` | The tls configuration for additional hostnames to be covered with this ingress record. | `[]` | +| `ingress.secrets` | If you're providing your own certificates, please use this to add the certificates as secrets | `[]` | + ### Database parameters -| Parameter | Description | Default | -|---------------------------------------------|--------------------------------------------------------------------------|------------------------------------------------| -| `mariadb.enabled` | Whether to use the MariaDB chart | `true` | -| `mariadb.architecture` | MariaDB architecture (`standalone` or `replication`) | `standalone` | -| `mariadb.auth.rootPassword` | Password for the MariaDB `root` user | _random 10 character alphanumeric string_ | -| `mariadb.auth.database` | Database name to create | `bitnami_phpbb` | -| `mariadb.auth.username` | Database user to create | `bn_phpbb` | -| `mariadb.auth.password` | Password for the database | _random 10 character long alphanumeric string_ | -| `mariadb.primary.persistence.enabled` | Enable database persistence using PVC | `true` | -| `mariadb.primary.persistence.existingClaim` | Name of an existing `PersistentVolumeClaim` for MariaDB primary replicas | `nil` | -| `mariadb.primary.persistence.accessMode` | Database Persistent Volume Access Modes | `[ReadWriteOnce]` | -| `mariadb.primary.persistence.size` | Database Persistent Volume Size | `8Gi` | -| `mariadb.primary.persistence.storageClass` | MariaDB primary persistent volume storage Class | `nil` (uses alpha storage class annotation) | -| `mariadb.primary.persistence.hostPath` | Host mount path for MariaDB volume | `nil` (will not mount to a host path) | -| `externalDatabase.user` | Existing username in the external db | `bn_phpbb` | -| `externalDatabase.password` | Password for the above username | `nil` | -| `externalDatabase.database` | Name of the existing database | `bitnami_phpbb` | -| `externalDatabase.host` | Host of the existing database | `nil` | -| `externalDatabase.port` | Port of the existing database | `3306` | -| `externalDatabase.existingSecret` | Name of the database existing Secret Object | `nil` | +| Name | Description | Value | +| ------------------------------------------- | ------------------------------------------------------------------------------------ | --------------- | +| `mariadb.enabled` | Whether to deploy a mariadb server to satisfy the applications database requirements | `true` | +| `mariadb.architecture` | MariaDB architecture. Allowed values: `standalone` or `replication` | `standalone` | +| `mariadb.auth.rootPassword` | Password for the MariaDB `root` user | `""` | +| `mariadb.auth.database` | Database name to create | `bitnami_phpbb` | +| `mariadb.auth.username` | Database user to create | `bn_phpbb` | +| `mariadb.auth.password` | Password for the database | `""` | +| `mariadb.primary.persistence.enabled` | Enable database persistence using PVC | `true` | +| `mariadb.primary.persistence.storageClass` | MariaDB primary persistent volume storage Class | `nil` | +| `mariadb.primary.persistence.accessModes` | PVC Access Modes for phpBB volume | `[]` | +| `mariadb.primary.persistence.size` | Database Persistent Volume Size | `8Gi` | +| `mariadb.primary.persistence.hostPath` | Host mount path for MariaDB volume | `nil` | +| `mariadb.primary.persistence.existingClaim` | Name of an existing `PersistentVolumeClaim` for MariaDB primary replicas | `nil` | +| `externalDatabase.existingSecret` | Use existing secret (ignores previous password) | `nil` | +| `externalDatabase.host` | Host of the existing database | `""` | +| `externalDatabase.port` | Port of the existing database | `3306` | +| `externalDatabase.user` | Existing username in the external db | `bn_phpbb` | +| `externalDatabase.password` | Password for the above username | `""` | +| `externalDatabase.database` | Name of the existing database | `bitnami_phpbb` | + ### Metrics parameters -| Parameter | Description | Default | -|-----------------------------|--------------------------------------------------|--------------------------------------------------------------| -| `metrics.enabled` | Start a side-car prometheus exporter | `false` | -| `metrics.image.registry` | Apache exporter image registry | `docker.io` | -| `metrics.image.repository` | Apache exporter image name | `bitnami/apache-exporter` | -| `metrics.image.tag` | Apache exporter image tag | `{TAG_NAME}` | -| `metrics.image.pullPolicy` | Image pull policy | `IfNotPresent` | -| `metrics.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` (does not add image pull secrets to deployed pods) | -| `metrics.podAnnotations` | Additional annotations for Metrics exporter pod | `{prometheus.io/scrape: "true", prometheus.io/port: "9117"}` | -| `metrics.resources` | Exporter resource requests/limit | {} | +| Name | Description | Value | +| --------------------------- | ---------------------------------------------------------- | ------------------------- | +| `metrics.enabled` | Start a side-car prometheus exporter | `false` | +| `metrics.image.registry` | Apache exporter image registry | `docker.io` | +| `metrics.image.repository` | Apache exporter image repository | `bitnami/apache-exporter` | +| `metrics.image.tag` | Apache exporter image tag (immutable tags are recommended) | `0.9.0-debian-10-r13` | +| `metrics.image.pullPolicy` | Image pull policy | `IfNotPresent` | +| `metrics.image.pullSecrets` | Specify docker-registry secret names as an array | `[]` | +| `metrics.resources` | Metrics exporter resource requests and limits | `{}` | +| `metrics.podAnnotations` | Additional annotations for Metrics exporter pod | `{}` | + The above parameters map to the env variables defined in [bitnami/phpbb](http://github.com/bitnami/bitnami-docker-phpbb). For more information please refer to the [bitnami/phpbb](http://github.com/bitnami/bitnami-docker-phpbb) image documentation. diff --git a/bitnami/phpbb/values.yaml b/bitnami/phpbb/values.yaml index d4928f8b27..a457693a6e 100644 --- a/bitnami/phpbb/values.yaml +++ b/bitnami/phpbb/values.yaml @@ -1,15 +1,52 @@ +## @section Global parameters ## Global Docker image parameters ## Please, note that this will override the image parameters, including dependencies, configured to use the global value -## Current available global Docker image parameters: imageRegistry and imagePullSecrets +## Current available global Docker image parameters: imageRegistry, imagePullSecrets and storageClass + +## @param global.imageRegistry Global Docker image registry +## @param global.imagePullSecrets Global Docker registry secret names as an array +## @param global.storageClass Global StorageClass for Persistent Volume(s) ## -# global: -# imageRegistry: myRegistryName -# imagePullSecrets: -# - myRegistryKeySecretName -# storageClass: myStorageClass +global: + imageRegistry: + ## E.g. + ## imagePullSecrets: + ## - myRegistryKeySecretName + ## + imagePullSecrets: [] + storageClass: + +## @section Common parameters + +## @param kubeVersion Force target Kubernetes version (using Helm capabilities if not set) +## +kubeVersion: +## @param nameOverride String to partially override common.names.fullname template (will maintain the release name) +## +nameOverride: +## @param fullnameOverride String to fully override common.names.fullname template +## +fullnameOverride: +## @param commonAnnotations Common annotations to add to all phpBB resources (sub-charts are not considered). Evaluated as a template +## +commonAnnotations: {} +## @param commonLabels Common labels to add to all phpBB resources (sub-charts are not considered). Evaluated as a template +## +commonLabels: {} +## @param extraDeploy Array of extra objects to deploy with the release (evaluated as a template) +## +extraDeploy: [] + +## @section phpBB parameters ## Bitnami phpBB image version ## ref: https://hub.docker.com/r/bitnami/phpbb/tags/ +## @param image.registry phpBB image registry +## @param image.repository phpBB Image repository +## @param image.tag phpBB Image tag (immutable tags are recommended) +## @param image.pullPolicy phpBB image pull policy +## @param image.pullSecrets Specify docker-registry secret names as an array +## @param image.debug Specify if debug logs should be enabled ## image: registry: docker.io @@ -23,138 +60,108 @@ image: ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ + ## Example: + ## pullSecrets: + ## - myRegistryKeySecretName ## - pullSecrets: - # - myRegistryKeySecretName - + pullSecrets: [] ## Set to true if you would like to see extra information on logs ## debug: false - -## Force target Kubernetes version (using Helm capabilites if not set) -## -kubeVersion: - -## String to partially override common.names.fullname template (will maintain the release name) -## -nameOverride: - -## String to fully override common.names.fullname template -## -fullnameOverride: - -## Number of replicas (requires ReadWriteMany PVC support) +## @param replicaCount Number of replicas (requires ReadWriteMany PVC support) ## replicaCount: 1 - -## Skip phpBB installation wizard. Useful for migrations and restoring from SQL dump +## @param phpbbSkipInstall Skip phpBB installation wizard. Useful for migrations and restoring from SQL dump ## ref: https://github.com/bitnami/bitnami-docker-phpbb#configuration ## phpbbSkipInstall: "no" - -## Disable session validation +## @param phpbbDisableSessionValidation Disable session validation ## ref: https://github.com/bitnami/bitnami-docker-phpbb#configuration ## phpbbDisableSessionValidation: "yes" - -## User of the application +## @param phpbbUsername User of the application ## ref: https://github.com/bitnami/bitnami-docker-phpbb#configuration ## phpbbUsername: user - -## Application password +## @param phpbbPassword Application password ## Defaults to a random 10-character alphanumeric string if not set ## ref: https://github.com/bitnami/bitnami-docker-phpbb#configuration ## -# phpbbPassword: - -## Admin email +phpbbPassword: +## @param phpbbEmail Admin email ## ref: https://github.com/bitnami/bitnami-docker-phpbb#configuration ## phpbbEmail: user@example.com - -## Set to `yes` to allow the container to be started with blank passwords +## @param allowEmptyPassword Allow DB blank passwords ## ref: https://github.com/bitnami/bitnami-docker-phpbb#environment-variables ## allowEmptyPassword: "no" - -## Container command (using container default if not set) +## @param command Override default container command (useful when using custom images) ## command: -## Container args (using container default if not set) +## @param args Override default container args (useful when using custom images) ## args: - -## Deployment pod host aliases +## @param hostAliases [array] Add deployment host aliases ## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ ## hostAliases: - # Necessary for apache-exporter to work + ## Necessary for apache-exporter to work + ## - ip: "127.0.0.1" hostnames: - "status.localhost" - -## Common annotations to add to all Harbor resources (sub-charts are not considered). Evaluated as a template -## -commonAnnotations: {} - -## Common labels to add to all Harbor resources (sub-charts are not considered). Evaluated as a template -## -commonLabels: {} - -## Update strategy - only really applicable for deployments with RWO PVs attached +## @param updateStrategy.type Update strategy - only really applicable for deployments with RWO PVs attached ## If replicas = 1, an update can get "stuck", as the previous pod remains attached to the ## PV, and the "incoming" pod can never start. Changing the strategy to "Recreate" will ## terminate the single previous pod, so that the new, incoming pod can attach to the PV ## updateStrategy: type: RollingUpdate - -## An array to add extra env vars +## @param extraEnvVars An array to add extra env vars ## For example: +## - name: BEARER_AUTH +## value: true ## extraEnvVars: [] -# - name: BEARER_AUTH -# value: true - -## ConfigMap with extra environment variables +## @param extraEnvVarsCM ConfigMap with extra environment variables ## extraEnvVarsCM: - -## Secret with extra environment variables +## @param extraEnvVarsSecret Secret with extra environment variables ## extraEnvVarsSecret: - -## Extra volumes to add to the deployment +## @param extraVolumes Extra volumes to add to the deployment. Requires setting `extraVolumeMounts` ## extraVolumes: [] - -## Extra volume mounts to add to the container +## @param extraVolumeMounts Extra volume mounts to add to the container. Normally used with `extraVolumes` ## extraVolumeMounts: [] - -## Extra init containers to add to the deployment +## @param initContainers Extra init containers to add to the deployment ## initContainers: [] - -## Extra sidecar containers to add to the deployment +## @param sidecars Extra sidecar containers to add to the deployment ## sidecars: [] - -## Tolerations for pod assignment. Evaluated as a template. +## @param tolerations Tolerations for pod assignment ## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ ## tolerations: [] - -## Use existing secret for the application password +## @param existingSecret Use existing secret for the application password ## existingSecret: - ## Init containers parameters: ## volumePermissions: Change the owner and group of the persistent volume mountpoint to runAsUser:fsGroup values from the securityContext section. ## volumePermissions: + ## @param volumePermissions.enabled Enable init container that changes volume permissions in the data directory (for cases where the default k8s `runAsUser` and `fsUser` values do not work) + ## enabled: false + ## @param volumePermissions.image.registry Init container volume-permissions image registry + ## @param volumePermissions.image.repository Init container volume-permissions image repository + ## @param volumePermissions.image.tag Init container volume-permissions image tag (immutable tags are recommended) + ## @param volumePermissions.image.pullPolicy Init container volume-permissions image pull policy + ## @param volumePermissions.image.pullSecrets Specify docker-registry secret names as an array + ## image: registry: docker.io repository: bitnami/bitnami-shell @@ -163,327 +170,148 @@ volumePermissions: ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ + ## Example: + ## pullSecrets: + ## - myRegistryKeySecretName ## - # pullSecrets: - # - myRegistryKeySecretName - ## Init container' resource requests and limits + pullSecrets: [] + ## Init containers' resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ + ## We usually recommend not to specify default resources and to leave this as a conscious + ## choice for the user. This also increases chances charts run on environments with little + ## resources, such as Minikube. If you do want to specify resources, uncomment the following + ## lines, adjust them as necessary, and remove the curly braces after 'resources:'. + ## @param volumePermissions.resources.limits The resources limits for the container + ## @param volumePermissions.resources.requests The requested resources for the container ## resources: - # We usually recommend not to specify default resources and to leave this as a conscious - # choice for the user. This also increases chances charts run on environments with little - # resources, such as Minikube. If you do want to specify resources, uncomment the following - # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + ## Example: + ## limits: + ## cpu: 100m + ## memory: 128Mi limits: {} - # cpu: 100m - # memory: 128Mi + ## Examples: + ## requests: + ## cpu: 100m + ## memory: 128Mi requests: {} - # cpu: 100m - # memory: 128Mi - -## -## External database configuration -## -externalDatabase: - ## Use existing secret (ignores previous password) - ## must contain key `mariadb-password` - ## NOTE: When it's set, the `externalDatabase.password` parameter is ignored - # existingSecret: - - ## Database host - ## - host: "" - - ## Database host - ## - port: 3306 - - ## Database user - ## - user: bn_phpbb - - ## Database password - ## - password: "" - - ## Database name - ## - database: bitnami_phpbb - ## SMTP mail delivery configuration ## ref: https://github.com/bitnami/bitnami-docker-phpbb/#smtp-configuration -# smtpHost: -# smtpPort: -# smtpUser: -# smtpPassword: -# smtpProtocol: - +## @param smtpHost SMTP host +## @param smtpPort SMTP port +## @param smtpUser SMTP user +## @param smtpPassword SMTP password +## @param smtpProtocol SMTP Protocol (options: ssl,tls, nil) ## -## MariaDB chart configuration -## -## https://github.com/bitnami/charts/blob/master/bitnami/mariadb/values.yaml -## -mariadb: - ## Whether to deploy a mariadb server to satisfy the applications database requirements. To use an external database set this to false and configure the externalDatabase parameters - ## - enabled: true - - ## MariaDB architecture. Allowed values: standalone or replication - ## - architecture: standalone - - ## MariaDB Authentication parameters - ## - auth: - ## MariaDB root password - ## ref: https://github.com/bitnami/bitnami-docker-mariadb#setting-the-root-password-on-first-run - ## - rootPassword: "" - ## MariaDB custom user and database - ## ref: https://github.com/bitnami/bitnami-docker-mariadb/blob/master/README.md#creating-a-database-on-first-run - ## ref: https://github.com/bitnami/bitnami-docker-mariadb/blob/master/README.md#creating-a-database-user-on-first-run - ## - database: bitnami_phpbb - username: bn_phpbb - password: "" - - primary: - ## Enable persistence using Persistent Volume Claims - ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ - ## - persistence: - enabled: true - ## mariadb data Persistent Volume Storage Class - ## If defined, storageClassName: - ## If set to "-", storageClassName: "", which disables dynamic provisioning - ## If undefined (the default) or set to null, no storageClassName spec is - ## set, choosing the default provisioner. (gp2 on AWS, standard on - ## GKE, AWS & OpenStack) - ## - storageClass: - accessModes: - - ReadWriteOnce - size: 8Gi - ## Set path in case you want to use local host path volumes (not recommended in production) - ## - hostPath: - ## Use an existing PVC - ## - existingClaim: - -## Container ports +smtpHost: +smtpPort: +smtpUser: +smtpPassword: +smtpProtocol: +## @param containerPorts [object] Container ports ## containerPorts: http: 8080 https: 8443 - -## Kubernetes configuration -## For minikube, set this to NodePort, for ingress ClusterIP, elsewhere use LoadBalancer -## -service: - type: LoadBalancer - # HTTP Port - port: 80 - # HTTPS Port - httpsPort: 443 - ## loadBalancerIP for the phpBB Service (optional, cloud specific) - ## ref: http://kubernetes.io/docs/user-guide/services/#type-loadbalancer - ## - ## loadBalancerIP: - ## - ## nodePorts: - ## http: - ## https: - ## - nodePorts: - http: "" - https: "" - ## Enable client source IP preservation - ## ref http://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip - ## - externalTrafficPolicy: Cluster - -## Configure the ingress resource that allows you to access the -## phpBB installation. Set up the URL -## ref: http://kubernetes.io/docs/user-guide/ingress/ -## -ingress: - ## Set to true to enable ingress record generation - ## - enabled: false - - ## Set this to true in order to add the corresponding annotations for cert-manager - ## - certManager: false - - ## Ingress Path type - ## - pathType: ImplementationSpecific - - ## Override API Version (automatically detected if not set) - ## - apiVersion: - - ## When the ingress is enabled, a host pointing to this will be created - ## - hostname: phpbb.local - - ## The Path to phpBB. You may need to set this to '/*' in order to use this - ## with ALB ingress controllers. - ## - path: / - - ## Ingress annotations done as key:value pairs - ## For a full list of possible ingress annotations, please see - ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md - ## - ## If certManager is set to true, annotation kubernetes.io/tls-acme: "true" will automatically be set - ## - annotations: {} - - ## Enable TLS configuration for the hostname defined at ingress.hostname parameter - ## TLS certificates will be retrieved from a TLS secret with name: {{- printf "%s-tls" .Values.ingress.hostname }} - ## You can use the ingress.secrets parameter to create this TLS secret or relay on cert-manager to create it - ## - tls: false - - ## The list of additional hostnames to be covered with this ingress record. - ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array - ## extraHosts: - ## - name: phpbb.local - ## path: / - ## - - ## Any additional arbitrary paths that may need to be added to the ingress under the main host. - ## For example: The ALB ingress controller requires a special rule for handling SSL redirection. - ## extraPaths: - ## - path: /* - ## backend: - ## serviceName: ssl-redirect - ## servicePort: use-annotation - ## - - ## The tls configuration for additional hostnames to be covered with this ingress record. - ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls - ## extraTls: - ## - hosts: - ## - phpbb.local - ## secretName: phpbb.local-tls - ## - - ## If you're providing your own certificates, please use this to add the certificates as secrets - ## key and certificate should start with -----BEGIN CERTIFICATE----- or - ## -----BEGIN RSA PRIVATE KEY----- - ## - ## name should line up with a tlsSecret set further up - ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set - ## - ## It is also possible to create and manage the certificates outside of this helm chart - ## Please see README.md for more information - ## - secrets: [] - ## - name: phpbb.local-tls - ## key: - ## certificate: - ## - ## Enable persistence using Persistent Volume Claims ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## persistence: + ## @param persistence.enabled Enable persistence using PVC + ## enabled: true - ## database data Persistent Volume Storage Class + ## @param persistence.storageClass Database data Persistent Volume Storage Class ## If defined, storageClassName: ## If set to "-", storageClassName: "", which disables dynamic provisioning ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. (gp2 on AWS, standard on ## GKE, AWS & OpenStack) ## - # storageClass: "-" + storageClass: + ## @param persistence.accessMode PVC Access Mode for phpBB volume + ## accessMode: ReadWriteOnce + ## @param persistence.size PVC Storage Request for phpBB volume + ## size: 8Gi - - ## A manually managed Persistent Volume Claim + ## @param persistence.existingClaim A manually managed Persistent Volume Claim ## Requires persistence.enabled: true ## If defined, PVC must be created manually before volume will be bound ## - # existingClaim: - - ## If defined, the phpbb-data volume will mount to the specified hostPath. + existingClaim: + ## @param persistence.hostPath Host mount path for phpBB volume ## Requires persistence.enabled: true ## Requires persistence.existingClaim: nil|false ## Default: nil. ## hostPath: - -## Pod affinity preset +## @param podAffinityPreset Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` ## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity -## Allowed values: soft, hard ## podAffinityPreset: "" - -## Pod anti-affinity preset +## @param podAntiAffinityPreset Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` ## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity -## Allowed values: soft, hard ## podAntiAffinityPreset: soft - ## Node affinity preset ## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity -## Allowed values: soft, hard ## nodeAffinityPreset: - ## Node affinity type - ## Allowed values: soft, hard + ## @param nodeAffinityPreset.type Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` ## type: "" - ## Node label key to match + ## @param nodeAffinityPreset.key Node label key to match Ignored if `affinity` is set. ## E.g. ## key: "kubernetes.io/e2e-az-name" ## key: "" - ## Node label values to match + ## @param nodeAffinityPreset.values Node label values to match. Ignored if `affinity` is set. ## E.g. ## values: ## - e2e-az1 ## - e2e-az2 ## values: [] - -## Affinity for pod assignment. Evaluated as a template. +## @param affinity Affinity for pod assignment. Evaluated as a template. ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity ## affinity: {} - -## Node labels for pod assignment. Evaluated as a template. +## @param nodeSelector Node labels for pod assignment. Evaluated as a template. ## ref: https://kubernetes.io/docs/user-guide/node-selection/ ## nodeSelector: {} - ## Configure resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ +## @param resources.requests [object] The requested resources for the container ## resources: requests: memory: 512Mi cpu: 300m - ## Configure Pods Security Context ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod +## @param podSecurityContext.enabled Enable phpBB pods' Security Context +## @param podSecurityContext.fsGroup phpBB pods' group ID ## podSecurityContext: enabled: true fsGroup: 1001 - ## Configure Container Security Context (only main container) ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container +## @param containerSecurityContext.enabled Enable phpBB containers' Security Context +## @param containerSecurityContext.runAsUser phpBB containers' Security Context ## containerSecurityContext: enabled: true runAsUser: 1001 - -## Configure extra options for liveness and readiness probes -## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes) +## Configure extra options for liveness probe +## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes +## @param livenessProbe.enabled Enable livenessProbe +## @param livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe +## @param livenessProbe.periodSeconds Period seconds for livenessProbe +## @param livenessProbe.timeoutSeconds Timeout seconds for livenessProbe +## @param livenessProbe.failureThreshold Failure threshold for livenessProbe +## @param livenessProbe.successThreshold Success threshold for livenessProbe ## livenessProbe: enabled: true @@ -492,6 +320,15 @@ livenessProbe: timeoutSeconds: 5 failureThreshold: 6 successThreshold: 1 +## Configure extra options for readiness probe +## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes +## @param readinessProbe.enabled Enable readinessProbe +## @param readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe +## @param readinessProbe.periodSeconds Period seconds for readinessProbe +## @param readinessProbe.timeoutSeconds Timeout seconds for readinessProbe +## @param readinessProbe.failureThreshold Failure threshold for readinessProbe +## @param readinessProbe.successThreshold Success threshold for readinessProbe +## readinessProbe: enabled: true initialDelaySeconds: 30 @@ -499,34 +336,232 @@ readinessProbe: timeoutSeconds: 3 failureThreshold: 6 successThreshold: 1 - +## @param customLivenessProbe Override default liveness probe +## customLivenessProbe: {} - +## @param customReadinessProbe Override default readiness probe +## customReadinessProbe: {} - -## phpBB pods' priority. +## @param priorityClassName Define the priority class name to use for the phpbb pods ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/ ## -# priorityClassName: "" - -## lifecycleHooks for the container to automate configuration before or after startup. +priorityClassName: +## @param lifecycleHooks LifecycleHook to set additional configuration before or after startup ## lifecycleHooks: - -## Pod annotations +## @param podAnnotations Pod annotations ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ ## podAnnotations: {} - -## Pod extra labels +## @param podLabels Pod extra labels ## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ ## podLabels: {} +## @section Traffic Exposure Parameters + +## Kubernetes configuration +## For minikube, set this to NodePort, for ingress ClusterIP, elsewhere use LoadBalancer +## +service: + ## @param service.type Kubernetes Service type + ## + type: LoadBalancer + ## @param service.port Service HTTP port + ## + port: 80 + ## @param service.httpsPort Service HTTPS port + ## + httpsPort: 443 + ## loadBalancerIP for the phpBB Service (optional, cloud specific) + ## ref: http://kubernetes.io/docs/user-guide/services/#type-loadbalancer + ## + ## loadBalancerIP: + ## @param service.nodePorts.http Kubernetes HTTP node port + ## @param service.nodePorts.https Kubernetes HTTPS node port + ## nodePorts: + ## http: + ## https: + ## + nodePorts: + http: "" + https: "" + ## @param service.externalTrafficPolicy Enable client source IP preservation + ## ref http://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip + ## + externalTrafficPolicy: Cluster +## Configure the ingress resource that allows you to access the +## phpBB installation. Set up the URL +## ref: http://kubernetes.io/docs/user-guide/ingress/ +## +ingress: + ## @param ingress.enabled Set to true to enable ingress record generation + ## + enabled: false + ## @param ingress.certManager Set this to true in order to add the corresponding annotations for cert-manager + ## + certManager: false + ## @param ingress.pathType Ingress path type + ## + pathType: ImplementationSpecific + ## @param ingress.apiVersion Override API Version (automatically detected if not set) + ## + apiVersion: + ## @param ingress.hostname Default host for the ingress resource + ## + hostname: phpbb.local + ## @param ingress.path The Path to phpBB. You may need to set this to '/*' in order to use this with ALB ingress controllers. + ## + path: / + ## @param ingress.annotations Ingress annotations + ## For a full list of possible ingress annotations, please see + ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/annotations.md + ## + ## If certManager is set to true, annotation kubernetes.io/tls-acme: "true" will automatically be set + ## + annotations: {} + ## @param ingress.tls Enable TLS configuration for the hostname defined at ingress.hostname parameter + ## TLS certificates will be retrieved from a TLS secret with name: {{- printf "%s-tls" .Values.ingress.hostname }} + ## You can use the ingress.secrets parameter to create this TLS secret or relay on cert-manager to create it + ## + tls: false + ## @param ingress.extraHosts The list of additional hostnames to be covered with this ingress record. + ## Most likely the hostname above will be enough, but in the event more hosts are needed, this is an array + ## extraHosts: + ## - name: phpbb.local + ## path: / + ## + extraHosts: [] + ## @param ingress.extraPaths Any additional arbitrary paths that may need to be added to the ingress under the main host. + ## For example: The ALB ingress controller requires a special rule for handling SSL redirection. + ## extraPaths: + ## - path: /* + ## backend: + ## serviceName: ssl-redirect + ## servicePort: use-annotation + ## + extraPaths: [] + ## @param ingress.extraTls The tls configuration for additional hostnames to be covered with this ingress record. + ## see: https://kubernetes.io/docs/concepts/services-networking/ingress/#tls + ## extraTls: + ## - hosts: + ## - phpbb.local + ## secretName: phpbb.local-tls + ## + extraTls: [] + ## @param ingress.secrets If you're providing your own certificates, please use this to add the certificates as secrets + ## key and certificate should start with -----BEGIN CERTIFICATE----- or + ## -----BEGIN RSA PRIVATE KEY----- + ## + ## name should line up with a tlsSecret set further up + ## If you're using cert-manager, this is unneeded, as it will create the secret for you if it is not set + ## + ## It is also possible to create and manage the certificates outside of this helm chart + ## Please see README.md for more information + ## e.g: + ## - name: phpbb.local-tls + ## key: + ## certificate: + ## + secrets: [] + +## @section Database parameters + +## MariaDB chart configuration +## https://github.com/bitnami/charts/blob/master/bitnami/mariadb/values.yaml +## +mariadb: + ## @param mariadb.enabled Whether to deploy a mariadb server to satisfy the applications database requirements + ## To use an external database set this to false and configure the externalDatabase parameters + ## + enabled: true + ## @param mariadb.architecture MariaDB architecture. Allowed values: `standalone` or `replication` + ## + architecture: standalone + ## MariaDB Authentication parameters + ## + auth: + ## @param mariadb.auth.rootPassword Password for the MariaDB `root` user + ## ref: https://github.com/bitnami/bitnami-docker-mariadb#setting-the-root-password-on-first-run + ## + rootPassword: "" + ## @param mariadb.auth.database Database name to create + ## ref: https://github.com/bitnami/bitnami-docker-mariadb/blob/master/README.md#creating-a-database-on-first-run + ## + database: bitnami_phpbb + ## @param mariadb.auth.username Database user to create + ## ref: https://github.com/bitnami/bitnami-docker-mariadb/blob/master/README.md#creating-a-database-user-on-first-run + ## + username: bn_phpbb + ## @param mariadb.auth.password Password for the database + ## + password: "" + primary: + ## Enable persistence using Persistent Volume Claims + ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ + ## + persistence: + ## @param mariadb.primary.persistence.enabled Enable database persistence using PVC + ## + enabled: true + ## @param mariadb.primary.persistence.storageClass MariaDB primary persistent volume storage Class + ## If defined, storageClassName: + ## If set to "-", storageClassName: "", which disables dynamic provisioning + ## If undefined (the default) or set to null, no storageClassName spec is + ## set, choosing the default provisioner. (gp2 on AWS, standard on + ## GKE, AWS & OpenStack) + ## + storageClass: + ## @param mariadb.primary.persistence.accessModes PVC Access Modes for phpBB volume + ## + accessModes: + - ReadWriteOnce + ## @param mariadb.primary.persistence.size Database Persistent Volume Size + ## + size: 8Gi + ## @param mariadb.primary.persistence.hostPath Host mount path for MariaDB volume + ## + hostPath: + ## @param mariadb.primary.persistence.existingClaim Name of an existing `PersistentVolumeClaim` for MariaDB primary replicas + ## + existingClaim: +## External database configuration +## +externalDatabase: + ## @param externalDatabase.existingSecret Use existing secret (ignores previous password) + ## Must contain key `mariadb-password` + ## NOTE: When it's set, the `externalDatabase.password` parameter is ignored + existingSecret: + ## @param externalDatabase.host Host of the existing database + ## + host: "" + ## @param externalDatabase.port Port of the existing database + ## + port: 3306 + ## @param externalDatabase.user Existing username in the external db + ## + user: bn_phpbb + ## @param externalDatabase.password Password for the above username + ## + password: "" + ## @param externalDatabase.database Name of the existing database + ## + database: bitnami_phpbb + +## @section Metrics parameters + ## Prometheus Exporter / Metrics ## metrics: + ## @param metrics.enabled Start a side-car prometheus exporter + ## enabled: false + ## @param metrics.image.registry Apache exporter image registry + ## @param metrics.image.repository Apache exporter image repository + ## @param metrics.image.tag Apache exporter image tag (immutable tags are recommended) + ## @param metrics.image.pullPolicy Image pull policy + ## @param metrics.image.pullSecrets Specify docker-registry secret names as an array + ## image: registry: docker.io repository: bitnami/apache-exporter @@ -535,19 +570,17 @@ metrics: ## Optionally specify an array of imagePullSecrets. ## Secrets must be manually created in the namespace. ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ + ## Example: + ## pullSecrets: + ## - myRegistryKeySecretName ## - pullSecrets: - # - myRegistryKeySecretName - ## Metrics exporter resource requests and limits + pullSecrets: [] + ## @param metrics.resources Metrics exporter resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ ## - # resources: {} - ## Metrics exporter pod Annotation and Labels + resources: {} + ## @param metrics.podAnnotations [object] Additional annotations for Metrics exporter pod ## podAnnotations: prometheus.io/scrape: "true" prometheus.io/port: "9117" - -## Array with extra yaml to deploy with the chart. Evaluated as a template -## -extraDeploy: []