Skip to main content

Values

This document describes the configurable values for the Craft Helm chart.

Configuration Options

The Craft chart supports various configuration options through values. You can customize the deployment by creating a values.yaml file or passing values directly via the --set flag.

Example

To install with custom values:

helm install <release-name> welance-charts/craft -f values.yaml

Or using --set:

helm install <release-name> welance-charts/craft --set key=value

Default Values

The following is the default values.yaml file for the Craft Helm chart:

# Default values for helm-chart.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

replicaCount: 1

db:
hostname: welance-noprod-serverlessv2-tf.cluster-ccr9p5q6kxw9.eu-central-1.rds.amazonaws.com
port: 3306
database: p217-01-develop
username: p217-01-develop
password: "<your-database-password>"

dump:
image: registry.gitlab.com/welance/platform/pipelines/container/images/mysql-backup:0.0.3
enabled: false
schedule: "0 2 * * *"
s3:
bucket: s3://welance-backup-storage/
accessKeyId: "<your-s3-access-key-id>"
secretAccessKey: "<your-s3-secret-access-key>"
region: de
endpoint: https://s3.de.io.cloud.ovh.net

tls: []


externalService:
enabled: true # default is true

##TO BE OVERRIDDEN
storage:
gid: 1000
uid: 1000
fid: fs-0e7fcf2d3c61da878

image:
repository: registry.gitlab.com/welance/p222-choco/p222-01-choco.com
pullPolicy: IfNotPresent
tag: "latest"
imagePullSecrets: regcred
commit:
sha: ""
url: ""
branch: ""

configmap:
enabled: true

# Default value for config file content
envFileContent: ""

basicAuthSecret:
enabled: true
data:
auth: "<your-basic-auth-secret>"

registryAuthSecret:
name: regcred
data:
auth: "<your-registry-auth-secret>"

nfs:
enabled: false
storageclassName: ""

deployment:
nodeSelector: {}
securityContext:
enabled: true
runAsUser: 33
runAsGroup: 33
fsGroup: 33
annotations: {}
env:
PHP_UPLOAD_MAX_FILESIZE: "300M"
PHP_POST_MAX_SIZE: "300M"
port:
name: http
containerPort: 8080
protocol: TCP
volumes:
- name: assets
mountPath: /app/web/assets
storage:
path: "/app/web/assets"
liveness:
enabled: false
readiness:
enabled: false
startup:
enabled: false

service:
name: service-web
type: ClusterIP
port: 8080

ingresses:
redirect: []
live:
enabled: false
sites: []
web:
name: ingress-web
enabled: true
ingressClassName: "welance-develop"
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: 300m # type of authentication
nginx.ingress.kubernetes.io/auth-type: basic
nginx.ingress.kubernetes.io/auth-secret: ingress-secret # name of the secret that contains the user/password definitions
nginx.ingress.kubernetes.io/affinity: cookie
nginx.ingress.kubernetes.io/affinity-mode: persistent
nginx.ingress.kubernetes.io/session-cookie-hash: sha1
nginx.ingress.kubernetes.io/session-cookie-name: welance-cookie

resources: {}
# limits:
# cpu: 50m
# memory: 400Mi
# requests:
# cpu: 25m
# memory: 265Mi

redis:
image:
repository: "redis"
tag: "5-alpine"
resources:
limits:
cpu: 25m
memory: 265Mi
requests:
cpu: 25m
memory: 265Mi

runner: {}
# resources:
# limits:
# cpu: 25m
# memory: 265Mi
# requests:
# cpu: 25m
# memory: 265Mi

quota:
enabled: false
hard:
requests.cpu: "1"
requests.memory: 3200Mi
limits.cpu: "2"
limits.memory: 5Gi

autoscaling:
enabled: false
minReplicas: 1
maxReplicas: 100
targetCPUUtilizationPercentage: 80
targetMemoryUtilizationPercentage: 80

Key Configuration Sections

Database Configuration (db)

  • Database connection settings including hostname, port, database name, username, and password

Image Configuration (image)

  • Container image repository, tag, pull policy, and image pull secrets
  • Git commit information (SHA, URL, branch)

Deployment Configuration (deployment)

  • Security context settings
  • Environment variables (PHP upload limits)
  • Container port configuration
  • Volume mounts for assets
  • Health check probes (liveness, readiness, startup)

Service & Ingress (service, ingresses)

  • Service type and port configuration
  • Ingress settings with authentication and session affinity

Resources & Scaling

  • Resource limits and requests
  • Redis configuration
  • Resource quotas
  • Horizontal Pod Autoscaling (HPA) settings

Storage & Backup

  • NFS storage configuration
  • Database dump/backup settings with S3 integration