Headless CMS and Content Managment Hub
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

427 lines
14 KiB

## @section Global parameters
## @param nameOverride Override the name of the application.
nameOverride: "squidex"
## @param labels [object] Labels to add to the deployment.
labels:
# custom: "custom"
service:
## @param service.type Kubernetes Service type.
##
type: ClusterIP
## @param service.port Kubernetes Service port.
##
port: 8080
deployment:
## @param deployment.replicaCount Number of replicas (ignored if autoscaling enabled).
replicaCount: 1
## @param deployment.revisionHistoryLimit [default: 2] Number of revision history.
revisionHistoryLimit: 2
## @param deployment.serviceAccountName Name of the service account to use.
serviceAccountName: ""
## @param deployment.strategy.type Deployment strategy type.
strategy:
type: RollingUpdate
## @param deployment.strategy.rollingUpdate.maxSurge Maximum number of pods that can be created above the desired amount.
rollingUpdate:
maxSurge: 1
## @param deployment.strategy.rollingUpdate.maxUnavailable Maximum number of unavailable pods during update.
maxUnavailable: 0
## @param deployment.restartPolicy Pod restart policy.
restartPolicy: Always
## @param deployment.annotations Annotations to add to the deployment.
annotations:
# vault.hashicorp.com/agent-pre-populate-only: "true"
# vault.hashicorp.com/agent-limits-cpu: 50m
# vault.hashicorp.com/agent-limits-mem: 64Mi
# vault.hashicorp.com/agent-requests-cpu: 10m
# vault.hashicorp.com/agent-requests-mem: 16Mi
## @param deployment.command Command to run in the container.
command:
# - sh
# - -c
## @param deployment.args Arguments to pass to the container.
args:
# - 'dotnet Squidex.dll'
## @param networkPolicy.enabled Enable network policies.
networkPolicy:
enabled: false
## @skip networkPolicy.ingressRules
ingressRules:
- from:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: ingress-nginx
- podSelector:
matchLabels:
app.kubernetes.io/instance: ingress-nginx
ports:
- port: 8080
protocol: TCP
## @skip networkPolicy.egressRules
egressRules:
- to:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: kube-system
podSelector:
matchLabels:
k8s-app: kube-dns
ports:
- port: 53
protocol: UDP
- port: 53
protocol: TCP
selectors:
## @skip selectors.component
##
component: squidex
## @skip selectors.partOf
##
partOf: ""
## @skip selectors.version
##
version: ""
image:
## @param image.repository Squidex image registry.
##
repository: squidex/squidex
## @param image.pullPolicy Squidex image pull policy.
##
pullPolicy: IfNotPresent
## @param resources [object] Resource requests and limits.
resources:
limits:
memory: "1Gi"
requests:
cpu: "200m"
memory: "512Mi"
## @skip nodeSelector
nodeSelector: { }
## @skip tolerations
tolerations: [ ]
## @skip affinity
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
podAffinityTerm:
labelSelector:
matchLabels:
app.kubernetes.io/instance: squidex
app.kubernetes.io/component: squidex
topologyKey: kubernetes.io/hostname
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/arch
operator: In
values:
- amd64
- arm64
## @param topologySpreadConstraints [array] Topology spread constraints for pod scheduling.
topologySpreadConstraints:
# - maxSkew: 1
# topologyKey: kubernetes.io/hostname
# whenUnsatisfiable: DoNotSchedule
# labelSelector:
# matchLabels:
# app.kubernetes.io/instance: squidex
# app.kubernetes.io/component: squidex
## @param priorityClassName [nullable] Priority class name for the pod.
priorityClassName:
## @skip clusterSuffix
clusterSuffix: cluster.local
## @param runAsNonRoot Run container as non-root user.
runAsNonRoot: true
## @skip podSecurityContext [object]
## You can modify the security context userepd to run PODS in the cluster
## For information regarding which settings are required per policy see: https://kubernetes.io/docs/concepts/security/pod-security-standards/
## An example that follows the Restricted profile is described below:
#
podSecurityContext:
seccompProfile:
type: RuntimeDefault
runAsNonRoot: true
runAsUser: 10000
runAsGroup: 10000
fsGroup: 10000
## @skip containerSecurityContext [object]
## You can modify the security context used to run CONTAINERS in the cluster
## For information regarding which settings are required per policy see: https://kubernetes.io/docs/concepts/security/pod-security-standards/
## readOnlyRootFilesystem: true not supported becasue of backup and restore process
## An example that follows the Restricted profile is described below:
#
containerSecurityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
add:
- NET_BIND_SERVICE
## @skip auth
auth:
##
ingress:
## @param ingress.enabled True to deploy an ingress.
## If true, Squidex Ingress will be created.
##
enabled: false
## @param ingress.ingressClassName The ingress class.
ingressClassName: nginx
## @param ingress.annotations [object] Ingress annotations.
annotations:
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
nginx.ingress.kubernetes.io/proxy-body-size: 50m
nginx.ingress.kubernetes.io/proxy-buffer-size: 128k
nginx.ingress.kubernetes.io/proxy-buffers: 4 256k
nginx.ingress.kubernetes.io/proxy-busy-buffers-size: 256k
nginx.ingress.kubernetes.io/ssl-redirect: 'true'
## @param ingress.hostName The host name for the ingress.
##
hostName: squidex.local
## @skip ingress.tls
tls: [ ]
# - secretName: chart-example-tls
# hosts:
# - chart-example.local
## @section Squidex parameters
env:
# Define the type of the event store
## @param env.EVENTSTORE__MONGODB__DATABASE The name of the database for events.
EVENTSTORE__MONGODB__DATABASE: "Squidex"
## @skip env.EVENTSTORE__TYPE
## Define the type of the event store
##
EVENTSTORE__TYPE: MongoDb
# CREATE LOCAL ADMIN USER
## @param env.IDENTITY__ADMINEMAIL The initial admin email address.
##
IDENTITY__ADMINEMAIL: ""
## @param env.IDENTITY__ADMINPASSWORD The initial admin email address.
##
IDENTITY__ADMINPASSWORD: ""
## @param env.IDENTITY__ADMINRECREATE Recreate the admin if it does not exist or the password does not match.
##
IDENTITY__ADMINRECREATE: false
## @param env.IDENTITY__ALLOWPASSWORDAUTH Enable password auth. Set this to false if you want to disable local login, leaving only 3rd party login options.
##
IDENTITY__ALLOWPASSWORDAUTH: "true"
## @param env.IDENTITY__LOCKAUTOMATICALLY Lock new users automatically, the administrator must unlock them.
##
IDENTITY__LOCKAUTOMATICALLY: "false"
## @param env.IDENTITY__PRIVACYURL The url to you privacy statements.
##
IDENTITY__PRIVACYURL: "https://squidex.io/privacy"
## @param env.IDENTITY__SHOWPII Set to true to show PII (Personally Identifiable Information) in the logs.
##
IDENTITY__SHOWPII: true #
## @param env.IDENTITY__GOOGLECLIENT Google client ID (keep empty to disable Google authentication).
##
IDENTITY__GOOGLECLIENT: null
## @param env.IDENTITY__GOOGLESECRET Google client secret (keep empty to disable Google authentication).
##
IDENTITY__GOOGLESECRET: null
## @param env.IDENTITY__GITHUBCLIENT Github client ID (keep empty to disable Github authentication).
##
IDENTITY__GITHUBCLIENT: null
## @param env.IDENTITY__GITHUBSECRET Github client secret (keep empty to disable Github authentication).
##
IDENTITY__GITHUBSECRET: null
## @param env.IDENTITY__MICROSOFTCLIENT Microsoft client ID (keep empty to disable Microsoft authentication).
##
IDENTITY__MICROSOFTCLIENT: null
## @param env.IDENTITY__MICROSOFTSECRET Microsoft client secret (keep empty to disable Microsoft authentication).
##
IDENTITY__MICROSOFTSECRET: null
## @param env.IDENTITY__MICROSOFTTENANT Optional tenant name for Azure AD.
##
IDENTITY__MICROSOFTTENANT: null
# Settings for your custom oidc server
## @param env.IDENTITY__OIDCAUTHORITY The URL to the custom OIDC authority.
##
IDENTITY__OIDCAUTHORITY: null
## @param env.IDENTITY__OIDCCLIENT The client ID to the authority.
##
IDENTITY__OIDCCLIENT: null
## @param env.IDENTITY__OIDCSECRET The client secret to the authority.
##
IDENTITY__OIDCSECRET: null
## @param env.IDENTITY__OIDCGETCLAIMSFROMUSERINFOENDPOINT True to get claims from the user endpoint.
##
IDENTITY__OIDCGETCLAIMSFROMUSERINFOENDPOINT: false
## @param env.IDENTITY__OIDCMETADATAADDRESS A custom address for OIDC metadata.
##
IDENTITY__OIDCMETADATAADDRESS: null
## @param env.IDENTITY__OIDCNAME The name of the OIDC integration or server. Used in the UI.
##
IDENTITY__OIDCNAME: null
## @param env.IDENTITY__OIDCRESPONSETYPE The type of the response. id_token or code.
##
IDENTITY__OIDCRESPONSETYPE: null
## @param env.IDENTITY__OIDCSCOPES The scopes.
##
IDENTITY__OIDCSCOPES: [] # ["email"]
## @param env.IDENTITY__OIDCSINGOUTREDIRECTURL The redirect URL for the sign out.
##
IDENTITY__OIDCSINGOUTREDIRECTURL: null
## @skip env.LETSENCRYPT_HOST
LETSENCRYPT_HOST: null
## @skip env.LETSENCRYPT_EMAIL
LETSENCRYPT_EMAIL: null
## @param env.LOGGING__APPLICATIONINSIGHTS__ENABLED Enable monitoring via application insights.
##
LOGGING__APPLICATIONINSIGHTS__ENABLED: false
## @param env.LOGGING__APPLICATIONINSIGHTS__CONNECTIONSTRING The connection string to application insights.
##
LOGGING__APPLICATIONINSIGHTS__CONNECTIONSTRING: null # "instrumentationkey=keyvalue"
## @param env.LOGGING__COLORS Use colors in the console output.
##
LOGGING__COLORS: false
## @param env.LOGGING__HUMAN Setting the flag to true, enables well formatteds json logs.
##
LOGGING__HUMAN: false
## @param env.LOGGING__LEVEL Trace, Debug, Information, Warning, Error, Fatal.
##
LOGGING__LEVEL: Warning
## @param env.LOGGING__LOGREQUESTS Set to false to disable logging of http requests.
##
LOGGING__LOGREQUESTS: true
## @param env.LOGGING__OTLP__ENABLED True, to enable OpenTelemetry Protocol integration.
##
LOGGING__OTLP__ENABLED: false
## @param env.LOGGING__OLTP__ENDPOINT The endpoint to the agent.
##
LOGGING__OLTP__ENDPOINT: null
## @param env.LOGGING__STACKDRIVER__ENABLED True, to enable stackdriver integration.
##
LOGGING__STACKDRIVER__ENABLED: false
## @param env.LOGGING__STOREENABLED False to disable the log store for HTTP requests.
##
LOGGING__STOREENABLED: true
## @param env.LOGGING__STORERETENTIONINDAYS The number of days request log items will be stored.
##
LOGGING__STORERETENTIONINDAYS: 90
## @skip env.STORE__TYPE
STORE__TYPE: MongoDb
## @param env.STORE__MONGODB__DATABASE The name of the main database.
##
STORE__MONGODB__DATABASE: "Squidex"
## @param env.STORE__MONGODB__CONTENTDATABASE The name of the database for content items.
##
STORE__MONGODB__CONTENTDATABASE: "SquidexContent"
## @skip env.ASSETSTORE__TYPE
ASSETSTORE__TYPE: MongoDb
## @param env.URLS__BASEURL Set the base url of your application, to generate correct urls in background process.
##
URLS__BASEURL: https://squidex.local/ #
## @param env.URLS__ENFORCEHTTPS Set it to true to redirect the user from http to https permanently.
##
URLS__ENFORCEHTTPS: false
## @param env.ASPNETCORE_URLS An override to ensure that kestrel starts on a non-privileged port.
##
ASPNETCORE_URLS: http://+:8080
# Bind secrets and configmaps directly into env as object name strings. Useful for managing sensitive data such as connection strings without exposing them to helm values
extraSecrets: []
extraConfigMaps: []
extraVolumes: []
extraVolumeMounts: []
## @param autoscaling.enabled Enable autoscaling for the deployment.
autoscaling:
enabled: false
## @param autoscaling.maxReplicas Maximum number of replicas.
maxReplicas: 6
## @param autoscaling.minReplicas Minimum number of replicas.
minReplicas: 3
## @param autoscaling.targetCPUUtilizationPercentage Target CPU utilization percentage.
targetCPUUtilizationPercentage: 85
## @param podDisruptionBudget.minAvailable Minimum number of available pods.
podDisruptionBudget:
minAvailable: 1
## @param podDisruptionBudget.unhealthyPodEvictionPolicy Policy for evicting unhealthy pods.
unhealthyPodEvictionPolicy: AlwaysAllow
## @section MongoDB parameters
mongodb:
## @param mongodb.architecture MongoDB(®) architecture (standalone or replicaset).
##
architecture: replicaset
## @param mongodb.enabled Uses the custom mongoDB instance.
##
enabled: true
## @param mongodb.replicaCount The number of replicas.
##
replicaCount: 3
auth:
## @param mongodb.auth.enabled Enable authentication for MongoDB.
##
enabled: false
## @param mongodb.auth.rootUsername The MongoDB root user name.
##
rootUsername: ""
## @param mongodb.auth.rootPassword The MongoDB root password.
##
rootPassword: ""
## @param mongodb.auth.existingSecret The name of the existing secret to use for authentication.
##
existingSecret: ""
persistence:
## @param mongodb.persistence.enabled If true, persistent volume claims are created.
##
enabled: true
## @param mongodb.persistence.storageClass The storage class for the persistent volume claim.
##
storageClass: ""
## @param mongodb.persistence.accessModes Persistent volume access modes.
##
accessModes:
- ReadWriteOnce
## @param mongodb.persistence.size Persistent volume size.
##
size: 10Gi
## @skip mongodb.arbiter
arbiter:
## @skip mongodb.arbiter.enabled
enabled: false
## @skip mongodb.nodeSelector
nodeSelector: {}