cleanup values, add docs, regenerate parameters and values schema
Signed-off-by: Pascal Sthamer <pascal+github@sthamer.xyz>
This commit is contained in:
@@ -131,14 +131,30 @@ If you want full control, you can deploy apps using helm. This has the following
|
||||
- granular control per app and version (e.g. have more replicas and resources for frequently used apps)
|
||||
- avoid problems with on-demand started apps (see https://github.com/Shuffle/Shuffle/issues/1739)
|
||||
|
||||
To deploy apps using helm, use the `app.deployViaHelm` value:
|
||||
To deploy apps using helm, use the `app.deployViaHelm` value. Here is an example, which deploys the shuffle-tools app and 2 versions of the opensearch app:
|
||||
```yaml
|
||||
app:
|
||||
replicas: 1 # default to 1 replica per app
|
||||
deployViaHelm:
|
||||
- app: shuffle-tools
|
||||
tools:
|
||||
app: shuffle-tools
|
||||
version: 1.2.0
|
||||
TODO
|
||||
opensearchOld:
|
||||
app: opensearch
|
||||
version: 1.0.0 # Also deploy OpenSearch version 1.0.0, because some workflows still use it.
|
||||
opensearch:
|
||||
app: opensearch
|
||||
version: 1.1.0
|
||||
replicas: 3 # use 3 replicas for OpenSearch app
|
||||
resources: # Custom resources for OpenSearch app
|
||||
limits:
|
||||
memory: 512Mi
|
||||
```
|
||||
The key of an app in the `deployViaHelm` map does not matter. We are not using an array here, to allow overriding values in stage-specific value files or using the command line, e.g.
|
||||
`helm upgrade ... --set app.deployViaHelm.tools.replicas=3`.
|
||||
|
||||
See the app Paramters section below for a complete list of helm values, that can be used to customize app deployments.
|
||||
Take a look at the `app.deployViaHelm.MY_APP.*` parameters for a complete list of helm values that can be set on every app.
|
||||
|
||||
It is possible to use a hybrid approach - deploy some apps using helm, while still allowing Worker to create additional apps on-demand.
|
||||
|
||||
@@ -184,12 +200,13 @@ The password should be provided with the `SHUFFLE_OPENSEARCH_PASSWORD` env varia
|
||||
|
||||
### Shared Shuffle Parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| --------------------- | ------------------------------------------------------------- | --------------- |
|
||||
| `shuffle.baseUrl` | The external base URL under which Shuffle is reachable. | `""` |
|
||||
| `shuffle.org` | Default shuffle organization | `Shuffle` |
|
||||
| `shuffle.appRegistry` | The registry from / to which shuffle apps are pulled / pushed | `""` |
|
||||
| `shuffle.timezone` | The timezone used by Shuffle | `Europe/Berlin` |
|
||||
| Name | Description | Value |
|
||||
| -------------------------- | -------------------------------------------------------------------------------------------------------------------------- | --------------- |
|
||||
| `shuffle.baseUrl` | The external base URL under which Shuffle is reachable. | `""` |
|
||||
| `shuffle.org` | Default shuffle organization | `Shuffle` |
|
||||
| `shuffle.appRegistry` | The registry from / to which shuffle apps are pulled / pushed | `docker.io` |
|
||||
| `shuffle.appBaseImageName` | The base image used for shuffle apps. The final image for an app is <appRegistr>/<appBaseImageName>/<appName>:<appVersion> | `frikky` |
|
||||
| `shuffle.timezone` | The timezone used by Shuffle | `Europe/Berlin` |
|
||||
|
||||
### backend Parameters
|
||||
|
||||
@@ -418,7 +435,7 @@ The password should be provided with the `SHUFFLE_OPENSEARCH_PASSWORD` env varia
|
||||
| ----------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- |
|
||||
| `orborus.image.registry` | orborus image registry | `ghcr.io` |
|
||||
| `orborus.image.repository` | orborus image repository | `shuffle/shuffle-orborus` |
|
||||
| `orborus.image.tag` | orborus image tag (immutable tags are recommended, defaults to appVersion) | `""` |
|
||||
| `orborus.image.tag` | orborus image tag (immutable tags are recommended, defaults to appVersion) | `nightly` |
|
||||
| `orborus.image.digest` | orborus image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag image tag (immutable tags are recommended) | `""` |
|
||||
| `orborus.image.pullPolicy` | orborus image pull policy | `IfNotPresent` |
|
||||
| `orborus.image.pullSecrets` | orborus image pull secrets | `[]` |
|
||||
@@ -515,15 +532,43 @@ The password should be provided with the `SHUFFLE_OPENSEARCH_PASSWORD` env varia
|
||||
| `orborus.networkPolicy.allowExternalEgress` | Allow the pod to access any range of port and all destinations. | `true` |
|
||||
| `orborus.networkPolicy.extraIngress` | Add extra ingress rules to the NetworkPolicy | `[]` |
|
||||
| `orborus.networkPolicy.extraEgress` | Add extra ingress rules to the NetworkPolicy (ignored if allowExternalEgress=true) | `[]` |
|
||||
| `orborus.executionConcurrency` | The maximum amount of concurrent workflow executions per worker | `25` |
|
||||
| `orborus.manageWorkerDeployments` | Whether workers are deployed and managed by orborus. When disabled, every worker is expected to be already deployed (see worker.enableHelmDeployment). | `true` |
|
||||
|
||||
### worker Parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------ |
|
||||
| `worker.enableHelmDeployment` | Deploy worker via helm. By default, workers are deployed by Orborus. | `false` |
|
||||
| `worker.image.registry` | worker image registry | `ghcr.io` |
|
||||
| `worker.image.repository` | worker image repository | `shuffle/shuffle-worker` |
|
||||
| `worker.image.tag` | worker image tag (immutable tags are recommended, defaults to appVersion) | `""` |
|
||||
| `worker.image.digest` | worker image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag image tag (immutable tags are recommended) | `""` |
|
||||
| `worker.image.pullPolicy` | worker image pull policy. Only effective with worker.enableHelmDeployment. | `IfNotPresent` |
|
||||
| `worker.image.pullSecrets` | worker image pull secrets. Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.replicaCount` | Number of worker replicas to deploy. Only effective with worker.enableHelmDeployment. | `1` |
|
||||
| `worker.extraContainerPorts` | Optionally specify extra list of additional ports for worker containers. Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.livenessProbe.enabled` | Enable livenessProbe on worker containers. Only effective with worker.enableHelmDeployment. | `false` |
|
||||
| `worker.livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `0` |
|
||||
| `worker.livenessProbe.periodSeconds` | Period seconds for livenessProbe | `15` |
|
||||
| `worker.livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `1` |
|
||||
| `worker.livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `4` |
|
||||
| `worker.livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` |
|
||||
| `worker.readinessProbe.enabled` | Enable readinessProbe on worker containers. Only effective with worker.enableHelmDeployment. | `false` |
|
||||
| `worker.readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `0` |
|
||||
| `worker.readinessProbe.periodSeconds` | Period seconds for readinessProbe | `5` |
|
||||
| `worker.readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `1` |
|
||||
| `worker.readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `3` |
|
||||
| `worker.readinessProbe.successThreshold` | Success threshold for readinessProbe | `1` |
|
||||
| `worker.startupProbe.enabled` | Enable startupProbe on worker containers. Only effective with worker.enableHelmDeployment. | `false` |
|
||||
| `worker.startupProbe.initialDelaySeconds` | Initial delay seconds for startupProbe | `0` |
|
||||
| `worker.startupProbe.periodSeconds` | Period seconds for startupProbe | `1` |
|
||||
| `worker.startupProbe.timeoutSeconds` | Timeout seconds for startupProbe | `1` |
|
||||
| `worker.startupProbe.failureThreshold` | Failure threshold for startupProbe | `60` |
|
||||
| `worker.startupProbe.successThreshold` | Success threshold for startupProbe | `1` |
|
||||
| `worker.customLivenessProbe` | Custom livenessProbe that overrides the default one. Only effective with worker.enableHelmDeployment. | `{}` |
|
||||
| `worker.customReadinessProbe` | Custom readinessProbe that overrides the default one. Only effective with worker.enableHelmDeployment. | `{}` |
|
||||
| `worker.customStartupProbe` | Custom startupProbe that overrides the default one. Only effective with worker.enableHelmDeployment. | `{}` |
|
||||
| `worker.resourcesPreset` | Set worker container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if worker.resources is set (worker.resources is recommended for production). | `nano` |
|
||||
| `worker.resources` | Set worker container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` |
|
||||
| `worker.podSecurityContext.enabled` | Enable worker pods' Security Context | `true` |
|
||||
@@ -541,6 +586,49 @@ The password should be provided with the `SHUFFLE_OPENSEARCH_PASSWORD` env varia
|
||||
| `worker.containerSecurityContext.allowPrivilegeEscalation` | Set allowPrivilegeEscalation in worker container' Security Context | `false` |
|
||||
| `worker.containerSecurityContext.capabilities.drop` | List of capabilities to be dropped in worker container | `["ALL"]` |
|
||||
| `worker.containerSecurityContext.seccompProfile.type` | Set seccomp profile in worker container | `RuntimeDefault` |
|
||||
| `worker.command` | Override default worker container command (useful when using custom images). Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.args` | Override default worker container args (useful when using custom images). Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.automountServiceAccountToken` | Mount Service Account token in worker pods. Only effective with worker.enableHelmDeployment. | `true` |
|
||||
| `worker.hostAliases` | worker pods host aliases. Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.deploymentAnnotations` | Annotations for worker deployment. Only effective with worker.enableHelmDeployment. | `{}` |
|
||||
| `worker.podLabels` | Extra labels for worker pods. Only effective with worker.enableHelmDeployment. | `{}` |
|
||||
| `worker.podAnnotations` | Annotations for worker pods. Only effective with worker.enableHelmDeployment. | `{}` |
|
||||
| `worker.podAffinityPreset` | Pod affinity preset. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`. Only effective with worker.enableHelmDeployment. | `""` |
|
||||
| `worker.podAntiAffinityPreset` | Pod anti-affinity preset. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`. Only effective with worker.enableHelmDeployment. | `soft` |
|
||||
| `worker.nodeAffinityPreset.type` | Node affinity preset type. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`. Only effective with worker.enableHelmDeployment. | `""` |
|
||||
| `worker.nodeAffinityPreset.key` | Node label key to match. Ignored if `worker.affinity` is set | `""` |
|
||||
| `worker.nodeAffinityPreset.values` | Node label values to match. Ignored if `worker.affinity` is set | `[]` |
|
||||
| `worker.affinity` | Affinity for worker pods assignment. Only effective with worker.enableHelmDeployment. | `{}` |
|
||||
| `worker.nodeSelector` | Node labels for worker pods assignment. Only effective with worker.enableHelmDeployment. | `{}` |
|
||||
| `worker.tolerations` | Tolerations for worker pods assignment. Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.updateStrategy.type` | worker deployment strategy type. Only effective with worker.enableHelmDeployment. | `RollingUpdate` |
|
||||
| `worker.priorityClassName` | worker pods' priorityClassName. Only effective with worker.enableHelmDeployment. | `""` |
|
||||
| `worker.topologySpreadConstraints` | Topology Spread Constraints for worker pod assignment spread across your cluster among failure-domains. Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.schedulerName` | Name of the k8s scheduler (other than default) for worker pods. Only effective with worker.enableHelmDeployment. | `""` |
|
||||
| `worker.terminationGracePeriodSeconds` | Seconds worker pods need to terminate gracefully. Only effective with worker.enableHelmDeployment. | `""` |
|
||||
| `worker.lifecycleHooks` | for worker containers to automate configuration before or after startup. Only effective with worker.enableHelmDeployment. | `{}` |
|
||||
| `worker.extraEnvVars` | Array with extra environment variables to add to worker containers. Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.extraEnvVarsCM` | Name of existing ConfigMap containing extra env vars for worker containers. Only effective with worker.enableHelmDeployment. | `""` |
|
||||
| `worker.extraEnvVarsSecret` | Name of existing Secret containing extra env vars for worker containers. Only effective with worker.enableHelmDeployment. | `""` |
|
||||
| `worker.extraVolumes` | Optionally specify extra list of additional volumes for the worker pods. Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the worker containers. Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.sidecars` | Add additional sidecar containers to the worker pods. Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.initContainers` | Add additional init containers to the worker pods. Only effective with worker.enableHelmDeployment. | `[]` |
|
||||
| `worker.pdb.create` | Enable/disable a Pod Disruption Budget creation. Only effective with worker.enableHelmDeployment. | `true` |
|
||||
| `worker.pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` |
|
||||
| `worker.pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `worker.pdb.minAvailable` and `worker.pdb.maxUnavailable` are empty. | `""` |
|
||||
| `worker.autoscaling.vpa.enabled` | Enable VPA for worker pods. Only effective with worker.enableHelmDeployment. | `false` |
|
||||
| `worker.autoscaling.vpa.annotations` | Annotations for VPA resource | `{}` |
|
||||
| `worker.autoscaling.vpa.controlledResources` | VPA List of resources that the vertical pod autoscaler can control. Defaults to cpu and memory | `[]` |
|
||||
| `worker.autoscaling.vpa.maxAllowed` | VPA Max allowed resources for the pod | `{}` |
|
||||
| `worker.autoscaling.vpa.minAllowed` | VPA Min allowed resources for the pod | `{}` |
|
||||
| `worker.autoscaling.vpa.updatePolicy.updateMode` | Autoscaling update policy | `Auto` |
|
||||
| `worker.autoscaling.hpa.enabled` | Enable HPA for worker pods. Only effective with worker.enableHelmDeployment. | `false` |
|
||||
| `worker.autoscaling.hpa.minReplicas` | Minimum number of replicas | `""` |
|
||||
| `worker.autoscaling.hpa.maxReplicas` | Maximum number of replicas | `""` |
|
||||
| `worker.autoscaling.hpa.targetCPU` | Target CPU utilization percentage | `""` |
|
||||
| `worker.autoscaling.hpa.targetMemory` | Target Memory utilization percentage | `""` |
|
||||
| `worker.service.labels` | Extra labels for worker service. Only effective with worker.enableHelmDeployment. | `{}` |
|
||||
| `worker.serviceAccount.create` | Specifies whether a ServiceAccount should be created | `true` |
|
||||
| `worker.serviceAccount.name` | The name of the ServiceAccount to use. | `""` |
|
||||
| `worker.serviceAccount.annotations` | Additional Service Account annotations (evaluated as a template) | `{}` |
|
||||
@@ -552,6 +640,7 @@ The password should be provided with the `SHUFFLE_OPENSEARCH_PASSWORD` env varia
|
||||
| `worker.networkPolicy.allowExternalEgress` | Allow the pod to access any range of port and all destinations. | `true` |
|
||||
| `worker.networkPolicy.extraIngress` | Add extra ingress rules to the NetworkPolicy | `[]` |
|
||||
| `worker.networkPolicy.extraEgress` | Add extra ingress rules to the NetworkPolicy (ignored if allowExternalEgress=true) | `[]` |
|
||||
| `worker.manageAppDeployments` | Whether apps are deployed and managed by worker. When disabled, every used app is expected to to be already deployed (see app.deployViaHelm). | `true` |
|
||||
|
||||
### app Parameters
|
||||
|
||||
@@ -586,6 +675,11 @@ The password should be provided with the `SHUFFLE_OPENSEARCH_PASSWORD` env varia
|
||||
| `app.networkPolicy.extraIngress` | Add extra ingress rules to the NetworkPolicy | `[]` |
|
||||
| `app.networkPolicy.extraEgress` | Add extra ingress rules to the NetworkPolicy (ignored if allowExternalEgress=true) | `[]` |
|
||||
| `app.exposedContainerPort` | The port that shuffle app containers will listen on for new requests. | `80` |
|
||||
| `app.sdkTimeout` | The timeout in seconds for app actions. | `300` |
|
||||
| `app.disableLogs` | Do not capture app logs. By default, app logs are captured, so that they are visible in the frontend. | `false` |
|
||||
| `app.deployViaHelm` | A list of apps that should be deployed using helm. | `{}` |
|
||||
| `app.deployViaHelm.MY_APP.app` | The name of the app (required, e.g. shuffle-tools) | |
|
||||
| `app.deployViaHelm.MY_APP.version` | The version of the app (required, e.g. 1.2.0) | |
|
||||
|
||||
### Traffic Exposure Parameters
|
||||
|
||||
@@ -654,19 +748,19 @@ The password should be provided with the `SHUFFLE_OPENSEARCH_PASSWORD` env varia
|
||||
|
||||
### Init Container Parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| ----------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------ |
|
||||
| `volumePermissions.enabled` | Enable init container that changes the owner/group of the PV mount point to `runAsUser:fsGroup` | `false` |
|
||||
| `volumePermissions.image.registry` | OS Shell + Utility image registry | `docker.io` |
|
||||
| `volumePermissions.image.repository` | OS Shell + Utility image repository | `bitnami/os-shell` |
|
||||
| `volumePermissions.image.tag` | OS Shell + Utility image tag (immutable tags are recommended) | `12-debian-12-r30` |
|
||||
| `volumePermissions.image.pullPolicy` | OS Shell + Utility image pull policy | `IfNotPresent` |
|
||||
| `volumePermissions.image.pullSecrets` | OS Shell + Utility image pull secrets | `[]` |
|
||||
| `volumePermissions.resourcesPreset` | Set init container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if volumePermissions.resources is set (volumePermissions.resources is recommended for production). | `nano` |
|
||||
| `volumePermissions.resources` | Set init container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` |
|
||||
| `volumePermissions.containerSecurityContext.enabled` | Enabled init container' Security Context | `true` |
|
||||
| `volumePermissions.containerSecurityContext.seLinuxOptions` | Set SELinux options in init container | `{}` |
|
||||
| `volumePermissions.containerSecurityContext.runAsUser` | Set init container's Security Context runAsUser | `0` |
|
||||
| Name | Description | Value |
|
||||
| ----------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------ |
|
||||
| `volumePermissions.enabled` | Enable init container that changes the owner/group of the PV mount point to `runAsUser:fsGroup` | `false` |
|
||||
| `volumePermissions.image.registry` | OS Shell + Utility image registry | `docker.io` |
|
||||
| `volumePermissions.image.repository` | OS Shell + Utility image repository | `bitnamilegacy/os-shell` |
|
||||
| `volumePermissions.image.tag` | OS Shell + Utility image tag (immutable tags are recommended) | `12-debian-12-r30` |
|
||||
| `volumePermissions.image.pullPolicy` | OS Shell + Utility image pull policy | `IfNotPresent` |
|
||||
| `volumePermissions.image.pullSecrets` | OS Shell + Utility image pull secrets | `[]` |
|
||||
| `volumePermissions.resourcesPreset` | Set init container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if volumePermissions.resources is set (volumePermissions.resources is recommended for production). | `nano` |
|
||||
| `volumePermissions.resources` | Set init container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` |
|
||||
| `volumePermissions.containerSecurityContext.enabled` | Enabled init container' Security Context | `true` |
|
||||
| `volumePermissions.containerSecurityContext.seLinuxOptions` | Set SELinux options in init container | `{}` |
|
||||
| `volumePermissions.containerSecurityContext.runAsUser` | Set init container's Security Context runAsUser | `0` |
|
||||
|
||||
### OpenSearch Parameters
|
||||
|
||||
@@ -685,3 +779,5 @@ The password should be provided with the `SHUFFLE_OPENSEARCH_PASSWORD` env varia
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -130,7 +130,12 @@
|
||||
"appRegistry": {
|
||||
"type": "string",
|
||||
"description": "The registry from / to which shuffle apps are pulled / pushed",
|
||||
"default": ""
|
||||
"default": "docker.io"
|
||||
},
|
||||
"appBaseImageName": {
|
||||
"type": "string",
|
||||
"description": "The base image used for shuffle apps. The final image for an app is <appRegistr>/<appBaseImageName>/<appName>:<appVersion>",
|
||||
"default": "frikky"
|
||||
},
|
||||
"timezone": {
|
||||
"type": "string",
|
||||
@@ -1466,7 +1471,7 @@
|
||||
"tag": {
|
||||
"type": "string",
|
||||
"description": "orborus image tag (immutable tags are recommended, defaults to appVersion)",
|
||||
"default": ""
|
||||
"default": "nightly"
|
||||
},
|
||||
"digest": {
|
||||
"type": "string",
|
||||
@@ -2053,12 +2058,27 @@
|
||||
"items": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"executionConcurrency": {
|
||||
"type": "number",
|
||||
"description": "The maximum amount of concurrent workflow executions per worker",
|
||||
"default": 25
|
||||
},
|
||||
"manageWorkerDeployments": {
|
||||
"type": "boolean",
|
||||
"description": "Whether workers are deployed and managed by orborus. When disabled, every worker is expected to be already deployed (see worker.enableHelmDeployment).",
|
||||
"default": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"worker": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enableHelmDeployment": {
|
||||
"type": "boolean",
|
||||
"description": "Deploy worker via helm. By default, workers are deployed by Orborus.",
|
||||
"default": false
|
||||
},
|
||||
"image": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -2081,9 +2101,151 @@
|
||||
"type": "string",
|
||||
"description": "worker image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag image tag (immutable tags are recommended)",
|
||||
"default": ""
|
||||
},
|
||||
"pullPolicy": {
|
||||
"type": "string",
|
||||
"description": "worker image pull policy. Only effective with worker.enableHelmDeployment.",
|
||||
"default": "IfNotPresent"
|
||||
},
|
||||
"pullSecrets": {
|
||||
"type": "array",
|
||||
"description": "worker image pull secrets. Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"replicaCount": {
|
||||
"type": "number",
|
||||
"description": "Number of worker replicas to deploy. Only effective with worker.enableHelmDeployment.",
|
||||
"default": 1
|
||||
},
|
||||
"extraContainerPorts": {
|
||||
"type": "array",
|
||||
"description": "Optionally specify extra list of additional ports for worker containers. Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"livenessProbe": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Enable livenessProbe on worker containers. Only effective with worker.enableHelmDeployment.",
|
||||
"default": false
|
||||
},
|
||||
"initialDelaySeconds": {
|
||||
"type": "number",
|
||||
"description": "Initial delay seconds for livenessProbe",
|
||||
"default": 0
|
||||
},
|
||||
"periodSeconds": {
|
||||
"type": "number",
|
||||
"description": "Period seconds for livenessProbe",
|
||||
"default": 15
|
||||
},
|
||||
"timeoutSeconds": {
|
||||
"type": "number",
|
||||
"description": "Timeout seconds for livenessProbe",
|
||||
"default": 1
|
||||
},
|
||||
"failureThreshold": {
|
||||
"type": "number",
|
||||
"description": "Failure threshold for livenessProbe",
|
||||
"default": 4
|
||||
},
|
||||
"successThreshold": {
|
||||
"type": "number",
|
||||
"description": "Success threshold for livenessProbe",
|
||||
"default": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"readinessProbe": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Enable readinessProbe on worker containers. Only effective with worker.enableHelmDeployment.",
|
||||
"default": false
|
||||
},
|
||||
"initialDelaySeconds": {
|
||||
"type": "number",
|
||||
"description": "Initial delay seconds for readinessProbe",
|
||||
"default": 0
|
||||
},
|
||||
"periodSeconds": {
|
||||
"type": "number",
|
||||
"description": "Period seconds for readinessProbe",
|
||||
"default": 5
|
||||
},
|
||||
"timeoutSeconds": {
|
||||
"type": "number",
|
||||
"description": "Timeout seconds for readinessProbe",
|
||||
"default": 1
|
||||
},
|
||||
"failureThreshold": {
|
||||
"type": "number",
|
||||
"description": "Failure threshold for readinessProbe",
|
||||
"default": 3
|
||||
},
|
||||
"successThreshold": {
|
||||
"type": "number",
|
||||
"description": "Success threshold for readinessProbe",
|
||||
"default": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"startupProbe": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Enable startupProbe on worker containers. Only effective with worker.enableHelmDeployment.",
|
||||
"default": false
|
||||
},
|
||||
"initialDelaySeconds": {
|
||||
"type": "number",
|
||||
"description": "Initial delay seconds for startupProbe",
|
||||
"default": 0
|
||||
},
|
||||
"periodSeconds": {
|
||||
"type": "number",
|
||||
"description": "Period seconds for startupProbe",
|
||||
"default": 1
|
||||
},
|
||||
"timeoutSeconds": {
|
||||
"type": "number",
|
||||
"description": "Timeout seconds for startupProbe",
|
||||
"default": 1
|
||||
},
|
||||
"failureThreshold": {
|
||||
"type": "number",
|
||||
"description": "Failure threshold for startupProbe",
|
||||
"default": 60
|
||||
},
|
||||
"successThreshold": {
|
||||
"type": "number",
|
||||
"description": "Success threshold for startupProbe",
|
||||
"default": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"customLivenessProbe": {
|
||||
"type": "object",
|
||||
"description": "Custom livenessProbe that overrides the default one. Only effective with worker.enableHelmDeployment.",
|
||||
"default": {}
|
||||
},
|
||||
"customReadinessProbe": {
|
||||
"type": "object",
|
||||
"description": "Custom readinessProbe that overrides the default one. Only effective with worker.enableHelmDeployment.",
|
||||
"default": {}
|
||||
},
|
||||
"customStartupProbe": {
|
||||
"type": "object",
|
||||
"description": "Custom startupProbe that overrides the default one. Only effective with worker.enableHelmDeployment.",
|
||||
"default": {}
|
||||
},
|
||||
"resourcesPreset": {
|
||||
"type": "string",
|
||||
"description": "Set worker container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if worker.resources is set (worker.resources is recommended for production).",
|
||||
@@ -2191,6 +2353,273 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"command": {
|
||||
"type": "array",
|
||||
"description": "Override default worker container command (useful when using custom images). Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"args": {
|
||||
"type": "array",
|
||||
"description": "Override default worker container args (useful when using custom images). Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"automountServiceAccountToken": {
|
||||
"type": "boolean",
|
||||
"description": "Mount Service Account token in worker pods. Only effective with worker.enableHelmDeployment.",
|
||||
"default": true
|
||||
},
|
||||
"hostAliases": {
|
||||
"type": "array",
|
||||
"description": "worker pods host aliases. Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"deploymentAnnotations": {
|
||||
"type": "object",
|
||||
"description": "Annotations for worker deployment. Only effective with worker.enableHelmDeployment.",
|
||||
"default": {}
|
||||
},
|
||||
"podLabels": {
|
||||
"type": "object",
|
||||
"description": "Extra labels for worker pods. Only effective with worker.enableHelmDeployment.",
|
||||
"default": {}
|
||||
},
|
||||
"podAnnotations": {
|
||||
"type": "object",
|
||||
"description": "Annotations for worker pods. Only effective with worker.enableHelmDeployment.",
|
||||
"default": {}
|
||||
},
|
||||
"podAffinityPreset": {
|
||||
"type": "string",
|
||||
"description": "Pod affinity preset. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`. Only effective with worker.enableHelmDeployment.",
|
||||
"default": ""
|
||||
},
|
||||
"podAntiAffinityPreset": {
|
||||
"type": "string",
|
||||
"description": "Pod anti-affinity preset. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`. Only effective with worker.enableHelmDeployment.",
|
||||
"default": "soft"
|
||||
},
|
||||
"nodeAffinityPreset": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"description": "Node affinity preset type. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`. Only effective with worker.enableHelmDeployment.",
|
||||
"default": ""
|
||||
},
|
||||
"key": {
|
||||
"type": "string",
|
||||
"description": "Node label key to match. Ignored if `worker.affinity` is set",
|
||||
"default": ""
|
||||
},
|
||||
"values": {
|
||||
"type": "array",
|
||||
"description": "Node label values to match. Ignored if `worker.affinity` is set",
|
||||
"default": [],
|
||||
"items": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"affinity": {
|
||||
"type": "object",
|
||||
"description": "Affinity for worker pods assignment. Only effective with worker.enableHelmDeployment.",
|
||||
"default": {}
|
||||
},
|
||||
"nodeSelector": {
|
||||
"type": "object",
|
||||
"description": "Node labels for worker pods assignment. Only effective with worker.enableHelmDeployment.",
|
||||
"default": {}
|
||||
},
|
||||
"tolerations": {
|
||||
"type": "array",
|
||||
"description": "Tolerations for worker pods assignment. Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"updateStrategy": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"type": {
|
||||
"type": "string",
|
||||
"description": "worker deployment strategy type. Only effective with worker.enableHelmDeployment.",
|
||||
"default": "RollingUpdate"
|
||||
}
|
||||
}
|
||||
},
|
||||
"priorityClassName": {
|
||||
"type": "string",
|
||||
"description": "worker pods' priorityClassName. Only effective with worker.enableHelmDeployment.",
|
||||
"default": ""
|
||||
},
|
||||
"topologySpreadConstraints": {
|
||||
"type": "array",
|
||||
"description": "Topology Spread Constraints for worker pod assignment spread across your cluster among failure-domains. Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"schedulerName": {
|
||||
"type": "string",
|
||||
"description": "Name of the k8s scheduler (other than default) for worker pods. Only effective with worker.enableHelmDeployment.",
|
||||
"default": ""
|
||||
},
|
||||
"terminationGracePeriodSeconds": {
|
||||
"type": "string",
|
||||
"description": "Seconds worker pods need to terminate gracefully. Only effective with worker.enableHelmDeployment.",
|
||||
"default": ""
|
||||
},
|
||||
"lifecycleHooks": {
|
||||
"type": "object",
|
||||
"description": "for worker containers to automate configuration before or after startup. Only effective with worker.enableHelmDeployment.",
|
||||
"default": {}
|
||||
},
|
||||
"extraEnvVars": {
|
||||
"type": "array",
|
||||
"description": "Array with extra environment variables to add to worker containers. Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"extraEnvVarsCM": {
|
||||
"type": "string",
|
||||
"description": "Name of existing ConfigMap containing extra env vars for worker containers. Only effective with worker.enableHelmDeployment.",
|
||||
"default": ""
|
||||
},
|
||||
"extraEnvVarsSecret": {
|
||||
"type": "string",
|
||||
"description": "Name of existing Secret containing extra env vars for worker containers. Only effective with worker.enableHelmDeployment.",
|
||||
"default": ""
|
||||
},
|
||||
"extraVolumes": {
|
||||
"type": "array",
|
||||
"description": "Optionally specify extra list of additional volumes for the worker pods. Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"extraVolumeMounts": {
|
||||
"type": "array",
|
||||
"description": "Optionally specify extra list of additional volumeMounts for the worker containers. Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"sidecars": {
|
||||
"type": "array",
|
||||
"description": "Add additional sidecar containers to the worker pods. Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"initContainers": {
|
||||
"type": "array",
|
||||
"description": "Add additional init containers to the worker pods. Only effective with worker.enableHelmDeployment.",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"pdb": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"create": {
|
||||
"type": "boolean",
|
||||
"description": "Enable/disable a Pod Disruption Budget creation. Only effective with worker.enableHelmDeployment.",
|
||||
"default": true
|
||||
},
|
||||
"minAvailable": {
|
||||
"type": "string",
|
||||
"description": "Minimum number/percentage of pods that should remain scheduled",
|
||||
"default": ""
|
||||
},
|
||||
"maxUnavailable": {
|
||||
"type": "string",
|
||||
"description": "Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `worker.pdb.minAvailable` and `worker.pdb.maxUnavailable` are empty.",
|
||||
"default": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"autoscaling": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"vpa": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Enable VPA for worker pods. Only effective with worker.enableHelmDeployment.",
|
||||
"default": false
|
||||
},
|
||||
"annotations": {
|
||||
"type": "object",
|
||||
"description": "Annotations for VPA resource",
|
||||
"default": {}
|
||||
},
|
||||
"controlledResources": {
|
||||
"type": "array",
|
||||
"description": "VPA List of resources that the vertical pod autoscaler can control. Defaults to cpu and memory",
|
||||
"default": [],
|
||||
"items": {}
|
||||
},
|
||||
"maxAllowed": {
|
||||
"type": "object",
|
||||
"description": "VPA Max allowed resources for the pod",
|
||||
"default": {}
|
||||
},
|
||||
"minAllowed": {
|
||||
"type": "object",
|
||||
"description": "VPA Min allowed resources for the pod",
|
||||
"default": {}
|
||||
},
|
||||
"updatePolicy": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"updateMode": {
|
||||
"type": "string",
|
||||
"description": "Autoscaling update policy",
|
||||
"default": "Auto"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"hpa": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"enabled": {
|
||||
"type": "boolean",
|
||||
"description": "Enable HPA for worker pods. Only effective with worker.enableHelmDeployment.",
|
||||
"default": false
|
||||
},
|
||||
"minReplicas": {
|
||||
"type": "string",
|
||||
"description": "Minimum number of replicas",
|
||||
"default": ""
|
||||
},
|
||||
"maxReplicas": {
|
||||
"type": "string",
|
||||
"description": "Maximum number of replicas",
|
||||
"default": ""
|
||||
},
|
||||
"targetCPU": {
|
||||
"type": "string",
|
||||
"description": "Target CPU utilization percentage",
|
||||
"default": ""
|
||||
},
|
||||
"targetMemory": {
|
||||
"type": "string",
|
||||
"description": "Target Memory utilization percentage",
|
||||
"default": ""
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"service": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"labels": {
|
||||
"type": "object",
|
||||
"description": "Extra labels for worker service. Only effective with worker.enableHelmDeployment.",
|
||||
"default": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"serviceAccount": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
@@ -2263,6 +2692,11 @@
|
||||
"items": {}
|
||||
}
|
||||
}
|
||||
},
|
||||
"manageAppDeployments": {
|
||||
"type": "boolean",
|
||||
"description": "Whether apps are deployed and managed by worker. When disabled, every used app is expected to to be already deployed (see app.deployViaHelm).",
|
||||
"default": true
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -2453,6 +2887,16 @@
|
||||
"type": "number",
|
||||
"description": "The port that shuffle app containers will listen on for new requests. ",
|
||||
"default": 80
|
||||
},
|
||||
"sdkTimeout": {
|
||||
"type": "number",
|
||||
"description": "The timeout in seconds for app actions.",
|
||||
"default": 300
|
||||
},
|
||||
"disableLogs": {
|
||||
"type": "boolean",
|
||||
"description": "Do not capture app logs. By default, app logs are captured, so that they are visible in the frontend.",
|
||||
"default": false
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -2793,7 +3237,7 @@
|
||||
"repository": {
|
||||
"type": "string",
|
||||
"description": "OS Shell + Utility image repository",
|
||||
"default": "bitnami/os-shell"
|
||||
"default": "bitnamilegacy/os-shell"
|
||||
},
|
||||
"tag": {
|
||||
"type": "string",
|
||||
|
||||
@@ -74,7 +74,7 @@ diagnosticMode:
|
||||
shuffle:
|
||||
## @param shuffle.baseUrl The external base URL under which Shuffle is reachable.
|
||||
##
|
||||
#baseUrl: ""
|
||||
baseUrl: ""
|
||||
|
||||
## ref: https://shuffler.io/docs/organizations
|
||||
## This chart only supports single-tenant deployments at the moment
|
||||
@@ -84,14 +84,18 @@ shuffle:
|
||||
|
||||
## @param shuffle.appRegistry The registry from / to which shuffle apps are pulled / pushed
|
||||
##
|
||||
appRegistry: "" # TODO: Default?
|
||||
appRegistry: "docker.io"
|
||||
|
||||
## @param shuffle.appBaseImageName The base image used for shuffle apps. The final image for an app is <appRegistr>/<appBaseImageName>/<appName>:<appVersion>
|
||||
##
|
||||
appBaseImageName: "frikky"
|
||||
|
||||
## @param shuffle.timezone The timezone used by Shuffle
|
||||
##
|
||||
timezone: Europe/Berlin
|
||||
|
||||
## @section backend Parameters
|
||||
##
|
||||
##
|
||||
backend:
|
||||
## backend image
|
||||
## @param backend.image.registry backend image registry
|
||||
@@ -525,8 +529,6 @@ backend:
|
||||
## @param backend.openSearch.username The username that is used for authenticating with OpenSearch
|
||||
##
|
||||
username: admin
|
||||
|
||||
password: StrongShufflePassword321!
|
||||
## @param backend.openSearch.certificateFile The path to a custom OpenSearch certificate file
|
||||
##
|
||||
certificateFile: ""
|
||||
@@ -887,16 +889,6 @@ frontend:
|
||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
|
||||
##
|
||||
labels: {}
|
||||
type: NodePort
|
||||
ports:
|
||||
- name: http
|
||||
port: 80
|
||||
targetPort: 3001
|
||||
nodePort: 30080
|
||||
- name: https
|
||||
port: 443
|
||||
targetPort: 3443
|
||||
nodePort: 30443
|
||||
|
||||
## ServiceAccount configuration
|
||||
##
|
||||
@@ -1199,17 +1191,7 @@ orborus:
|
||||
## - name: FOO
|
||||
## value: "bar"
|
||||
##
|
||||
extraEnvVars: # TODO: Make this list empty and move to other values. Also check if these need to be set on worker or apps.
|
||||
- name: SHUFFLE_APP_SDK_TIMEOUT
|
||||
value: "300"
|
||||
- name: SHUFFLE_ORBORUS_EXCUTION_CONCURRENCY
|
||||
value: "7"
|
||||
- name: SHUFFLE_STATS_DISABLED
|
||||
value: "true"
|
||||
- name: KUBERNETES_NAMESPACE
|
||||
value: "shuffle"
|
||||
- name: SHUFFLE_BASE_IMAGE_NAME
|
||||
value: "frikky/shuffle" # TODO: Allow to configure, share with worker
|
||||
extraEnvVars: []
|
||||
## @param orborus.extraEnvVarsCM Name of existing ConfigMap containing extra env vars for orborus containers
|
||||
##
|
||||
extraEnvVarsCM: ""
|
||||
@@ -1347,6 +1329,10 @@ orborus:
|
||||
##
|
||||
extraEgress: []
|
||||
|
||||
## @param orborus.executionConcurrency The maximum amount of concurrent workflow executions per worker
|
||||
##
|
||||
executionConcurrency: 25
|
||||
|
||||
## @param orborus.manageWorkerDeployments Whether workers are deployed and managed by orborus. When disabled, every worker is expected to be already deployed (see worker.enableHelmDeployment).
|
||||
## This effectively removes required RBAC permissions from the shuffle-orborus service account to create deployments and services.
|
||||
## Orborus might still attempt to create kubernetes objects, resulting in an error. There is currently no way to tell orborus, that it should not manage k8s resources.
|
||||
@@ -1365,8 +1351,8 @@ worker:
|
||||
## @param worker.image.repository worker image repository
|
||||
## @param worker.image.tag worker image tag (immutable tags are recommended, defaults to appVersion)
|
||||
## @param worker.image.digest worker image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag image tag (immutable tags are recommended)
|
||||
## @param worker.image.pullPolicy worker image pull policy
|
||||
## @param worker.image.pullSecrets worker image pull secrets
|
||||
## @param worker.image.pullPolicy worker image pull policy. Only effective with worker.enableHelmDeployment.
|
||||
## @param worker.image.pullSecrets worker image pull secrets. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
image:
|
||||
registry: ghcr.io
|
||||
@@ -1386,10 +1372,10 @@ worker:
|
||||
## - myRegistryKeySecretName
|
||||
##
|
||||
pullSecrets: []
|
||||
## @param worker.replicaCount Number of worker replicas to deploy
|
||||
## @param worker.replicaCount Number of worker replicas to deploy. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
replicaCount: 1
|
||||
## @param worker.extraContainerPorts Optionally specify extra list of additional ports for worker containers
|
||||
## @param worker.extraContainerPorts Optionally specify extra list of additional ports for worker containers. Only effective with worker.enableHelmDeployment.
|
||||
## e.g:
|
||||
## extraContainerPorts:
|
||||
## - name: myservice
|
||||
@@ -1398,7 +1384,7 @@ worker:
|
||||
extraContainerPorts: []
|
||||
## Configure extra options for worker containers' liveness and readiness probes
|
||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes
|
||||
## @param worker.livenessProbe.enabled Enable livenessProbe on worker containers
|
||||
## @param worker.livenessProbe.enabled Enable livenessProbe on worker containers. Only effective with worker.enableHelmDeployment.
|
||||
## @param worker.livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe
|
||||
## @param worker.livenessProbe.periodSeconds Period seconds for livenessProbe
|
||||
## @param worker.livenessProbe.timeoutSeconds Timeout seconds for livenessProbe
|
||||
@@ -1412,7 +1398,7 @@ worker:
|
||||
timeoutSeconds: 1
|
||||
failureThreshold: 4
|
||||
successThreshold: 1
|
||||
## @param worker.readinessProbe.enabled Enable readinessProbe on worker containers
|
||||
## @param worker.readinessProbe.enabled Enable readinessProbe on worker containers. Only effective with worker.enableHelmDeployment.
|
||||
## @param worker.readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe
|
||||
## @param worker.readinessProbe.periodSeconds Period seconds for readinessProbe
|
||||
## @param worker.readinessProbe.timeoutSeconds Timeout seconds for readinessProbe
|
||||
@@ -1426,7 +1412,7 @@ worker:
|
||||
timeoutSeconds: 1
|
||||
failureThreshold: 3
|
||||
successThreshold: 1
|
||||
## @param worker.startupProbe.enabled Enable startupProbe on worker containers
|
||||
## @param worker.startupProbe.enabled Enable startupProbe on worker containers. Only effective with worker.enableHelmDeployment.
|
||||
## @param worker.startupProbe.initialDelaySeconds Initial delay seconds for startupProbe
|
||||
## @param worker.startupProbe.periodSeconds Period seconds for startupProbe
|
||||
## @param worker.startupProbe.timeoutSeconds Timeout seconds for startupProbe
|
||||
@@ -1440,13 +1426,13 @@ worker:
|
||||
timeoutSeconds: 1
|
||||
failureThreshold: 60
|
||||
successThreshold: 1
|
||||
## @param worker.customLivenessProbe Custom livenessProbe that overrides the default one
|
||||
## @param worker.customLivenessProbe Custom livenessProbe that overrides the default one. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
customLivenessProbe: {}
|
||||
## @param worker.customReadinessProbe Custom readinessProbe that overrides the default one
|
||||
## @param worker.customReadinessProbe Custom readinessProbe that overrides the default one. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
customReadinessProbe: {}
|
||||
## @param worker.customStartupProbe Custom startupProbe that overrides the default one
|
||||
## @param worker.customStartupProbe Custom startupProbe that overrides the default one. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
customStartupProbe: {}
|
||||
## worker resource requests and limits
|
||||
@@ -1508,37 +1494,37 @@ worker:
|
||||
drop: ["ALL"]
|
||||
seccompProfile:
|
||||
type: "RuntimeDefault"
|
||||
## @param worker.command Override default worker container command (useful when using custom images)
|
||||
## @param worker.command Override default worker container command (useful when using custom images). Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
command: []
|
||||
## @param worker.args Override default worker container args (useful when using custom images)
|
||||
## @param worker.args Override default worker container args (useful when using custom images). Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
args: []
|
||||
## @param worker.automountServiceAccountToken Mount Service Account token in worker pods
|
||||
## @param worker.automountServiceAccountToken Mount Service Account token in worker pods. Only effective with worker.enableHelmDeployment.
|
||||
## NOTE: worker requires the service account credentials to be mounted if manageAppDeployments is enabled.
|
||||
##
|
||||
automountServiceAccountToken: true
|
||||
## @param worker.hostAliases worker pods host aliases
|
||||
## @param worker.hostAliases worker pods host aliases. Only effective with worker.enableHelmDeployment.
|
||||
## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
|
||||
##
|
||||
hostAliases: []
|
||||
## @param worker.deploymentAnnotations Annotations for worker deployment
|
||||
## @param worker.deploymentAnnotations Annotations for worker deployment. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
|
||||
##
|
||||
deploymentAnnotations: {}
|
||||
## @param worker.podLabels Extra labels for worker pods
|
||||
## @param worker.podLabels Extra labels for worker pods. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
|
||||
##
|
||||
podLabels: {}
|
||||
## @param worker.podAnnotations Annotations for worker pods
|
||||
## @param worker.podAnnotations Annotations for worker pods. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
|
||||
##
|
||||
podAnnotations: {}
|
||||
## @param worker.podAffinityPreset Pod affinity preset. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`
|
||||
## @param worker.podAffinityPreset Pod affinity preset. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
|
||||
##
|
||||
podAffinityPreset: ""
|
||||
## @param worker.podAntiAffinityPreset Pod anti-affinity preset. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`
|
||||
## @param worker.podAntiAffinityPreset Pod anti-affinity preset. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
|
||||
##
|
||||
podAntiAffinityPreset: soft
|
||||
@@ -1546,7 +1532,7 @@ worker:
|
||||
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity
|
||||
##
|
||||
nodeAffinityPreset:
|
||||
## @param worker.nodeAffinityPreset.type Node affinity preset type. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`
|
||||
## @param worker.nodeAffinityPreset.type Node affinity preset type. Ignored if `worker.affinity` is set. Allowed values: `soft` or `hard`. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
type: ""
|
||||
## @param worker.nodeAffinityPreset.key Node label key to match. Ignored if `worker.affinity` is set
|
||||
@@ -1559,64 +1545,64 @@ worker:
|
||||
## - e2e-az2
|
||||
##
|
||||
values: []
|
||||
## @param worker.affinity Affinity for worker pods assignment
|
||||
## @param worker.affinity Affinity for worker pods assignment. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
|
||||
## NOTE: `worker.podAffinityPreset`, `worker.podAntiAffinityPreset`, and `worker.nodeAffinityPreset` will be ignored when it's set
|
||||
##
|
||||
affinity: {}
|
||||
## @param worker.nodeSelector Node labels for worker pods assignment
|
||||
## @param worker.nodeSelector Node labels for worker pods assignment. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/
|
||||
##
|
||||
nodeSelector: {}
|
||||
## @param worker.tolerations Tolerations for worker pods assignment
|
||||
## @param worker.tolerations Tolerations for worker pods assignment. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
||||
##
|
||||
tolerations: []
|
||||
## @param worker.updateStrategy.type worker deployment strategy type
|
||||
## @param worker.updateStrategy.type worker deployment strategy type. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
|
||||
##
|
||||
updateStrategy:
|
||||
## Can be set to RollingUpdate or Recreate
|
||||
##
|
||||
type: RollingUpdate
|
||||
## @param worker.priorityClassName worker pods' priorityClassName
|
||||
## @param worker.priorityClassName worker pods' priorityClassName. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
priorityClassName: ""
|
||||
## @param worker.topologySpreadConstraints Topology Spread Constraints for worker pod assignment spread across your cluster among failure-domains
|
||||
## @param worker.topologySpreadConstraints Topology Spread Constraints for worker pod assignment spread across your cluster among failure-domains. Only effective with worker.enableHelmDeployment.
|
||||
## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#spread-constraints-for-pods
|
||||
##
|
||||
topologySpreadConstraints: []
|
||||
## @param worker.schedulerName Name of the k8s scheduler (other than default) for worker pods
|
||||
## @param worker.schedulerName Name of the k8s scheduler (other than default) for worker pods. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
|
||||
##
|
||||
schedulerName: ""
|
||||
## @param worker.terminationGracePeriodSeconds Seconds worker pods need to terminate gracefully
|
||||
## @param worker.terminationGracePeriodSeconds Seconds worker pods need to terminate gracefully. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods
|
||||
##
|
||||
terminationGracePeriodSeconds: ""
|
||||
## @param worker.lifecycleHooks for worker containers to automate configuration before or after startup
|
||||
## @param worker.lifecycleHooks for worker containers to automate configuration before or after startup. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
lifecycleHooks: {}
|
||||
## @param worker.extraEnvVars Array with extra environment variables to add to worker containers
|
||||
## @param worker.extraEnvVars Array with extra environment variables to add to worker containers. Only effective with worker.enableHelmDeployment.
|
||||
## e.g:
|
||||
## extraEnvVars:
|
||||
## - name: FOO
|
||||
## value: "bar"
|
||||
##
|
||||
extraEnvVars: []
|
||||
## @param worker.extraEnvVarsCM Name of existing ConfigMap containing extra env vars for worker containers
|
||||
## @param worker.extraEnvVarsCM Name of existing ConfigMap containing extra env vars for worker containers. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
extraEnvVarsCM: ""
|
||||
## @param worker.extraEnvVarsSecret Name of existing Secret containing extra env vars for worker containers
|
||||
## @param worker.extraEnvVarsSecret Name of existing Secret containing extra env vars for worker containers. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
extraEnvVarsSecret: ""
|
||||
## @param worker.extraVolumes Optionally specify extra list of additional volumes for the worker pods
|
||||
## @param worker.extraVolumes Optionally specify extra list of additional volumes for the worker pods. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
extraVolumes: []
|
||||
## @param worker.extraVolumeMounts Optionally specify extra list of additional volumeMounts for the worker containers
|
||||
## @param worker.extraVolumeMounts Optionally specify extra list of additional volumeMounts for the worker containers. Only effective with worker.enableHelmDeployment.
|
||||
##
|
||||
extraVolumeMounts: []
|
||||
## @param worker.sidecars Add additional sidecar containers to the worker pods
|
||||
## @param worker.sidecars Add additional sidecar containers to the worker pods. Only effective with worker.enableHelmDeployment.
|
||||
## e.g:
|
||||
## sidecars:
|
||||
## - name: your-image-name
|
||||
@@ -1627,7 +1613,7 @@ worker:
|
||||
## containerPort: 1234
|
||||
##
|
||||
sidecars: []
|
||||
## @param worker.initContainers Add additional init containers to the worker pods
|
||||
## @param worker.initContainers Add additional init containers to the worker pods. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/
|
||||
## e.g:
|
||||
## initContainers:
|
||||
@@ -1639,7 +1625,7 @@ worker:
|
||||
initContainers: []
|
||||
## Pod Disruption Budget configuration
|
||||
## ref: https://kubernetes.io/docs/tasks/run-application/configure-pdb
|
||||
## @param worker.pdb.create Enable/disable a Pod Disruption Budget creation
|
||||
## @param worker.pdb.create Enable/disable a Pod Disruption Budget creation. Only effective with worker.enableHelmDeployment.
|
||||
## @param worker.pdb.minAvailable Minimum number/percentage of pods that should remain scheduled
|
||||
## @param worker.pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `worker.pdb.minAvailable` and `worker.pdb.maxUnavailable` are empty.
|
||||
##
|
||||
@@ -1651,7 +1637,7 @@ worker:
|
||||
## ref: https://kubernetes.io/docs/concepts/workloads/autoscaling/
|
||||
##
|
||||
autoscaling:
|
||||
## @param worker.autoscaling.vpa.enabled Enable VPA for worker pods
|
||||
## @param worker.autoscaling.vpa.enabled Enable VPA for worker pods. Only effective with worker.enableHelmDeployment.
|
||||
## @param worker.autoscaling.vpa.annotations Annotations for VPA resource
|
||||
## @param worker.autoscaling.vpa.controlledResources VPA List of resources that the vertical pod autoscaler can control. Defaults to cpu and memory
|
||||
## @param worker.autoscaling.vpa.maxAllowed VPA Max allowed resources for the pod
|
||||
@@ -1669,7 +1655,7 @@ worker:
|
||||
##
|
||||
updatePolicy:
|
||||
updateMode: Auto
|
||||
## @param worker.autoscaling.hpa.enabled Enable HPA for worker pods
|
||||
## @param worker.autoscaling.hpa.enabled Enable HPA for worker pods. Only effective with worker.enableHelmDeployment.
|
||||
## @param worker.autoscaling.hpa.minReplicas Minimum number of replicas
|
||||
## @param worker.autoscaling.hpa.maxReplicas Maximum number of replicas
|
||||
## @param worker.autoscaling.hpa.targetCPU Target CPU utilization percentage
|
||||
@@ -1685,7 +1671,7 @@ worker:
|
||||
## Service configuration
|
||||
##
|
||||
service:
|
||||
## @param worker.service.labels Extra labels for worker service
|
||||
## @param worker.service.labels Extra labels for worker service. Only effective with worker.enableHelmDeployment.
|
||||
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
|
||||
##
|
||||
labels: {}
|
||||
@@ -1870,8 +1856,14 @@ app:
|
||||
## @param app.exposedContainerPort The port that shuffle app containers will listen on for new requests.
|
||||
##
|
||||
exposedContainerPort: 80
|
||||
## @param app.sdkTimeout The timeout in seconds for app actions.
|
||||
##
|
||||
sdkTimeout: 300
|
||||
## @param app.disableLogs Do not capture app logs. By default, app logs are captured, so that they are visible in the frontend.
|
||||
##
|
||||
disableLogs: false
|
||||
|
||||
## @param app.deployViaHelm A list of apps that should be deployed using helm.
|
||||
## @param app.deployViaHelm [object] A list of apps that should be deployed using helm.
|
||||
## By default, workers create deployments and services for apps when they are first needed (or during startup for some selected apps).
|
||||
## Deploying apps via workers has some drawbacks, such as:
|
||||
## - A workflow fails when the app is not deployed when the workflow gets executed (see https://github.com/Shuffle/Shuffle/issues/1739)
|
||||
@@ -1879,7 +1871,11 @@ app:
|
||||
## - Worker needs elevated permissions in Kubernetes
|
||||
## Note that you can deploy some apps via helm, while keeping the flexibility of letting workers deploy apps if they are not already deployed.
|
||||
## If you deploy all needed apps via helm and dont want workers to create additional deployments, set worker.manageAppDeployments to false.
|
||||
##
|
||||
## The key of the app does not matter.
|
||||
## @extra app.deployViaHelm.MY_APP.app [string] The name of the app (required, e.g. shuffle-tools)
|
||||
## @extra app.deployViaHelm.MY_APP.version [string] The version of the app (required, e.g. 1.2.0)
|
||||
|
||||
# TODO: Convert sample value to @extra.
|
||||
## Sample value:
|
||||
## - app: my-app # required
|
||||
## version: 1.0.0 # required
|
||||
@@ -1892,10 +1888,9 @@ app:
|
||||
## extraEnv: [] # optional
|
||||
## podSecurityContext: null # optional, defaults to app.podSecurityContext
|
||||
## containerSecurityContext: null # optional, defaults to app.containerSecurityContext
|
||||
##
|
||||
## TODO: allow to override resources, serviceAccount, mounts, env, security Contexts. Fall back to app defaults as defined above.
|
||||
##
|
||||
deployViaHelm: []
|
||||
deployViaHelm: {}
|
||||
|
||||
## @section Traffic Exposure Parameters
|
||||
##
|
||||
@@ -2192,6 +2187,8 @@ volumePermissions:
|
||||
## OpenSearch chart configuration
|
||||
## ref: https://github.com/bitnami/charts/blob/main/bitnami/opensearch/values.yaml
|
||||
## @param opensearch.enabled Switch to enable or disable the opensearch helm chart
|
||||
## @skip opensearch.sysctlImage
|
||||
## @skip opensearch.image
|
||||
## @skip opensearch.master
|
||||
## @skip opensearch.data
|
||||
## @skip opensearch.coordinating
|
||||
@@ -2200,15 +2197,12 @@ volumePermissions:
|
||||
##
|
||||
opensearch:
|
||||
enabled: true
|
||||
|
||||
sysctlImage:
|
||||
enabled: false
|
||||
|
||||
image:
|
||||
registry: docker.io
|
||||
repository: bitnamilegacy/opensearch
|
||||
tag: "3.2.0"
|
||||
|
||||
master:
|
||||
replicaCount: 1
|
||||
data:
|
||||
|
||||
Reference in New Issue
Block a user