From c8f47a2d31ce7c7c5f1a851a51be77eb72339bc4 Mon Sep 17 00:00:00 2001 From: DeeAjayi Date: Mon, 9 Sep 2024 09:54:03 +0000 Subject: [PATCH 1/2] [CI] Publish Truefoundry chart version 0.4.19-rc.8 --- charts/truefoundry/Chart.lock | 6 +- charts/truefoundry/Chart.yaml | 4 +- charts/truefoundry/README.md | 604 +++++++++--------- .../templates/bootstrap/_helpers.tpl | 8 + .../truefoundry/templates/bootstrap/job.yaml | 9 +- .../templates/mlfoundry-server/_helpers.tpl | 9 + .../mlfoundry-server/deployment.yaml | 9 +- .../servicefoundry-server/_helpers.tpl | 9 + .../servicefoundry-server/deployment.yaml | 9 +- .../sfy-manifest-service/_helpers.tpl | 9 + .../sfy-manifest-service/deployment.yaml | 9 +- .../templates/tfy-build/_helpers.tpl | 18 + .../build-workflow-workflow-template.yaml | 129 +++- .../tfy-build/preemptible-deployment.yaml | 9 +- .../templates/tfy-controller/_helpers.tpl | 9 + .../templates/tfy-controller/deployment.yaml | 9 +- .../templates/tfy-k8s-controller/_helpers.tpl | 9 + .../tfy-k8s-controller/deployment.yaml | 9 +- .../templates/tfy-workflow-admin/_helpers.tpl | 9 + .../tfy-workflow-admin/deployment.yaml | 16 +- .../truefoundry-frontend-app/_helpers.tpl | 9 + .../truefoundry-frontend-app/deployment.yaml | 9 +- charts/truefoundry/values.yaml | 65 +- 23 files changed, 627 insertions(+), 358 deletions(-) create mode 100644 charts/truefoundry/templates/bootstrap/_helpers.tpl diff --git a/charts/truefoundry/Chart.lock b/charts/truefoundry/Chart.lock index 97d187150..4658daecc 100644 --- a/charts/truefoundry/Chart.lock +++ b/charts/truefoundry/Chart.lock @@ -1,7 +1,7 @@ dependencies: - name: tfy-configs repository: https://truefoundry.github.io/infra-charts - version: 0.1.0 + version: 0.1.1 - name: nats repository: https://nats-io.github.io/k8s/helm/charts/ version: 0.19.1 @@ -11,5 +11,5 @@ dependencies: - name: tfy-buildkitd-service repository: https://truefoundry.github.io/infra-charts/ version: 0.1.3 -digest: sha256:08ccf5bebe5b9e4abc4121510d7a0fb9473a62ac06e497f06a31ee692863859d -generated: "2024-08-29T17:36:47.356247+05:30" +digest: sha256:d434b314a2f7f7f0398b591f951b7af06f5f6769f1d05ed581d36e3da704b9f4 +generated: "2024-09-05T12:08:47.713039+05:30" diff --git a/charts/truefoundry/Chart.yaml b/charts/truefoundry/Chart.yaml index 95f510e9b..c112d1428 100644 --- a/charts/truefoundry/Chart.yaml +++ b/charts/truefoundry/Chart.yaml @@ -1,6 +1,6 @@ apiVersion: v2 name: truefoundry -version: 0.4.19-rc.1 +version: 0.4.19-rc.8 description: "Truefoundry applications" maintainers: - name: truefoundry @@ -8,7 +8,7 @@ dependencies: - condition: servicefoundryServer.enabled name: tfy-configs repository: https://truefoundry.github.io/infra-charts - version: 0.1.0 + version: 0.1.1 - condition: nats.enabled name: nats repository: https://nats-io.github.io/k8s/helm/charts/ diff --git a/charts/truefoundry/README.md b/charts/truefoundry/README.md index e2dd19e07..49f429f4d 100644 --- a/charts/truefoundry/README.md +++ b/charts/truefoundry/README.md @@ -3,289 +3,323 @@ truefoundry is an applications that gets deployed on the kubernetes cluster to s ## Parameters -######## Parameters for Truefoundry +########## Parameters for Truefoundry -| Name | Description | Value | -| ------------------------------------------------------------------------------- | --------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `global.existingTruefoundryImagePullSecretName` | Name of the existing image pull secret | `""` | -| `global.truefoundryImagePullConfigJSON` | JSON config for image pull secret | `""` | -| `global.tenantName` | Name of the tenant | `""` | -| `global.controlPlaneURL` | URL of the control plane | `http://truefoundry-truefoundry-frontend-app.truefoundry.svc.cluster.local:5000` | -| `global.existingTruefoundryCredsSecret` | Name of the existing truefoundry creds secret | `""` | -| `global.database.host` | Control plane database hostname when dev mode is not enabled | `""` | -| `global.database.name` | Control plane database name when dev mode is not enabled | `""` | -| `global.database.username` | Control plane database username when dev mode is not enabled | `""` | -| `global.database.password` | Control plane database password when dev mode is not enabled | `""` | -| `global.tfyApiKey` | API key for truefoundry | `""` | -| `devMode.enabled` | Bool to enable dev mode | `false` | -| `truefoundryBootstrap.enabled` | Bool to enable truefoundry bootstrap | `true` | -| `truefoundryBootstrap.image.repository` | Truefoundry bootstrap image repository | `docker.io/library/ubuntu` | -| `truefoundryBootstrap.image.tag` | Truefoundry bootstrap image tag | `latest` | -| `truefoundryBootstrap.natsConfigmapName` | Truefoundry nats configmap name | `nats-accounts` | -| `truefoundryBootstrap.extraEnvVars` | Extra environment variables for the bootstrap container | `[]` | -| `truefoundryBootstrap.extraVolumeMounts` | Extra volume mounts for the bootstrap container | `[]` | -| `truefoundryBootstrap.extraVolumes` | Extra volumes for the bootstrap container | `[]` | -| `truefoundryBootstrap.affinity` | Affinity for the bootstrap container | `{}` | -| `truefoundryBootstrap.nodeSelector` | Node selector for the bootstrap container | `{}` | -| `truefoundryBootstrap.tolerations` | Tolerations specific to the bootstrap container | `{}` | -| `truefoundryBootstrap.imagePullSecrets` | Image pull secrets for the bootstrap container | `[]` | -| `truefoundryFrontendApp.enabled` | Bool to enable the frontend app | `true` | -| `truefoundryFrontendApp.tolerations` | Tolerations specific to the frontend app | `{}` | -| `truefoundryFrontendApp.replicaCount` | Number of replicas for the frontend app | `1` | -| `truefoundryFrontendApp.global` | Global values for the frontend app | `{}` | -| `truefoundryFrontendApp.imageRepository` | Image repository for the frontend app | `truefoundrycloud/truefoundry-frontend-app` | -| `truefoundryFrontendApp.envSecretName` | Secret name for the frontend app environment variables | `truefoundry-frontend-app-env-secret` | -| `truefoundryFrontendApp.imagePullPolicy` | Image pull policy for the frontend app | `IfNotPresent` | -| `truefoundryFrontendApp.nameOverride` | Override name for the frontend app | `""` | -| `truefoundryFrontendApp.fullnameOverride` | Full name override for the frontend app | `""` | -| `truefoundryFrontendApp.podAnnotations` | Annotations for the frontend app pods | `{}` | -| `truefoundryFrontendApp.podSecurityContext` | Security context for the frontend app pods | `{}` | -| `truefoundryFrontendApp.commonLabels` | Common labels for the frontend app pods | `{}` | -| `truefoundryFrontendApp.securityContext` | Security context for the frontend app | `{}` | -| `truefoundryFrontendApp.resources.limits.cpu` | CPU limit for the frontend app | `200m` | -| `truefoundryFrontendApp.resources.limits.memory` | Memory limit for the frontend app | `512Mi` | -| `truefoundryFrontendApp.resources.limits.ephemeral-storage` | Ephemeral storage limit for the frontend app | `256Mi` | -| `truefoundryFrontendApp.resources.requests.cpu` | CPU request for the frontend app | `25m` | -| `truefoundryFrontendApp.resources.requests.memory` | Memory request for the frontend app | `256Mi` | -| `truefoundryFrontendApp.resources.requests.ephemeral-storage` | Ephemeral storage request for the frontend app | `128Mi` | -| `truefoundryFrontendApp.nodeSelector` | Node selector for the frontend app | `{}` | -| `truefoundryFrontendApp.affinity` | Affinity settings for the frontend app | `{}` | -| `truefoundryFrontendApp.topologySpreadConstraints` | Topology spread constraints for the frontend app | `{}` | -| `truefoundryFrontendApp.service.type` | Service type for the frontend app | `ClusterIP` | -| `truefoundryFrontendApp.service.port` | Service port for the frontend app | `5000` | -| `truefoundryFrontendApp.service.annotations` | Annotations for the frontend app service | `{}` | -| `truefoundryFrontendApp.ingress.enabled` | Enable ingress for the frontend app | `false` | -| `truefoundryFrontendApp.ingress.annotations` | Annotations for the frontend app ingress | `{}` | -| `truefoundryFrontendApp.ingress.labels` | Labels for the frontend app ingress | `{}` | -| `truefoundryFrontendApp.ingress.ingressClassName` | Ingress class name for the frontend app | `istio` | -| `truefoundryFrontendApp.ingress.tls` | TLS settings for the frontend app | `[]` | -| `truefoundryFrontendApp.ingress.hosts` | Hosts for the frontend app | `[]` | -| `truefoundryFrontendApp.istio.virtualservice.enabled` | Enable virtual service for the frontend app | `false` | -| `truefoundryFrontendApp.istio.virtualservice.annotations` | Annotations for the frontend app virtual service | `{}` | -| `truefoundryFrontendApp.istio.virtualservice.gateways` | Gateways for the frontend app virtual service | `[]` | -| `truefoundryFrontendApp.istio.virtualservice.hosts` | Hosts for the frontend app virtual service | `[]` | -| `truefoundryFrontendApp.imageTag` | Image tag for the frontend app | `v0.3.150-rc.1` | -| `truefoundryFrontendApp.servicefoundryServerHost` | Servicefoundry server host for the frontend app | `{{ .Release.Name }}-servicefoundry-server.{{ .Release.Namespace }}.svc.cluster.local` | -| `truefoundryFrontendApp.llmGateway.external` | Make LLMGateway external | `false` | -| `truefoundryFrontendApp.llmGateway.backendHost` | Backend Host for the LLM gateway | `{{ .Release.Name }}-llm-gateway.{{ .Release.Namespace }}.svc.cluster.local` | -| `truefoundryFrontendApp.llmGateway.backendPort` | Backend Port for the LLM gateway | `8787` | -| `truefoundryFrontendApp.proxyServerHost` | Proxy server host for the frontend app | `{{ .Release.Name }}-tfy-controller.{{ .Release.Namespace }}.svc.cluster.local` | -| `truefoundryFrontendApp.serviceAccount.annotations` | Annotations for the frontend app service account | `{}` | -| `truefoundryFrontendApp.extraVolumes` | Extra volumes for the frontend app | `[]` | -| `truefoundryFrontendApp.extraVolumeMounts` | Extra volume mounts for the frontend app | `[]` | -| `truefoundryFrontendApp.imagePullSecrets` | Image pull secrets for the frontend app | `[]` | -| `mlfoundryServer.enabled` | Bool to enable the mlfoundry server | `true` | -| `mlfoundryServer.tolerations` | Tolerations specific to the mlfoundry server | `{}` | -| `mlfoundryServer.imageRepository` | Image repository for the mlfoundry server | `truefoundrycloud/mlfoundry-server` | -| `mlfoundryServer.replicaCount` | Number of replicas for the mlfoundry server | `1` | -| `mlfoundryServer.environmentName` | Environment name for the mlfoundry server | `default` | -| `mlfoundryServer.envSecretName` | Secret name for the mlfoundry server environment variables | `mlfoundry-server-env-secret` | -| `mlfoundryServer.imagePullPolicy` | Image pull policy for the mlfoundry server | `IfNotPresent` | -| `mlfoundryServer.nameOverride` | Override name for the mlfoundry server | `""` | -| `mlfoundryServer.fullnameOverride` | Full name override for the mlfoundry server | `""` | -| `mlfoundryServer.podAnnotations` | Annotations for the mlfoundry server pods | `{}` | -| `mlfoundryServer.podSecurityContext` | Security context for the mlfoundry server pods | `{}` | -| `mlfoundryServer.commonLabels` | Common labels for the mlfoundry server pods | `{}` | -| `mlfoundryServer.securityContext` | Security context for the mlfoundry server | `{}` | -| `mlfoundryServer.resources.limits.cpu` | CPU limit for the mlfoundry server | `400m` | -| `mlfoundryServer.resources.limits.memory` | Memory limit for the mlfoundry server | `1024Mi` | -| `mlfoundryServer.resources.limits.ephemeral-storage` | Ephemeral storage limit for the mlfoundry server | `256Mi` | -| `mlfoundryServer.resources.requests.cpu` | CPU request for the mlfoundry server | `100m` | -| `mlfoundryServer.resources.requests.memory` | Memory request for the mlfoundry server | `640Mi` | -| `mlfoundryServer.resources.requests.ephemeral-storage` | Ephemeral storage request for the mlfoundry server | `128Mi` | -| `mlfoundryServer.nodeSelector` | Node selector for the mlfoundry server | `{}` | -| `mlfoundryServer.affinity` | Affinity settings for the mlfoundry server | `{}` | -| `mlfoundryServer.topologySpreadConstraints` | Topology spread constraints for the mlfoundry server | `{}` | -| `mlfoundryServer.service.type` | Service type for the mlfoundry server | `ClusterIP` | -| `mlfoundryServer.service.port` | Service port for the mlfoundry server | `5000` | -| `mlfoundryServer.service.annotations` | Annotations for the mlfoundry server service | `{}` | -| `mlfoundryServer.serviceAccount.annotations` | Annotations for the mlfoundry server service account | `{}` | -| `mlfoundryServer.imageTag` | Image tag for the mlfoundry server | `v0.2.117-rc.1` | -| `mlfoundryServer.imagePullSecrets` | Image pull credentials for mlfoundry server | `[]` | -| `mlfoundryServer.extraVolumes` | Extra volumes for the mlfoundry server | `[]` | -| `mlfoundryServer.extraVolumeMounts` | Extra volume mounts for the mlfoundry server | `[]` | -| `servicefoundryServer.enabled` | Bool to enable the servicefoundry server | `true` | -| `servicefoundryServer.tolerations` | Tolerations specific to the servicefoundry server | `{}` | -| `servicefoundryServer.replicaCount` | Number of replicas for the servicefoundry server | `1` | -| `servicefoundryServer.global` | Global values for the servicefoundry server | `{}` | -| `servicefoundryServer.imageRepository` | Image repository for the servicefoundry server | `truefoundrycloud/servicefoundry-server` | -| `servicefoundryServer.environmentName` | Environment name for the servicefoundry server | `default` | -| `servicefoundryServer.envSecretName` | Secret name for the servicefoundry server environment variables | `servicefoundry-server-env-secret` | -| `servicefoundryServer.imagePullPolicy` | Image pull policy for the servicefoundry server | `IfNotPresent` | -| `servicefoundryServer.nameOverride` | Override name for the servicefoundry server | `""` | -| `servicefoundryServer.fullnameOverride` | Full name override for the servicefoundry server | `""` | -| `servicefoundryServer.podAnnotations` | Annotations for the servicefoundry server pods | `{}` | -| `servicefoundryServer.podSecurityContext` | Security context for the servicefoundry server pods | `{}` | -| `servicefoundryServer.commonLabels` | Common labels for the servicefoundry server pods | `{}` | -| `servicefoundryServer.securityContext` | Security context for the servicefoundry server | `{}` | -| `servicefoundryServer.resources.limits.cpu` | CPU limit for the servicefoundry server | `600m` | -| `servicefoundryServer.resources.limits.memory` | Memory limit for the servicefoundry server | `1024Mi` | -| `servicefoundryServer.resources.limits.ephemeral-storage` | Ephemeral storage limit for the servicefoundry server | `256Mi` | -| `servicefoundryServer.resources.requests.cpu` | CPU request for the servicefoundry server | `400m` | -| `servicefoundryServer.resources.requests.memory` | Memory request for the servicefoundry server | `512Mi` | -| `servicefoundryServer.resources.requests.ephemeral-storage` | Ephemeral storage request for the servicefoundry server | `128Mi` | -| `servicefoundryServer.nodeSelector` | Node selector for the servicefoundry server | `{}` | -| `servicefoundryServer.affinity` | Affinity settings for the servicefoundry server | `{}` | -| `servicefoundryServer.topologySpreadConstraints` | Topology spread constraints for the servicefoundry server | `{}` | -| `servicefoundryServer.service.type` | Service type for the servicefoundry server | `ClusterIP` | -| `servicefoundryServer.service.port` | Service port for the servicefoundry server | `3000` | -| `servicefoundryServer.service.annotations` | Annotations for the servicefoundry server service | `{}` | -| `servicefoundryServer.serviceAccount.annotations` | Annotations for the servicefoundry server service account | `{}` | -| `servicefoundryServer.extraVolumes` | Extra volumes for the servicefoundry server | `[]` | -| `servicefoundryServer.extraVolumeMounts` | Extra volume mounts for the servicefoundry server | `[]` | -| `servicefoundryServer.imagePullSecrets` | Image pull credentials for servicefoundry server | `[]` | -| `servicefoundryServer.rbac.enabled` | Enable RBAC for the servicefoundry server | `true` | -| `servicefoundryServer.configs.cicdTemplates` | CICD Template for servicefoundry server | `{{ .Release.Name }}-cicd-templates-cm` | -| `servicefoundryServer.imageTag` | Image Tag for servicefoundry server | `v0.3.155-rc.1` | -| `tfyK8sController.enabled` | Bool to enable the tfyK8sController | `true` | -| `tfyK8sController.tolerations` | Tolerations specific to the tfyK8sController | `{}` | -| `tfyK8sController.replicaCount` | Number of replicas for the tfyK8sController | `1` | -| `tfyK8sController.global` | Global values for the tfyK8sController | `{}` | -| `tfyK8sController.imageRepository` | Image repository for the tfyK8sController | `truefoundrycloud/tfy-k8s-controller` | -| `tfyK8sController.environmentName` | Environment name for tfyK8sController | `default` | -| `tfyK8sController.envSecretName` | Secret name for the tfyK8sController environment variables | `tfy-k8s-controller-env-secret` | -| `tfyK8sController.imagePullPolicy` | Image pull policy for the tfyK8sController | `IfNotPresent` | -| `tfyK8sController.nameOverride` | Override name for the tfyK8sController | `""` | -| `tfyK8sController.fullnameOverride` | Full name override for the tfyK8sController | `""` | -| `tfyK8sController.podAnnotations` | Annotations for the tfyK8sController pods | `{}` | -| `tfyK8sController.podSecurityContext` | Security context for the tfyK8sController pods | `{}` | -| `tfyK8sController.commonLabels` | Common labels for the tfyK8sController pods | `{}` | -| `tfyK8sController.securityContext` | Security context for the tfyK8sController | `{}` | -| `tfyK8sController.resources.limits.cpu` | CPU limit for the tfyK8sController | `400m` | -| `tfyK8sController.resources.limits.memory` | Memory limit for the tfyK8sController | `512Mi` | -| `tfyK8sController.resources.limits.ephemeral-storage` | Ephemeral storage limit for the tfyK8sController | `256Mi` | -| `tfyK8sController.resources.requests.cpu` | CPU request for the tfyK8sController | `200m` | -| `tfyK8sController.resources.requests.memory` | Memory request for the tfyK8sController | `256Mi` | -| `tfyK8sController.resources.requests.ephemeral-storage` | Ephemeral storage request for the tfyK8sController | `128Mi` | -| `tfyK8sController.nodeSelector` | Node selector for the tfyK8sController | `{}` | -| `tfyK8sController.affinity` | Affinity settings for the tfyK8sController | `{}` | -| `tfyK8sController.topologySpreadConstraints` | Topology spread constraints for the tfyK8sController | `{}` | -| `tfyK8sController.service.type` | Service type for the tfyK8sController | `ClusterIP` | -| `tfyK8sController.service.port` | Service port for the tfyK8sController | `3002` | -| `tfyK8sController.service.annotations` | Annotations for the tfyK8sController service | `{}` | -| `tfyK8sController.serviceAccount.annotations` | Annotations for the tfyK8sController service account | `{}` | -| `tfyK8sController.extraVolumes` | Extra volumes for the tfyK8sController | `[]` | -| `tfyK8sController.extraVolumeMounts` | Extra volume mounts for the tfyK8sController | `[]` | -| `tfyK8sController.imagePullSecrets` | Image pull secrets for the tfyK8sController | `[]` | -| `tfyK8sController.imageTag` | Image Tag for tfyK8sController | `v0.1.2-rc.1` | -| `sfyManifestService.enabled` | Bool to enable the sfy manifest service | `true` | -| `sfyManifestService.tolerations` | Tolerations specific to the sfy manifest service | `{}` | -| `sfyManifestService.global` | Global values for the sfy manifest service | `{}` | -| `sfyManifestService.imageRepository` | Image repository for the sfy manifest service | `truefoundrycloud/sfy-manifest-service` | -| `sfyManifestService.replicaCount` | Number of replicas for the sfy manifest service | `1` | -| `sfyManifestService.environmentName` | Environment name for the sfy manifest service | `default` | -| `sfyManifestService.envSecretName` | Secret name for the sfy manifest service environment variables | `sfy-manifest-service-env-secret` | -| `sfyManifestService.imagePullPolicy` | Image pull policy for the sfy manifest service | `IfNotPresent` | -| `sfyManifestService.nameOverride` | Override name for the sfy manifest service | `""` | -| `sfyManifestService.fullnameOverride` | Full name override for the sfy manifest service | `""` | -| `sfyManifestService.podAnnotations` | Annotations for the sfy manifest service pods | `{}` | -| `sfyManifestService.podSecurityContext` | Security context for the sfy manifest service pods | `{}` | -| `sfyManifestService.commonLabels` | Common labels for the sfy manifest service pods | `{}` | -| `sfyManifestService.securityContext` | Security context for the sfy manifest service | `{}` | -| `sfyManifestService.resources.limits.cpu` | CPU limit for the sfy manifest service | `200m` | -| `sfyManifestService.resources.limits.memory` | Memory limit for the sfy manifest service | `512Mi` | -| `sfyManifestService.resources.limits.ephemeral-storage` | Ephemeral storage limit for the sfy manifest service | `256Mi` | -| `sfyManifestService.resources.requests.cpu` | CPU request for the sfy manifest service | `100m` | -| `sfyManifestService.resources.requests.memory` | Memory request for the sfy manifest service | `256Mi` | -| `sfyManifestService.resources.requests.ephemeral-storage` | Ephemeral storage request for the sfy manifest service | `128Mi` | -| `sfyManifestService.nodeSelector` | Node selector for the sfy manifest service | `{}` | -| `sfyManifestService.affinity` | Affinity settings for the sfy manifest service | `{}` | -| `sfyManifestService.topologySpreadConstraints` | Topology spread constraints for the sfy manifest service | `{}` | -| `sfyManifestService.service.type` | Service type for the sfy manifest service | `ClusterIP` | -| `sfyManifestService.service.port` | Service port for the sfy manifest service | `8080` | -| `sfyManifestService.service.annotations` | Annotations for the sfy manifest service | `{}` | -| `sfyManifestService.serviceAccount.annotations` | Annotations for the sfy manifest service service account | `{}` | -| `sfyManifestService.extraVolumes` | Extra volumes for the sfy manifest service | `[]` | -| `sfyManifestService.extraVolumeMounts` | Extra volume mounts for the sfy manifest service | `[]` | -| `sfyManifestService.imagePullSecrets` | Image pull credentials for the sfy manifest service | `[]` | -| `sfyManifestService.imageTag` | Image tag for the sfy manifest service | `0.1.131-rc.1` | -| `nats.enabled` | Bool to enable the NATS server | `true` | -| `nats.nats.image.repository` | NATS server image repository | `nats` | -| `nats.nats.image.tag` | NATS server image tag | `2.10.18-alpine3.20` | -| `nats.nats.advertise` | Bool to enable NATS server advertise | `false` | -| `nats.nats.imagePullSecrets` | Image pull credentials for NATS server | `[]` | -| `nats.nats.jetstream.enabled` | Bool to enable Jetstream for NATS server | `true` | -| `nats.nats.jetstream.memStorage.enabled` | Bool to enable memory for Jetstream | `true` | -| `nats.nats.jetstream.memStorage.size` | Memory Storage size for Jetstream | `1Gi` | -| `nats.nats.jetstream.fileStorage.enabled` | Bool to enable file storage for Jetstream | `true` | -| `nats.nats.jetstream.fileStorage.storageDirectory` | Storage directory | `/data` | -| `nats.nats.jetstream.fileStorage.size` | Size for file storage for Jetstream | `10Gi` | -| `nats.nats.jetstream.fileStorage.accessModes` | Storage directory Access Modes | `["ReadWriteOnce"]` | -| `nats.nats.logging.debug` | Bool to enable debug logging for NATS server | `true` | -| `nats.natsbox.enabled` | Bool to enable NATSBox | `false` | -| `nats.natsbox.image.repository` | NATSBox image repository | `natsio/nats-box` | -| `nats.natsbox.image.tag` | NATSBox image tag | `0.13.2` | -| `nats.natsbox.imagePullSecrets` | Image pull credentials for NATSBox | `[]` | -| `nats.exporter.enabled` | Bool to enable NATS exporter | `true` | -| `nats.exporter.image.repository` | NATS exporter image repository | `natsio/prometheus-nats-exporter` | -| `nats.exporter.image.tag` | NATS exporter image tag | `0.14.0` | -| `nats.reloader.enabled` | Bool to enable NATS reloader | `true` | -| `nats.reloader.image.repository` | NATS reloader image repository | `natsio/nats-server-config-reloader` | -| `nats.reloader.image.tag` | NATS reloader image tag | `0.14.1` | -| `nats.cluster.enabled` | Bool to enable NATS cluster | `true` | -| `nats.cluster.replicas` | Number of replicas for NATS cluster | `3` | -| `nats.cluster.noAdvertise` | Bool to enable NATS cluster | `true` | -| `nats.websocket.enabled` | Bool to enable NATS websocket | `true` | -| `nats.websocket.port` | Port for NATS websocket | `443` | -| `nats.websocket.noTLS` | Bool to enable NATS websocket without TLS | `true` | -| `nats.websocket.sameOrigin` | Bool to enable NATS websocket same origin | `false` | -| `nats.websocket.allowedOrigins` | Allowed origins for NATS websocket | `[]` | -| `nats.auth.enabled` | Bool to enable NATS authentication | `true` | -| `nats.auth.resolver.type` | Type for NATS authentication resolver | `memory` | -| `tfyBuild.enabled` | Bool to enable the tfyBuild server | `true` | -| `tfyBuild.global` | Global values for the tfyBuild server | `{}` | -| `tfyBuild.nameOverride` | Override name for the tfyBuild server | `""` | -| `tfyBuild.fullnameOverride` | Full name override for the tfyBuild server | `""` | -| `tfyBuild.serviceAccount.annotations` | Annotations for the tfyBuild server service account | `{}` | -| `tfyBuild.preemptibleDeployment.enabled` | Bool to enable preemptible deployment for the tfyBuild server | `false` | -| `tfyBuild.preemptibleDeployment.extraEnvs` | Extra environment variables for the tfyBuild server | `[]` | -| `tfyBuild.preemptibleDeployment.extraVolumeMounts` | Extra volume mounts for the tfyBuild server | `[]` | -| `tfyBuild.preemptibleDeployment.extraVolumes` | Extra volumes for the tfyBuild server | `[]` | -| `tfyBuild.truefoundryWorkflows.sfyBuilder.version` | syftBuilder Version | `0.8.0rc2` | -| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.limits.cpu` | CPU limit for the sfyBuilder | `1` | -| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.limits.ephemeral-storage` | Ephemeral storage limit for the sfyBuilder | `20Gi` | -| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.limits.memory` | Memory limit for the sfyBuilder | `2Gi` | -| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.requests.cpu` | CPU request for the sfyBuilder | `200m` | -| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.requests.ephemeral-storage` | Ephemeral storage request for the sfyBuilder | `10Gi` | -| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.requests.memory` | Memory request for the sfyBuilder | `500Mi` | -| `tfyBuild.truefoundryWorkflows.extraEnvs` | Extra environment variables for the tfyBuild server | `[]` | -| `tfyBuild.truefoundryWorkflows.extraVolumeMounts` | Extra volume mounts for the tfyBuild server | `[]` | -| `tfyBuild.truefoundryWorkflows.extraVolumes` | Extra volumes for the tfyBuild server | `[]` | -| `tfyBuild.truefoundryWorkflows.affinity` | Affinity settings for the tfyBuild server | `{}` | -| `tfyBuild.truefoundryWorkflows.nodeSelector` | Node selector for the tfyBuild server | `{}` | -| `tfyBuild.truefoundryWorkflows.logMarkers.error` | Error log marker for the tfyBuild server | `\u001b[31m[Error]\u001b[0m` | -| `tfyBuild.truefoundryWorkflows.logMarkers.done` | Done log marker for the tfyBuild server | `\u001b[32m[Done]\u001b[0m` | -| `tfyBuild.truefoundryWorkflows.logMarkers.start` | Start log marker for the tfyBuild server | `\u001b[36m[Start]\u001b[0m` | -| `tfyBuild.truefoundryWorkflows.logMarkers.clientPrefix` | Client prefix for the tfyBuild server | `["TFY-CLIENT"]` | -| `tfyBuild.truefoundryWorkflows.logMarkers.supportSlack` | Slack support URL for the tfyBuild server | `https://join.slack.com/t/truefoundry/shared_invite/zt-11ht512jq-nDJq~HJMqc6wBw90JVlo7g` | -| `tfyBuild.truefoundryWorkflows.logMarkers.serviceFoundryUiUrl` | Service foundry UI URL | `https://app.truefoundry.com/workspace` | -| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.enabled` | Bool to enable SOCI index build and push | `false` | -| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.image.repository` | Repository for the SOCI index build and push | `public.ecr.aws/truefoundrycloud/soci-index-builder` | -| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.image.tag` | Tag for the SOCI index build and push | `0.2.0-rc.1` | -| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.imageSizeThresholdBytes` | Image size threshold for the SOCI index build and push | `419430400` | -| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.extraEnvs` | Extra environment variables for the SOCI index build and push | `[]` | -| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.extraVolumeMounts` | Extra volume mounts for the SOCI index build and push | `[]` | -| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.extraVolume` | | `[]` | -| `tfy-buildkitd-service.enabled` | Bool to enable the tfy-buildkitd service | `false` | -| `postgresql.auth.existingSecret` | Name of the existing secret for PostgreSQL authentication | `truefoundry-postgresql-auth-secret` | -| `postgresql.auth.database` | Name of the database for PostgreSQL | `truefoundry` | -| `tfyController.enabled` | Bool to enable the tfyController | `true` | -| `tfyController.global` | Global values for the tfyController | `{}` | -| `tfyController.imageRepository` | Image repository for the tfyController | `truefoundrycloud/tfy-controller` | -| `tfyController.environmentName` | Environment name for the tfyController | `default` | -| `tfyController.envSecretName` | Secret name for the tfyController environment variables | `sfy-manifest-service-env-secret` | -| `tfyController.imagePullPolicy` | Image pull policy for the tfyController | `IfNotPresent` | -| `tfyController.nameOverride` | Override name for the tfyController | `""` | -| `tfyController.fullnameOverride` | Full name override for the tfyController | `""` | -| `tfyController.podAnnotations` | Annotations for the tfyController pods | `{}` | -| `tfyController.podSecurityContext` | Security context for the tfyController pods | `{}` | -| `tfyController.commonLabels` | Common labels for the tfyController pods | `{}` | -| `tfyController.securityContext` | Security context for the tfyController | `{}` | -| `tfyController.imagePullSecrets` | Image pull secrets for the tfycontroller | `[]` | -| `tfyController.nodeSelector` | Node selector for the tfyController | `{}` | -| `tfyController.affinity` | Affinity settings for the tfyController | `{}` | -| `tfyController.service.type` | Service type for the tfyController | `ClusterIP` | -| `tfyController.service.port` | Service port for the tfyController | `8123` | -| `tfyController.service.annotations` | Annotations for the tfyController service | `{}` | -| `tfyController.serviceAccount.annotations` | Annotations for the tfyController service account | `{}` | -| `tfyController.imageTag` | Image tag for the tfyController | `v0.0.26-rc.1` | +| Name | Description | Value | +| ------------------------------------------------------------------------------- | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------ | +| `global.existingTruefoundryImagePullSecretName` | Name of the existing image pull secret | `""` | +| `global.truefoundryImagePullConfigJSON` | JSON config for image pull secret | `""` | +| `global.tenantName` | Name of the tenant | `""` | +| `global.controlPlaneURL` | URL of the control plane | `http://truefoundry-truefoundry-frontend-app.truefoundry.svc.cluster.local:5000` | +| `global.existingTruefoundryCredsSecret` | Name of the existing truefoundry creds secret | `""` | +| `global.database.host` | Control plane database hostname when dev mode is not enabled | `""` | +| `global.database.name` | Control plane database name when dev mode is not enabled | `""` | +| `global.database.username` | Control plane database username when dev mode is not enabled | `""` | +| `global.database.password` | Control plane database password when dev mode is not enabled | `""` | +| `global.tfyApiKey` | API key for truefoundry | `""` | +| `global.affinity` | Affinity for all services | `{}` | +| `devMode.enabled` | Bool to enable dev mode | `false` | +| `truefoundryBootstrap.enabled` | Bool to enable truefoundry bootstrap | `true` | +| `truefoundryBootstrap.image.repository` | Truefoundry bootstrap image repository | `docker.io/library/ubuntu` | +| `truefoundryBootstrap.image.tag` | Truefoundry bootstrap image tag | `latest` | +| `truefoundryBootstrap.natsConfigmapName` | Truefoundry nats configmap name | `nats-accounts` | +| `truefoundryBootstrap.extraEnvVars` | Extra environment variables for the bootstrap container | `[]` | +| `truefoundryBootstrap.extraVolumeMounts` | Extra volume mounts for the bootstrap container | `[]` | +| `truefoundryBootstrap.extraVolumes` | Extra volumes for the bootstrap container | `[]` | +| `truefoundryBootstrap.affinity` | Affinity for the bootstrap container | `{}` | +| `truefoundryBootstrap.nodeSelector` | Node selector for the bootstrap container | `{}` | +| `truefoundryBootstrap.tolerations` | Tolerations specific to the bootstrap container | `{}` | +| `truefoundryBootstrap.imagePullSecrets` | Image pull secrets for the bootstrap container | `[]` | +| `truefoundryFrontendApp.enabled` | Bool to enable the frontend app | `true` | +| `truefoundryFrontendApp.tolerations` | Tolerations specific to the frontend app | `{}` | +| `truefoundryFrontendApp.replicaCount` | Number of replicas for the frontend app | `1` | +| `truefoundryFrontendApp.global` | Global values for the frontend app | `{}` | +| `truefoundryFrontendApp.imageRepository` | Image repository for the frontend app | `truefoundrycloud/truefoundry-frontend-app` | +| `truefoundryFrontendApp.envSecretName` | Secret name for the frontend app environment variables | `truefoundry-frontend-app-env-secret` | +| `truefoundryFrontendApp.imagePullPolicy` | Image pull policy for the frontend app | `IfNotPresent` | +| `truefoundryFrontendApp.nameOverride` | Override name for the frontend app | `""` | +| `truefoundryFrontendApp.fullnameOverride` | Full name override for the frontend app | `""` | +| `truefoundryFrontendApp.podAnnotations` | Annotations for the frontend app pods | `{}` | +| `truefoundryFrontendApp.podSecurityContext` | Security context for the frontend app pods | `{}` | +| `truefoundryFrontendApp.commonLabels` | Common labels for the frontend app pods | `{}` | +| `truefoundryFrontendApp.securityContext` | Security context for the frontend app | `{}` | +| `truefoundryFrontendApp.resources.limits.cpu` | CPU limit for the frontend app | `200m` | +| `truefoundryFrontendApp.resources.limits.memory` | Memory limit for the frontend app | `512Mi` | +| `truefoundryFrontendApp.resources.limits.ephemeral-storage` | Ephemeral storage limit for the frontend app | `256Mi` | +| `truefoundryFrontendApp.resources.requests.cpu` | CPU request for the frontend app | `25m` | +| `truefoundryFrontendApp.resources.requests.memory` | Memory request for the frontend app | `256Mi` | +| `truefoundryFrontendApp.resources.requests.ephemeral-storage` | Ephemeral storage request for the frontend app | `128Mi` | +| `truefoundryFrontendApp.nodeSelector` | Node selector for the frontend app | `{}` | +| `truefoundryFrontendApp.affinity` | Affinity settings for the frontend app | `{}` | +| `truefoundryFrontendApp.topologySpreadConstraints` | Topology spread constraints for the frontend app | `{}` | +| `truefoundryFrontendApp.service.type` | Service type for the frontend app | `ClusterIP` | +| `truefoundryFrontendApp.service.port` | Service port for the frontend app | `5000` | +| `truefoundryFrontendApp.service.annotations` | Annotations for the frontend app service | `{}` | +| `truefoundryFrontendApp.ingress.enabled` | Enable ingress for the frontend app | `false` | +| `truefoundryFrontendApp.ingress.annotations` | Annotations for the frontend app ingress | `{}` | +| `truefoundryFrontendApp.ingress.labels` | Labels for the frontend app ingress | `{}` | +| `truefoundryFrontendApp.ingress.ingressClassName` | Ingress class name for the frontend app | `istio` | +| `truefoundryFrontendApp.ingress.tls` | TLS settings for the frontend app | `[]` | +| `truefoundryFrontendApp.ingress.hosts` | Hosts for the frontend app | `[]` | +| `truefoundryFrontendApp.istio.virtualservice.enabled` | Enable virtual service for the frontend app | `false` | +| `truefoundryFrontendApp.istio.virtualservice.annotations` | Annotations for the frontend app virtual service | `{}` | +| `truefoundryFrontendApp.istio.virtualservice.gateways` | Gateways for the frontend app virtual service | `[]` | +| `truefoundryFrontendApp.istio.virtualservice.hosts` | Hosts for the frontend app virtual service | `[]` | +| `truefoundryFrontendApp.imageTag` | Image tag for the frontend app | `v0.3.152-rc.1` | +| `truefoundryFrontendApp.servicefoundryServerHost` | Servicefoundry server host for the frontend app | `{{ .Release.Name }}-servicefoundry-server.{{ .Release.Namespace }}.svc.cluster.local` | +| `truefoundryFrontendApp.tfyWorkflowAdminHost` | tfy workflow admin host for the frontend app | `{{ .Release.Name }}-tfy-workflow-admin-server.{{ .Release.Namespace }}.svc.cluster.local` | +| `truefoundryFrontendApp.llmGateway.external` | Make LLMGateway external | `false` | +| `truefoundryFrontendApp.llmGateway.backendHost` | Backend Host for the LLM gateway | `{{ .Release.Name }}-llm-gateway.{{ .Release.Namespace }}.svc.cluster.local` | +| `truefoundryFrontendApp.llmGateway.backendPort` | Backend Port for the LLM gateway | `8787` | +| `truefoundryFrontendApp.proxyServerHost` | Proxy server host for the frontend app | `{{ .Release.Name }}-tfy-controller.{{ .Release.Namespace }}.svc.cluster.local` | +| `truefoundryFrontendApp.serviceAccount.annotations` | Annotations for the frontend app service account | `{}` | +| `truefoundryFrontendApp.extraVolumes` | Extra volumes for the frontend app | `[]` | +| `truefoundryFrontendApp.extraVolumeMounts` | Extra volume mounts for the frontend app | `[]` | +| `truefoundryFrontendApp.imagePullSecrets` | Image pull secrets for the frontend app | `[]` | +| `mlfoundryServer.enabled` | Bool to enable the mlfoundry server | `true` | +| `mlfoundryServer.tolerations` | Tolerations specific to the mlfoundry server | `{}` | +| `mlfoundryServer.imageRepository` | Image repository for the mlfoundry server | `truefoundrycloud/mlfoundry-server` | +| `mlfoundryServer.replicaCount` | Number of replicas for the mlfoundry server | `1` | +| `mlfoundryServer.environmentName` | Environment name for the mlfoundry server | `default` | +| `mlfoundryServer.envSecretName` | Secret name for the mlfoundry server environment variables | `mlfoundry-server-env-secret` | +| `mlfoundryServer.imagePullPolicy` | Image pull policy for the mlfoundry server | `IfNotPresent` | +| `mlfoundryServer.nameOverride` | Override name for the mlfoundry server | `""` | +| `mlfoundryServer.fullnameOverride` | Full name override for the mlfoundry server | `""` | +| `mlfoundryServer.podAnnotations` | Annotations for the mlfoundry server pods | `{}` | +| `mlfoundryServer.podSecurityContext` | Security context for the mlfoundry server pods | `{}` | +| `mlfoundryServer.commonLabels` | Common labels for the mlfoundry server pods | `{}` | +| `mlfoundryServer.securityContext` | Security context for the mlfoundry server | `{}` | +| `mlfoundryServer.resources.limits.cpu` | CPU limit for the mlfoundry server | `400m` | +| `mlfoundryServer.resources.limits.memory` | Memory limit for the mlfoundry server | `1024Mi` | +| `mlfoundryServer.resources.limits.ephemeral-storage` | Ephemeral storage limit for the mlfoundry server | `256Mi` | +| `mlfoundryServer.resources.requests.cpu` | CPU request for the mlfoundry server | `100m` | +| `mlfoundryServer.resources.requests.memory` | Memory request for the mlfoundry server | `640Mi` | +| `mlfoundryServer.resources.requests.ephemeral-storage` | Ephemeral storage request for the mlfoundry server | `128Mi` | +| `mlfoundryServer.nodeSelector` | Node selector for the mlfoundry server | `{}` | +| `mlfoundryServer.affinity` | Affinity settings for the mlfoundry server | `{}` | +| `mlfoundryServer.topologySpreadConstraints` | Topology spread constraints for the mlfoundry server | `{}` | +| `mlfoundryServer.service.type` | Service type for the mlfoundry server | `ClusterIP` | +| `mlfoundryServer.service.port` | Service port for the mlfoundry server | `5000` | +| `mlfoundryServer.service.annotations` | Annotations for the mlfoundry server service | `{}` | +| `mlfoundryServer.serviceAccount.annotations` | Annotations for the mlfoundry server service account | `{}` | +| `mlfoundryServer.imageTag` | Image tag for the mlfoundry server | `v0.2.119-rc.1` | +| `mlfoundryServer.imagePullSecrets` | Image pull credentials for mlfoundry server | `[]` | +| `mlfoundryServer.extraVolumes` | Extra volumes for the mlfoundry server | `[]` | +| `mlfoundryServer.extraVolumeMounts` | Extra volume mounts for the mlfoundry server | `[]` | +| `servicefoundryServer.enabled` | Bool to enable the servicefoundry server | `true` | +| `servicefoundryServer.tolerations` | Tolerations specific to the servicefoundry server | `{}` | +| `servicefoundryServer.replicaCount` | Number of replicas for the servicefoundry server | `1` | +| `servicefoundryServer.global` | Global values for the servicefoundry server | `{}` | +| `servicefoundryServer.imageRepository` | Image repository for the servicefoundry server | `truefoundrycloud/servicefoundry-server` | +| `servicefoundryServer.environmentName` | Environment name for the servicefoundry server | `default` | +| `servicefoundryServer.envSecretName` | Secret name for the servicefoundry server environment variables | `servicefoundry-server-env-secret` | +| `servicefoundryServer.imagePullPolicy` | Image pull policy for the servicefoundry server | `IfNotPresent` | +| `servicefoundryServer.nameOverride` | Override name for the servicefoundry server | `""` | +| `servicefoundryServer.fullnameOverride` | Full name override for the servicefoundry server | `""` | +| `servicefoundryServer.podAnnotations` | Annotations for the servicefoundry server pods | `{}` | +| `servicefoundryServer.podSecurityContext` | Security context for the servicefoundry server pods | `{}` | +| `servicefoundryServer.commonLabels` | Common labels for the servicefoundry server pods | `{}` | +| `servicefoundryServer.securityContext` | Security context for the servicefoundry server | `{}` | +| `servicefoundryServer.resources.limits.cpu` | CPU limit for the servicefoundry server | `600m` | +| `servicefoundryServer.resources.limits.memory` | Memory limit for the servicefoundry server | `1024Mi` | +| `servicefoundryServer.resources.limits.ephemeral-storage` | Ephemeral storage limit for the servicefoundry server | `256Mi` | +| `servicefoundryServer.resources.requests.cpu` | CPU request for the servicefoundry server | `400m` | +| `servicefoundryServer.resources.requests.memory` | Memory request for the servicefoundry server | `512Mi` | +| `servicefoundryServer.resources.requests.ephemeral-storage` | Ephemeral storage request for the servicefoundry server | `128Mi` | +| `servicefoundryServer.nodeSelector` | Node selector for the servicefoundry server | `{}` | +| `servicefoundryServer.affinity` | Affinity settings for the servicefoundry server | `{}` | +| `servicefoundryServer.topologySpreadConstraints` | Topology spread constraints for the servicefoundry server | `{}` | +| `servicefoundryServer.service.type` | Service type for the servicefoundry server | `ClusterIP` | +| `servicefoundryServer.service.port` | Service port for the servicefoundry server | `3000` | +| `servicefoundryServer.service.annotations` | Annotations for the servicefoundry server service | `{}` | +| `servicefoundryServer.serviceAccount.annotations` | Annotations for the servicefoundry server service account | `{}` | +| `servicefoundryServer.extraVolumes` | Extra volumes for the servicefoundry server | `[]` | +| `servicefoundryServer.extraVolumeMounts` | Extra volume mounts for the servicefoundry server | `[]` | +| `servicefoundryServer.imagePullSecrets` | Image pull credentials for servicefoundry server | `[]` | +| `servicefoundryServer.rbac.enabled` | Enable RBAC for the servicefoundry server | `true` | +| `servicefoundryServer.configs.cicdTemplates` | CICD Template for servicefoundry server | `{{ .Release.Name }}-cicd-templates-cm` | +| `servicefoundryServer.configs.workbenchImages` | Workbench Images for servicefoundry server | `{{ .Release.Name }}-workbench-images-cm` | +| `servicefoundryServer.imageTag` | Image Tag for servicefoundry server | `v0.4.2-rc.1` | +| `tfyK8sController.enabled` | Bool to enable the tfyK8sController | `true` | +| `tfyK8sController.tolerations` | Tolerations specific to the tfyK8sController | `{}` | +| `tfyK8sController.replicaCount` | Number of replicas for the tfyK8sController | `1` | +| `tfyK8sController.global` | Global values for the tfyK8sController | `{}` | +| `tfyK8sController.imageRepository` | Image repository for the tfyK8sController | `truefoundrycloud/tfy-k8s-controller` | +| `tfyK8sController.environmentName` | Environment name for tfyK8sController | `default` | +| `tfyK8sController.envSecretName` | Secret name for the tfyK8sController environment variables | `tfy-k8s-controller-env-secret` | +| `tfyK8sController.imagePullPolicy` | Image pull policy for the tfyK8sController | `IfNotPresent` | +| `tfyK8sController.nameOverride` | Override name for the tfyK8sController | `""` | +| `tfyK8sController.fullnameOverride` | Full name override for the tfyK8sController | `""` | +| `tfyK8sController.podAnnotations` | Annotations for the tfyK8sController pods | `{}` | +| `tfyK8sController.podSecurityContext` | Security context for the tfyK8sController pods | `{}` | +| `tfyK8sController.commonLabels` | Common labels for the tfyK8sController pods | `{}` | +| `tfyK8sController.securityContext` | Security context for the tfyK8sController | `{}` | +| `tfyK8sController.resources.limits.cpu` | CPU limit for the tfyK8sController | `400m` | +| `tfyK8sController.resources.limits.memory` | Memory limit for the tfyK8sController | `512Mi` | +| `tfyK8sController.resources.limits.ephemeral-storage` | Ephemeral storage limit for the tfyK8sController | `256Mi` | +| `tfyK8sController.resources.requests.cpu` | CPU request for the tfyK8sController | `200m` | +| `tfyK8sController.resources.requests.memory` | Memory request for the tfyK8sController | `256Mi` | +| `tfyK8sController.resources.requests.ephemeral-storage` | Ephemeral storage request for the tfyK8sController | `128Mi` | +| `tfyK8sController.nodeSelector` | Node selector for the tfyK8sController | `{}` | +| `tfyK8sController.affinity` | Affinity settings for the tfyK8sController | `{}` | +| `tfyK8sController.topologySpreadConstraints` | Topology spread constraints for the tfyK8sController | `{}` | +| `tfyK8sController.service.type` | Service type for the tfyK8sController | `ClusterIP` | +| `tfyK8sController.service.port` | Service port for the tfyK8sController | `3002` | +| `tfyK8sController.service.annotations` | Annotations for the tfyK8sController service | `{}` | +| `tfyK8sController.serviceAccount.annotations` | Annotations for the tfyK8sController service account | `{}` | +| `tfyK8sController.extraVolumes` | Extra volumes for the tfyK8sController | `[]` | +| `tfyK8sController.extraVolumeMounts` | Extra volume mounts for the tfyK8sController | `[]` | +| `tfyK8sController.imagePullSecrets` | Image pull secrets for the tfyK8sController | `[]` | +| `tfyK8sController.imageTag` | Image Tag for tfyK8sController | `v0.1.4-rc.1` | +| `sfyManifestService.enabled` | Bool to enable the sfy manifest service | `true` | +| `sfyManifestService.tolerations` | Tolerations specific to the sfy manifest service | `{}` | +| `sfyManifestService.global` | Global values for the sfy manifest service | `{}` | +| `sfyManifestService.imageRepository` | Image repository for the sfy manifest service | `truefoundrycloud/sfy-manifest-service` | +| `sfyManifestService.replicaCount` | Number of replicas for the sfy manifest service | `1` | +| `sfyManifestService.environmentName` | Environment name for the sfy manifest service | `default` | +| `sfyManifestService.envSecretName` | Secret name for the sfy manifest service environment variables | `sfy-manifest-service-env-secret` | +| `sfyManifestService.imagePullPolicy` | Image pull policy for the sfy manifest service | `IfNotPresent` | +| `sfyManifestService.nameOverride` | Override name for the sfy manifest service | `""` | +| `sfyManifestService.fullnameOverride` | Full name override for the sfy manifest service | `""` | +| `sfyManifestService.podAnnotations` | Annotations for the sfy manifest service pods | `{}` | +| `sfyManifestService.podSecurityContext` | Security context for the sfy manifest service pods | `{}` | +| `sfyManifestService.commonLabels` | Common labels for the sfy manifest service pods | `{}` | +| `sfyManifestService.securityContext` | Security context for the sfy manifest service | `{}` | +| `sfyManifestService.resources.limits.cpu` | CPU limit for the sfy manifest service | `200m` | +| `sfyManifestService.resources.limits.memory` | Memory limit for the sfy manifest service | `512Mi` | +| `sfyManifestService.resources.limits.ephemeral-storage` | Ephemeral storage limit for the sfy manifest service | `256Mi` | +| `sfyManifestService.resources.requests.cpu` | CPU request for the sfy manifest service | `100m` | +| `sfyManifestService.resources.requests.memory` | Memory request for the sfy manifest service | `256Mi` | +| `sfyManifestService.resources.requests.ephemeral-storage` | Ephemeral storage request for the sfy manifest service | `128Mi` | +| `sfyManifestService.nodeSelector` | Node selector for the sfy manifest service | `{}` | +| `sfyManifestService.affinity` | Affinity settings for the sfy manifest service | `{}` | +| `sfyManifestService.topologySpreadConstraints` | Topology spread constraints for the sfy manifest service | `{}` | +| `sfyManifestService.service.type` | Service type for the sfy manifest service | `ClusterIP` | +| `sfyManifestService.service.port` | Service port for the sfy manifest service | `8080` | +| `sfyManifestService.service.annotations` | Annotations for the sfy manifest service | `{}` | +| `sfyManifestService.serviceAccount.annotations` | Annotations for the sfy manifest service service account | `{}` | +| `sfyManifestService.extraVolumes` | Extra volumes for the sfy manifest service | `[]` | +| `sfyManifestService.extraVolumeMounts` | Extra volume mounts for the sfy manifest service | `[]` | +| `sfyManifestService.imagePullSecrets` | Image pull credentials for the sfy manifest service | `[]` | +| `sfyManifestService.imageTag` | Image tag for the sfy manifest service | `0.1.133` | +| `nats.enabled` | Bool to enable the NATS server | `true` | +| `nats.nats.image.repository` | NATS server image repository | `nats` | +| `nats.nats.image.tag` | NATS server image tag | `2.10.18-alpine3.20` | +| `nats.nats.advertise` | Bool to enable NATS server advertise | `false` | +| `nats.nats.imagePullSecrets` | Image pull credentials for NATS server | `[]` | +| `nats.nats.jetstream.enabled` | Bool to enable Jetstream for NATS server | `true` | +| `nats.nats.jetstream.memStorage.enabled` | Bool to enable memory for Jetstream | `true` | +| `nats.nats.jetstream.memStorage.size` | Memory Storage size for Jetstream | `1Gi` | +| `nats.nats.jetstream.fileStorage.enabled` | Bool to enable file storage for Jetstream | `true` | +| `nats.nats.jetstream.fileStorage.storageDirectory` | Storage directory | `/data` | +| `nats.nats.jetstream.fileStorage.size` | Size for file storage for Jetstream | `10Gi` | +| `nats.nats.jetstream.fileStorage.accessModes` | Storage directory Access Modes | `["ReadWriteOnce"]` | +| `nats.nats.logging.debug` | Bool to enable debug logging for NATS server | `true` | +| `nats.nats.resources.limits.cpu` | CPU limit for NATS server | `50m` | +| `nats.nats.resources.limits.memory` | Memory limit for NATS server | `512Mi` | +| `nats.nats.resources.requests.cpu` | CPU request for NATS server | `25m` | +| `nats.nats.resources.requests.memory` | Memory request for NATS server | `256Mi` | +| `nats.natsbox.enabled` | Bool to enable NATSBox | `false` | +| `nats.natsbox.image.repository` | NATSBox image repository | `natsio/nats-box` | +| `nats.natsbox.image.tag` | NATSBox image tag | `0.13.2` | +| `nats.natsbox.imagePullSecrets` | Image pull credentials for NATSBox | `[]` | +| `nats.natsbox.resources.limits.cpu` | CPU limit for NATSBox | `50m` | +| `nats.natsbox.resources.limits.memory` | Memory limit for NATSBox | `512Ki` | +| `nats.natsbox.resources.requests.cpu` | CPU request for NATSBox | `25m` | +| `nats.natsbox.resources.requests.memory` | Memory request for NATSBox | `256Ki` | +| `nats.exporter.enabled` | Bool to enable NATS exporter | `true` | +| `nats.exporter.image.repository` | NATS exporter image repository | `natsio/prometheus-nats-exporter` | +| `nats.exporter.image.tag` | NATS exporter image tag | `0.14.0` | +| `nats.reloader.enabled` | Bool to enable NATS reloader | `true` | +| `nats.reloader.image.repository` | NATS reloader image repository | `natsio/nats-server-config-reloader` | +| `nats.reloader.image.tag` | NATS reloader image tag | `0.14.1` | +| `nats.cluster.enabled` | Bool to enable NATS cluster | `true` | +| `nats.cluster.replicas` | Number of replicas for NATS cluster | `3` | +| `nats.cluster.noAdvertise` | Bool to enable NATS cluster | `true` | +| `nats.websocket.enabled` | Bool to enable NATS websocket | `true` | +| `nats.websocket.port` | Port for NATS websocket | `443` | +| `nats.websocket.noTLS` | Bool to enable NATS websocket without TLS | `true` | +| `nats.websocket.sameOrigin` | Bool to enable NATS websocket same origin | `false` | +| `nats.websocket.allowedOrigins` | Allowed origins for NATS websocket | `[]` | +| `nats.auth.enabled` | Bool to enable NATS authentication | `true` | +| `nats.auth.resolver.type` | Type for NATS authentication resolver | `memory` | +| `tfyBuild.enabled` | Bool to enable the tfyBuild server | `true` | +| `tfyBuild.global` | Global values for the tfyBuild server | `{}` | +| `tfyBuild.nameOverride` | Override name for the tfyBuild server | `""` | +| `tfyBuild.fullnameOverride` | Full name override for the tfyBuild server | `""` | +| `tfyBuild.serviceAccount.annotations` | Annotations for the tfyBuild server service account | `{}` | +| `tfyBuild.preemptibleDeployment.enabled` | Bool to enable preemptible deployment for the tfyBuild server | `false` | +| `tfyBuild.preemptibleDeployment.extraEnvs` | Extra environment variables for the tfyBuild server | `[]` | +| `tfyBuild.preemptibleDeployment.extraVolumeMounts` | Extra volume mounts for the tfyBuild server | `[]` | +| `tfyBuild.preemptibleDeployment.extraVolumes` | Extra volumes for the tfyBuild server | `[]` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.image.repository` | Repository for the sfyBuilder | `public.ecr.aws/truefoundrycloud/sfy-builder` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.image.tag` | Tag for the sfyBuilder | `v0.8.0` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.limits.cpu` | CPU limit for the sfyBuilder | `1` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.limits.ephemeral-storage` | Ephemeral storage limit for the sfyBuilder | `20Gi` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.limits.memory` | Memory limit for the sfyBuilder | `2Gi` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.requests.cpu` | CPU request for the sfyBuilder | `200m` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.requests.ephemeral-storage` | Ephemeral storage request for the sfyBuilder | `10Gi` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.requests.memory` | Memory request for the sfyBuilder | `500Mi` | +| `tfyBuild.truefoundryWorkflows.extraEnvs` | Extra environment variables for the tfyBuild server | `[]` | +| `tfyBuild.truefoundryWorkflows.extraVolumeMounts` | Extra volume mounts for the tfyBuild server | `[]` | +| `tfyBuild.truefoundryWorkflows.extraVolumes` | Extra volumes for the tfyBuild server | `[]` | +| `tfyBuild.truefoundryWorkflows.affinity` | Affinity settings for the tfyBuild server | `{}` | +| `tfyBuild.truefoundryWorkflows.nodeSelector` | Node selector for the tfyBuild server | `{}` | +| `tfyBuild.truefoundryWorkflows.logMarkers.error` | Error log marker for the tfyBuild server | `\u001b[31m[Error]\u001b[0m` | +| `tfyBuild.truefoundryWorkflows.logMarkers.done` | Done log marker for the tfyBuild server | `\u001b[32m[Done]\u001b[0m` | +| `tfyBuild.truefoundryWorkflows.logMarkers.start` | Start log marker for the tfyBuild server | `\u001b[36m[Start]\u001b[0m` | +| `tfyBuild.truefoundryWorkflows.logMarkers.clientPrefix` | Client prefix for the tfyBuild server | `["TFY-CLIENT"]` | +| `tfyBuild.truefoundryWorkflows.logMarkers.supportSlack` | Slack support URL for the tfyBuild server | `https://join.slack.com/t/truefoundry/shared_invite/zt-11ht512jq-nDJq~HJMqc6wBw90JVlo7g` | +| `tfyBuild.truefoundryWorkflows.logMarkers.serviceFoundryUiUrl` | Service foundry UI URL | `https://app.truefoundry.com/workspace` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.enabled` | Bool to enable SOCI index build and push | `false` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.image.repository` | Repository for the SOCI index build and push | `public.ecr.aws/truefoundrycloud/soci-index-builder` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.image.tag` | Tag for the SOCI index build and push | `0.2.0-rc.1` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.imageSizeThresholdBytes` | Image size threshold for the SOCI index build and push | `419430400` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.extraEnvs` | Extra environment variables for the SOCI index build and push | `[]` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.extraVolumeMounts` | Extra volume mounts for the SOCI index build and push | `[]` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.extraVolume` | | `[]` | +| `tfy-buildkitd-service.enabled` | Bool to enable the tfy-buildkitd service | `false` | +| `postgresql.auth.existingSecret` | Name of the existing secret for PostgreSQL authentication | `truefoundry-postgresql-auth-secret` | +| `postgresql.auth.database` | Name of the database for PostgreSQL | `truefoundry` | +| `tfyController.enabled` | Bool to enable the tfyController | `true` | +| `tfyController.global` | Global values for the tfyController | `{}` | +| `tfyController.imageRepository` | Image repository for the tfyController | `truefoundrycloud/tfy-controller` | +| `tfyController.environmentName` | Environment name for the tfyController | `default` | +| `tfyController.envSecretName` | Secret name for the tfyController environment variables | `sfy-manifest-service-env-secret` | +| `tfyController.imagePullPolicy` | Image pull policy for the tfyController | `IfNotPresent` | +| `tfyController.nameOverride` | Override name for the tfyController | `""` | +| `tfyController.fullnameOverride` | Full name override for the tfyController | `""` | +| `tfyController.podAnnotations` | Annotations for the tfyController pods | `{}` | +| `tfyController.podSecurityContext` | Security context for the tfyController pods | `{}` | +| `tfyController.commonLabels` | Common labels for the tfyController pods | `{}` | +| `tfyController.securityContext` | Security context for the tfyController | `{}` | +| `tfyController.imagePullSecrets` | Image pull secrets for the tfycontroller | `[]` | +| `tfyController.nodeSelector` | Node selector for the tfyController | `{}` | +| `tfyController.affinity` | Affinity settings for the tfyController | `{}` | +| `tfyController.service.type` | Service type for the tfyController | `ClusterIP` | +| `tfyController.service.port` | Service port for the tfyController | `8123` | +| `tfyController.service.annotations` | Annotations for the tfyController service | `{}` | +| `tfyController.serviceAccount.annotations` | Annotations for the tfyController service account | `{}` | +| `tfyController.imageTag` | Image tag for the tfyController | `v0.0.27` | +| `tfyWorkflowAdmin.enabled` | Bool to enable the tfyWorkflowAdmin | `false` | +| `tfyWorkflowAdmin.global` | Global values for the tfyWorkflowAdmin | `{}` | +| `tfyWorkflowAdmin.imageRepository` | Image repository for the tfyWorkflowAdmin | `truefoundrycloud/tfy-workflow-admin` | +| `tfyWorkflowAdmin.environmentName` | Environment name for the tfyWorkflowAdmin | `default` | +| `tfyWorkflowAdmin.envSecretName` | Secret name for the tfyWorkflowAdmin environment variables | `tfy-workflow-admin-env-secret` | +| `tfyWorkflowAdmin.imagePullPolicy` | Image pull policy for the tfyWorkflowAdmin | `IfNotPresent` | +| `tfyWorkflowAdmin.nameOverride` | Override name for the tfyWorkflowAdmin | `""` | +| `tfyWorkflowAdmin.fullnameOverride` | Full name override for the tfyWorkflowAdmin | `""` | +| `tfyWorkflowAdmin.podAnnotations` | Annotations for the tfyWorkflowAdmin pods | `{}` | +| `tfyWorkflowAdmin.podSecurityContext` | Security context for the tfyWorkflowAdmin pods | `{}` | +| `tfyWorkflowAdmin.commonLabels` | Common labels for the tfyWorkflowAdmin pods | `{}` | +| `tfyWorkflowAdmin.securityContext` | Security context for the tfyWorkflowAdmin | `{}` | +| `tfyWorkflowAdmin.imagePullSecrets` | Image pull secrets for the tfycontroller | `[]` | +| `tfyWorkflowAdmin.nodeSelector` | Node selector for the tfyWorkflowAdmin | `{}` | +| `tfyWorkflowAdmin.affinity` | Affinity settings for the tfyWorkflowAdmin | `{}` | +| `tfyWorkflowAdmin.service.type` | Service type for the tfyWorkflowAdmin | `ClusterIP` | +| `tfyWorkflowAdmin.service.port` | Service port for the tfyWorkflowAdmin | `8089` | +| `tfyWorkflowAdmin.service.annotations` | Annotations for the tfyWorkflowAdmin service | `{}` | +| `tfyWorkflowAdmin.serviceAccount.annotations` | Annotations for the tfyWorkflowAdmin service account | `{}` | +| `tfyWorkflowAdmin.s3BucketName` | S3 bucket name for the tfyWorkflowAdmin | `""` | +| `tfyWorkflowAdmin.awsRegion` | AWS region for the tfyWorkflowAdmin | `""` | +| `tfyWorkflowAdmin.imageTag` | Image tag for the tfyController | `v0.1.3-rc.1` | diff --git a/charts/truefoundry/templates/bootstrap/_helpers.tpl b/charts/truefoundry/templates/bootstrap/_helpers.tpl new file mode 100644 index 000000000..c6823cfcf --- /dev/null +++ b/charts/truefoundry/templates/bootstrap/_helpers.tpl @@ -0,0 +1,8 @@ +{{/* + Merge default nodeSelector with nodeSelector specified in truefoundryBootstrap nodeSelector + */}} +{{- define "truefoundry-bootstrap.nodeSelector" -}} +{{- $defaultNodeSelector := dict "kubernetes.io/arch" "amd64" }} +{{- $mergedNodeSelector := merge $defaultNodeSelector .Values.truefoundryBootstrap.nodeSelector }} +{{- toYaml $mergedNodeSelector }} +{{- end }} diff --git a/charts/truefoundry/templates/bootstrap/job.yaml b/charts/truefoundry/templates/bootstrap/job.yaml index cb57c3261..d3f3932ac 100644 --- a/charts/truefoundry/templates/bootstrap/job.yaml +++ b/charts/truefoundry/templates/bootstrap/job.yaml @@ -48,13 +48,12 @@ spec: {{- toYaml .Values.truefoundryBootstrap.extraVolumes | nindent 6 }} {{- end }} restartPolicy: Never - {{- with .Values.truefoundryBootstrap.nodeSelector }} nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.truefoundryBootstrap.affinity }} + {{- include "truefoundry-bootstrap.nodeSelector" . | nindent 8 }} + {{- $mergedAffinity := dict | merge .Values.truefoundryBootstrap.affinity .Values.global.affinity }} + {{- if $mergedAffinity }} affinity: - {{- toYaml . | nindent 8 }} + {{- toYaml $mergedAffinity | nindent 8 }} {{- end }} tolerations: {{- .Values.global.tolerations | toYaml | nindent 8 }} diff --git a/charts/truefoundry/templates/mlfoundry-server/_helpers.tpl b/charts/truefoundry/templates/mlfoundry-server/_helpers.tpl index bad4d465a..8deeaab48 100644 --- a/charts/truefoundry/templates/mlfoundry-server/_helpers.tpl +++ b/charts/truefoundry/templates/mlfoundry-server/_helpers.tpl @@ -95,3 +95,12 @@ app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{- end }} {{- end }} + +{{/* + Merge nodeSelector + */}} +{{- define "mlfoundry-server.nodeSelector" -}} +{{- $defaultNodeSelector := dict "kubernetes.io/arch" "amd64" }} +{{- $mergedNodeSelector := merge $defaultNodeSelector .Values.mlfoundryServer.nodeSelector }} +{{- toYaml $mergedNodeSelector }} +{{- end }} diff --git a/charts/truefoundry/templates/mlfoundry-server/deployment.yaml b/charts/truefoundry/templates/mlfoundry-server/deployment.yaml index 59219c8b9..86739240f 100644 --- a/charts/truefoundry/templates/mlfoundry-server/deployment.yaml +++ b/charts/truefoundry/templates/mlfoundry-server/deployment.yaml @@ -68,13 +68,12 @@ spec: {{- end }} volumes: {{- toYaml .Values.mlfoundryServer.extraVolumes | nindent 8 }} - {{- with .Values.mlfoundryServer.nodeSelector }} nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.mlfoundryServer.affinity }} + {{- include "mlfoundry-server.nodeSelector" . | nindent 8 }} + {{- $mergedAffinity := dict | merge .Values.mlfoundryServer.affinity .Values.global.affinity }} + {{- if $mergedAffinity }} affinity: - {{- toYaml . | nindent 8 }} + {{- toYaml $mergedAffinity | nindent 8 }} {{- end }} {{- with .Values.mlfoundryServer.topologySpreadConstraints }} topologySpreadConstraints: diff --git a/charts/truefoundry/templates/servicefoundry-server/_helpers.tpl b/charts/truefoundry/templates/servicefoundry-server/_helpers.tpl index 2d23a0714..944da5cf0 100644 --- a/charts/truefoundry/templates/servicefoundry-server/_helpers.tpl +++ b/charts/truefoundry/templates/servicefoundry-server/_helpers.tpl @@ -139,3 +139,12 @@ app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{- $volumeMounts | toYaml -}} {{- end -}} + +{{/* + Merge default nodeSelector with nodeSelector specified in servicefoundry-server nodeSelector + */}} +{{- define "servicefoundry-server.nodeSelector" -}} +{{- $defaultNodeSelector := dict "kubernetes.io/arch" "amd64" }} +{{- $mergedNodeSelector := merge $defaultNodeSelector .Values.servicefoundryServer.nodeSelector }} +{{- toYaml $mergedNodeSelector }} +{{- end }} diff --git a/charts/truefoundry/templates/servicefoundry-server/deployment.yaml b/charts/truefoundry/templates/servicefoundry-server/deployment.yaml index a60bbbb0f..73705cdd8 100644 --- a/charts/truefoundry/templates/servicefoundry-server/deployment.yaml +++ b/charts/truefoundry/templates/servicefoundry-server/deployment.yaml @@ -68,13 +68,12 @@ spec: {{- end }} volumes: {{- include "servicefoundry-server.volumes" . | nindent 8 }} - {{- with .Values.servicefoundryServer.nodeSelector }} nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.servicefoundryServer.affinity }} + {{- include "servicefoundry-server.nodeSelector" . | nindent 8 }} + {{- $mergedAffinity := dict | merge .Values.servicefoundryServer.affinity .Values.global.affinity }} + {{- if $mergedAffinity }} affinity: - {{- toYaml . | nindent 8 }} + {{- toYaml $mergedAffinity | nindent 8 }} {{- end }} {{- with .Values.servicefoundryServer.topologySpreadConstraints }} topologySpreadConstraints: diff --git a/charts/truefoundry/templates/sfy-manifest-service/_helpers.tpl b/charts/truefoundry/templates/sfy-manifest-service/_helpers.tpl index 60ea881f9..67e4452f6 100644 --- a/charts/truefoundry/templates/sfy-manifest-service/_helpers.tpl +++ b/charts/truefoundry/templates/sfy-manifest-service/_helpers.tpl @@ -95,3 +95,12 @@ app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{- end }} {{- end }} + +{{/* + Merge nodeSelector + */}} +{{- define "sfy-manifest-service.nodeSelector" -}} +{{- $defaultNodeSelector := dict "kubernetes.io/arch" "amd64" }} +{{- $mergedNodeSelector := merge $defaultNodeSelector .Values.sfyManifestService.nodeSelector }} +{{- toYaml $mergedNodeSelector }} +{{- end }} diff --git a/charts/truefoundry/templates/sfy-manifest-service/deployment.yaml b/charts/truefoundry/templates/sfy-manifest-service/deployment.yaml index 4c341fdb5..ea1b0be36 100644 --- a/charts/truefoundry/templates/sfy-manifest-service/deployment.yaml +++ b/charts/truefoundry/templates/sfy-manifest-service/deployment.yaml @@ -56,13 +56,12 @@ spec: {{- end }} volumes: {{- toYaml .Values.sfyManifestService.extraVolumes | nindent 8 }} - {{- with .Values.sfyManifestService.nodeSelector }} nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.sfyManifestService.affinity }} + {{- include "servicefoundry-server.nodeSelector" . | nindent 8 }} + {{- $mergedAffinity := dict | merge .Values.servicefoundryServer.affinity .Values.global.affinity }} + {{- if $mergedAffinity }} affinity: - {{- toYaml . | nindent 8 }} + {{- toYaml $mergedAffinity | nindent 8 }} {{- end }} {{- with .Values.sfyManifestService.topologySpreadConstraints }} topologySpreadConstraints: diff --git a/charts/truefoundry/templates/tfy-build/_helpers.tpl b/charts/truefoundry/templates/tfy-build/_helpers.tpl index d5f9dbd73..fda35faab 100644 --- a/charts/truefoundry/templates/tfy-build/_helpers.tpl +++ b/charts/truefoundry/templates/tfy-build/_helpers.tpl @@ -36,3 +36,21 @@ Expand the name of the chart. {{- define "tfy-build.serviceAccountName" -}} {{- default (include "tfy-build.fullname" .) "tfy-build" }} {{- end }} + +{{/* + Merge default nodeSelector with nodeSelector specified in tfy-build.nodeSelector +*/}} +{{- define "tfy-build.nodeSelector" -}} +{{- $defaultNodeSelector := dict "kubernetes.io/arch" "amd64" }} +{{- $mergedNodeSelector := merge $defaultNodeSelector .Values.tfyBuild.truefoundryWorkflows.nodeSelector }} +{{- toYaml $mergedNodeSelector }} +{{- end }} + +{{/* + Merge default nodeSelector with nodeSelector specified in tfy-buildkitd.nodeSelector +*/}} +{{- define "tfy-buildkitd.nodeSelector" -}} +{{- $defaultNodeSelector := dict "kubernetes.io/arch" "amd64" }} +{{- $mergedNodeSelector := merge $defaultNodeSelector .Values.tfyBuild.truefoundryWorkflows.buildkitd.nodeSelector }} +{{- toYaml $mergedNodeSelector }} +{{- end }} diff --git a/charts/truefoundry/templates/tfy-build/build-workflow-workflow-template.yaml b/charts/truefoundry/templates/tfy-build/build-workflow-workflow-template.yaml index 2934aa1ab..a61bd1713 100644 --- a/charts/truefoundry/templates/tfy-build/build-workflow-workflow-template.yaml +++ b/charts/truefoundry/templates/tfy-build/build-workflow-workflow-template.yaml @@ -36,6 +36,26 @@ spec: - name: dockerTag - name: buildkitServiceURL steps: + {{- if .Values.tfyBuild.truefoundryWorkflows.preBuild.enabled }} + - - name: pre-build-script + template: pre-build-script + arguments: + parameters: + - name: buildSource + value: "{{`{{inputs.parameters.buildSource}}`}}" + - name: buildConfig + value: "{{`{{inputs.parameters.buildConfig}}`}}" + - name: dockerRegistryURL + value: "{{`{{inputs.parameters.dockerRegistryURL}}`}}" + - name: dockerRegistryUsername + value: "{{`{{inputs.parameters.dockerRegistryUsername}}`}}" + - name: dockerRegistryPassword + value: "{{`{{inputs.parameters.dockerRegistryPassword}}`}}" + - name: dockerRepo + value: "{{`{{inputs.parameters.dockerRepo}}`}}" + - name: dockerTag + value: "{{`{{inputs.parameters.dockerTag}}`}}" + {{- end }} - - name: build-and-push template: build-and-push arguments: @@ -56,6 +76,57 @@ spec: value: "{{`{{inputs.parameters.dockerTag}}`}}" - name: buildkitServiceURL value: "127.0.0.1:1234" + {{- if .Values.tfyBuild.truefoundryWorkflows.postBuild.enabled }} + - - name: post-build-script + template: post-build-script + arguments: + parameters: + - name: buildSource + value: "{{`{{inputs.parameters.buildSource}}`}}" + - name: buildConfig + value: "{{`{{inputs.parameters.buildConfig}}`}}" + - name: dockerRegistryURL + value: "{{`{{inputs.parameters.dockerRegistryURL}}`}}" + - name: dockerRegistryUsername + value: "{{`{{inputs.parameters.dockerRegistryUsername}}`}}" + - name: dockerRegistryPassword + value: "{{`{{inputs.parameters.dockerRegistryPassword}}`}}" + - name: dockerRepo + value: "{{`{{inputs.parameters.dockerRepo}}`}}" + - name: dockerTag + value: "{{`{{inputs.parameters.dockerTag}}`}}" + {{- end }} + {{- if .Values.tfyBuild.truefoundryWorkflows.preBuild.enabled }} + - name: pre-build-script + inputs: + parameters: + - name: buildSource + - name: buildConfig + - name: dockerRegistryURL + - name: dockerRegistryUsername + - name: dockerRegistryPassword + - name: dockerRepo + - name: dockerTag + when: {{ .Values.tfyBuild.truefoundryWorkflows.preBuild.enabled }} + activeDeadlineSeconds: 5400 + metadata: + annotations: + cluster-autoscaler.kubernetes.io/safe-to-evict: 'false' + karpenter.sh/do-not-disrupt: 'true' + karpenter.sh/do-not-evict: 'true' + {{- with .Values.tfyBuild.truefoundryWorkflows.preBuild.resources }} + podSpecPatch: | + containers: + - name: main + resources: + {{- toYaml . | nindent 12 }} + {{- end }} + script: + image: {{ .Values.tfyBuild.truefoundryWorkflows.preBuild.image.repository }}:{{ .Values.tfyBuild.truefoundryWorkflows.preBuild.image.tag }} + command: {{ .Values.tfyBuild.truefoundryWorkflows.preBuild.command }} + source: | + {{ .Values.tfyBuild.truefoundryWorkflows.preBuild.script | nindent 8 }} + {{- end }} - name: build-and-push # activeDeadlineSeconds is the maximum time the step will run(It will be restarted after every retry) activeDeadlineSeconds: 5400 @@ -295,6 +366,41 @@ spec: - buildctl - debug - workers + {{- if .Values.tfyBuild.truefoundryWorkflows.postBuild.enabled }} + - name: post-build-script + inputs: + parameters: + - name: buildSource + - name: buildConfig + - name: dockerRegistryURL + - name: dockerRegistryUsername + - name: dockerRegistryPassword + - name: dockerRepo + - name: dockerTag + when: >- + '{{ .Values.tfyBuild.truefoundryWorkflows.postBuild.enabled }}' == 'true' + && + {{`{{steps.build-and-push.status}}`}} == Succeeded + # activeDeadlineSeconds is the maximum time the step will run(It will be restarted after every retry) + activeDeadlineSeconds: 5400 + metadata: + annotations: + cluster-autoscaler.kubernetes.io/safe-to-evict: 'false' + karpenter.sh/do-not-disrupt: 'true' + karpenter.sh/do-not-evict: 'true' + {{- with .Values.tfyBuild.truefoundryWorkflows.postBuild.resources }} + podSpecPatch: | + containers: + - name: main + resources: + {{- toYaml . | nindent 12 }} + {{- end }} + script: + image: {{ .Values.tfyBuild.truefoundryWorkflows.postBuild.image.repository }}:{{ .Values.tfyBuild.truefoundryWorkflows.postBuild.image.tag }} + command: {{ .Values.tfyBuild.truefoundryWorkflows.postBuild.command }} + source: | + {{ .Values.tfyBuild.truefoundryWorkflows.postBuild.script | nindent 8 }} + {{- end }} - name: exit-handler inputs: parameters: @@ -558,9 +664,17 @@ spec: REPOSITORY="{{`{{inputs.parameters.dockerRepo}}`}}" TAG="{{`{{inputs.parameters.dockerTag}}`}}" IMAGE=$REGISTRY/$REPOSITORY:$TAG - IMAGE_SIZE_THRESHOLD=$(printf '%.0f' {{ .Values.tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.imageSizeThresholdBytes | quote }}) - - docker login -u $USERNAME -p $PASSWORD $REGISTRY 2> /dev/null + IMAGE_SIZE_THRESHOLD=$(printf '%.0f' {{ .Values.tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.imageSizeThresholdBytes | int | quote }}) + + # if $REGISTRY starts with "index.docker.io" or "registry-1.docker.io" or "registry.hub.docker.com" or "docker.io" + # then skip mentioning url in docker login, because dockerhub has non standard behaviors + # This is a short term fix till we decouple registry url and login url + _REGISTRY=$(echo $REGISTRY | sed -e 's~http[s]*://~~g') + if [[ $_REGISTRY == index.docker.io* ]] || [[ $_REGISTRY == registry-1.docker.io* ]] || [[ $_REGISTRY == registry.hub.docker.com* ]] || [[ $_REGISTRY == docker.io* ]]; then + docker login -u $USERNAME -p $PASSWORD 2> /dev/null + else + docker login -u $USERNAME -p $PASSWORD $REGISTRY 2> /dev/null + fi echo Registry is $REGISTRY @@ -679,13 +793,12 @@ spec: time soci push --platform=linux/amd64 $IMAGE echo Done! - {{- with .Values.tfyBuild.truefoundryWorkflows.nodeSelector }} nodeSelector: - {{- toYaml . | nindent 4 }} - {{- end }} - {{- with .Values.tfyBuild.truefoundryWorkflows.affinity }} + {{- include "tfy-build.nodeSelector" . | nindent 8 }} + {{- $mergedAffinity := dict | merge .Values.tfyBuild.truefoundryWorkflows.affinity .Values.global.affinity }} + {{- if $mergedAffinity }} affinity: - {{- toYaml . | nindent 4 }} + {{- toYaml $mergedAffinity | nindent 8 }} {{- end }} {{- with .Values.tfyBuild.truefoundryWorkflows.tolerations }} tolerations: diff --git a/charts/truefoundry/templates/tfy-build/preemptible-deployment.yaml b/charts/truefoundry/templates/tfy-build/preemptible-deployment.yaml index f1adfe60b..8b8bec589 100644 --- a/charts/truefoundry/templates/tfy-build/preemptible-deployment.yaml +++ b/charts/truefoundry/templates/tfy-build/preemptible-deployment.yaml @@ -35,13 +35,12 @@ spec: {{- end }} resources: {{- toYaml .Values.tfyBuild.truefoundryWorkflows.buildkitd.resources | nindent 12 }} - {{- with .Values.tfyBuild.truefoundryWorkflows.buildkitd.nodeSelector }} nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.tfyBuild.truefoundryWorkflows.buildkitd.affinity }} + {{- include "tfy-buildkitd.nodeSelector" . | nindent 8 }} + {{- $mergedAffinity := dict | merge .Values.tfyBuild.truefoundryWorkflows.buildkitd.affinity .Values.global.affinity }} + {{- if $mergedAffinity }} affinity: - {{- toYaml . | nindent 8 }} + {{- toYaml $mergedAffinity | nindent 8 }} {{- end }} {{- with .Values.tfyBuild.truefoundryWorkflows.buildkitd.tolerations }} tolerations: diff --git a/charts/truefoundry/templates/tfy-controller/_helpers.tpl b/charts/truefoundry/templates/tfy-controller/_helpers.tpl index b299a3b37..5ff311e21 100644 --- a/charts/truefoundry/templates/tfy-controller/_helpers.tpl +++ b/charts/truefoundry/templates/tfy-controller/_helpers.tpl @@ -95,3 +95,12 @@ app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{- end }} {{- end }} + +{{/* + Merge default nodeSelector with nodeSelector specified in tfyController nodeSelector + */}} +{{- define "tfy-controller.nodeSelector" -}} +{{- $defaultNodeSelector := dict "kubernetes.io/arch" "amd64" }} +{{- $mergedNodeSelector := merge $defaultNodeSelector .Values.tfyController.nodeSelector }} +{{- toYaml $mergedNodeSelector }} +{{- end }} diff --git a/charts/truefoundry/templates/tfy-controller/deployment.yaml b/charts/truefoundry/templates/tfy-controller/deployment.yaml index ce96e53b4..db25eab67 100644 --- a/charts/truefoundry/templates/tfy-controller/deployment.yaml +++ b/charts/truefoundry/templates/tfy-controller/deployment.yaml @@ -50,13 +50,12 @@ spec: imagePullSecrets: {{- tpl (toYaml .) $ | nindent 8 }} {{- end }} - {{- with .Values.tfyController.nodeSelector }} nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.tfyController.affinity }} + {{- include "tfy-controller.nodeSelector" . | nindent 8 }} + {{- $mergedAffinity := dict | merge .Values.tfyController.affinity .Values.global.affinity }} + {{- if $mergedAffinity }} affinity: - {{- toYaml . | nindent 8 }} + {{- toYaml $mergedAffinity | nindent 8 }} {{- end }} tolerations: {{- .Values.global.tolerations | toYaml | nindent 8 }} diff --git a/charts/truefoundry/templates/tfy-k8s-controller/_helpers.tpl b/charts/truefoundry/templates/tfy-k8s-controller/_helpers.tpl index 90012eccf..3f29a73d1 100644 --- a/charts/truefoundry/templates/tfy-k8s-controller/_helpers.tpl +++ b/charts/truefoundry/templates/tfy-k8s-controller/_helpers.tpl @@ -118,3 +118,12 @@ app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{- $volumeMounts | toYaml -}} {{- end -}} + +{{/* + Merge default nodeSelector with nodeSelector specified in tfy-k8s-controller nodeSelector + */}} +{{- define "tfy-k8s-controller.nodeSelector" -}} +{{- $defaultNodeSelector := dict "kubernetes.io/arch" "amd64" }} +{{- $mergedNodeSelector := merge $defaultNodeSelector .Values.tfyK8sController.nodeSelector }} +{{- toYaml $mergedNodeSelector }} +{{- end }} diff --git a/charts/truefoundry/templates/tfy-k8s-controller/deployment.yaml b/charts/truefoundry/templates/tfy-k8s-controller/deployment.yaml index 1dc86bc9e..0bc708672 100644 --- a/charts/truefoundry/templates/tfy-k8s-controller/deployment.yaml +++ b/charts/truefoundry/templates/tfy-k8s-controller/deployment.yaml @@ -56,13 +56,12 @@ spec: {{- end }} volumes: {{- include "tfy-k8s-controller.volumes" . | nindent 8 }} - {{- with .Values.tfyK8sController.nodeSelector }} nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.tfyK8sController.affinity }} + {{- include "tfy-k8s-controller.nodeSelector" . | nindent 8 }} + {{- $mergedAffinity := dict | merge .Values.tfyK8sController.affinity .Values.global.affinity }} + {{- if $mergedAffinity }} affinity: - {{- toYaml . | nindent 8 }} + {{- toYaml $mergedAffinity | nindent 8 }} {{- end }} {{- with .Values.tfyK8sController.topologySpreadConstraints }} topologySpreadConstraints: diff --git a/charts/truefoundry/templates/tfy-workflow-admin/_helpers.tpl b/charts/truefoundry/templates/tfy-workflow-admin/_helpers.tpl index 444b21fd4..6063ac1b4 100644 --- a/charts/truefoundry/templates/tfy-workflow-admin/_helpers.tpl +++ b/charts/truefoundry/templates/tfy-workflow-admin/_helpers.tpl @@ -95,3 +95,12 @@ app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{- end }} {{- end }} + +{{/* + Merge default nodeSelector with nodeSelector specified in tfyWorkflowAdmin nodeSelector + */}} +{{- define "tfy-workflow-admin.nodeSelector" -}} +{{- $defaultNodeSelector := dict "kubernetes.io/arch" "amd64" }} +{{- $mergedNodeSelector := merge $defaultNodeSelector .Values.tfyWorkflowAdmin.nodeSelector }} +{{- toYaml $mergedNodeSelector }} +{{- end }} diff --git a/charts/truefoundry/templates/tfy-workflow-admin/deployment.yaml b/charts/truefoundry/templates/tfy-workflow-admin/deployment.yaml index 7587dda40..8c4d49877 100644 --- a/charts/truefoundry/templates/tfy-workflow-admin/deployment.yaml +++ b/charts/truefoundry/templates/tfy-workflow-admin/deployment.yaml @@ -80,10 +80,11 @@ spec: nodeSelector: {{- toYaml . | nindent 8 }} {{- end }} - {{- with .Values.tfyWorkflowAdmin.affinity }} affinity: - {{- toYaml . | nindent 8 }} - {{- end }} + {{- .Values.global.affinity | toYaml | nindent 8 }} + {{- if .Values.tfyWorkflowAdmin.affinity }} + {{- .Values.tfyWorkflowAdmin.affinity | toYaml | nindent 8 }} + {{- end }} {{- with .Values.tfyWorkflowAdmin.topologySpreadConstraints }} topologySpreadConstraints: {{- toYaml . | nindent 8 }} @@ -156,13 +157,12 @@ spec: - name: {{ include "tfy-workflow-admin.fullname" . }}-tfy-api-key secret: secretName: truefoundry-creds - {{- with .Values.tfyWorkflowAdmin.nodeSelector }} nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.tfyWorkflowAdmin.affinity }} + {{- include "tfy-workflow-admin.nodeSelector" . | nindent 8 }} + {{- $mergedAffinity := dict | merge .Values.tfyWorkflowAdmin.affinity .Values.global.affinity }} + {{- if $mergedAffinity }} affinity: - {{- toYaml . | nindent 8 }} + {{- toYaml $mergedAffinity | nindent 8 }} {{- end }} {{- with .Values.tfyWorkflowAdmin.topologySpreadConstraints }} topologySpreadConstraints: diff --git a/charts/truefoundry/templates/truefoundry-frontend-app/_helpers.tpl b/charts/truefoundry/templates/truefoundry-frontend-app/_helpers.tpl index 927626812..5d79bcf53 100644 --- a/charts/truefoundry/templates/truefoundry-frontend-app/_helpers.tpl +++ b/charts/truefoundry/templates/truefoundry-frontend-app/_helpers.tpl @@ -94,3 +94,12 @@ app.kubernetes.io/instance: {{ .Release.Name }} {{- end }} {{- end }} {{- end }} + +{{/* + Merge default nodeSelector with nodeSelector specified in truefoundry-frontend-app nodeSelector + */}} +{{- define "truefoundry-frontend-app.nodeSelector" -}} +{{- $defaultNodeSelector := dict "kubernetes.io/arch" "amd64" }} +{{- $mergedNodeSelector := merge $defaultNodeSelector .Values.truefoundryFrontendApp.nodeSelector }} +{{- toYaml $mergedNodeSelector }} +{{- end }} diff --git a/charts/truefoundry/templates/truefoundry-frontend-app/deployment.yaml b/charts/truefoundry/templates/truefoundry-frontend-app/deployment.yaml index 070341819..b1cb79f6b 100644 --- a/charts/truefoundry/templates/truefoundry-frontend-app/deployment.yaml +++ b/charts/truefoundry/templates/truefoundry-frontend-app/deployment.yaml @@ -60,13 +60,12 @@ spec: {{- end }} volumes: {{- toYaml .Values.truefoundryFrontendApp.extraVolumes | nindent 8 }} - {{- with .Values.truefoundryFrontendApp.nodeSelector }} nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.truefoundryFrontendApp.affinity }} + {{- include "truefoundry-frontend-app.nodeSelector" . | nindent 8 }} + {{- $mergedAffinity := dict | merge .Values.truefoundryFrontendApp.affinity .Values.global.affinity }} + {{- if $mergedAffinity }} affinity: - {{- toYaml . | nindent 8 }} + {{- toYaml $mergedAffinity | nindent 8 }} {{- end }} {{- with .Values.truefoundryFrontendApp.topologySpreadConstraints }} topologySpreadConstraints: diff --git a/charts/truefoundry/values.yaml b/charts/truefoundry/values.yaml index 62b51c1ca..a51bb154e 100644 --- a/charts/truefoundry/values.yaml +++ b/charts/truefoundry/values.yaml @@ -30,6 +30,8 @@ global: password: "" ## @param global.tfyApiKey API key for truefoundry tfyApiKey: "" + ## @param global.affinity Affinity for all services + affinity: {} ## @skip global.tolerations tolerations: - key: class.truefoundry.io/control-plane @@ -168,7 +170,7 @@ truefoundryFrontendApp: ## @param truefoundryFrontendApp.istio.virtualservice.hosts Hosts for the frontend app virtual service hosts: [] ## @param truefoundryFrontendApp.imageTag Image tag for the frontend app - imageTag: v0.3.152-rc.1 + imageTag: v0.3.152-rc.4 ## @param truefoundryFrontendApp.servicefoundryServerHost Servicefoundry server host for the frontend app servicefoundryServerHost: >- {{ .Release.Name }}-servicefoundry-server.{{ .Release.Namespace @@ -226,6 +228,7 @@ truefoundryFrontendApp: VITE_ENABLE_COMPANY_REGISTRATION: "false" VITE_ENABLE_FEATURE_RESOURCE_COSTS: "false" VITE_ENABLE_WORKFLOWS: "false" + VITE_ENABLE_EVENTS_GRAPHS: "false" VITE_STRIPE_PUBLISHABLE_KEY: "" VITE_CREDIT_CARD_REQUIRED_DOMAINS: "" VITE_TENANT_BASE_DOMAIN: "" @@ -239,7 +242,7 @@ truefoundryFrontendApp: VITE_OLD_LLM_PLAYGROUND_PATH: llm-playground VITE_LLM_PLAYGROUND_PATH: llm-gateway VITE_ENABLE_SENTRY: "false" - VITE_ENABLE_PROMPTS: "false" + VITE_ENABLE_PROMPT_TEMPLATES: "false" VITE_ENABLE_TOOLS_AGENTS: "false" VITE_SENTRY_DSN: "" VITE_APEX_DOMAIN: http://truefoundry.com/ @@ -509,10 +512,10 @@ servicefoundryServer: configs: ## @param servicefoundryServer.configs.cicdTemplates CICD Template for servicefoundry server cicdTemplates: '{{ .Release.Name }}-cicd-templates-cm' - ## @param servicefoundryServer.configs.workbenchImgaes Workbench Images for servicefoundry server + ## @param servicefoundryServer.configs.workbenchImages Workbench Images for servicefoundry server workbenchImages: '{{ .Release.Name }}-workbench-images-cm' ## @param servicefoundryServer.imageTag Image Tag for servicefoundry server - imageTag: v0.4.2-rc.1 + imageTag: v0.4.2-rc.3 ####################### ## tfyK8sController Settings specific to tfyK8sController. @@ -745,13 +748,15 @@ nats: logging: ## @param nats.nats.logging.debug Bool to enable debug logging for NATS server debug: true - ## @skip nats.nats.resources Resource requests and limits for NATS server + ## nats.nats.resources Resource requests and limits for NATS server resources: + ## nats.nats.resources.limits Resource limits for NATS server limits: ## @param nats.nats.resources.limits.cpu CPU limit for NATS server cpu: 50m ## @param nats.nats.resources.limits.memory Memory limit for NATS server memory: 512Mi + ## nats.nats.resources.requests Resource requests for NATS server requests: ## @param nats.nats.resources.requests.cpu CPU request for NATS server cpu: 25m @@ -769,13 +774,15 @@ nats: tag: 0.13.2 ## @param nats.natsbox.imagePullSecrets Image pull credentials for NATSBox imagePullSecrets: [] - ## @skip nats.natsbox.resources Resource requests and limits for NATSBox + ## nats.natsbox.resources Resource requests and limits for NATSBox resources: + ## nats.natsbox.resources.limits Resource limits for NATSBox limits: ## @param nats.natsbox.resources.limits.cpu CPU limit for NATSBox cpu: 50m ## @param nats.natsbox.resources.limits.memory Memory limit for NATSBox memory: 512Ki + ## nats.natsbox.resources.requests Resource requests for NATSBox requests: ## @param nats.natsbox.resources.requests.cpu CPU request for NATSBox cpu: 25m @@ -790,7 +797,7 @@ nats: ## @param nats.exporter.image.repository NATS exporter image repository repository: natsio/prometheus-nats-exporter ## @param nats.exporter.image.tag NATS exporter image tag - tag: "0.14.0" + tag: "0.15.0" ## nats.reloader NATS reloader configuration reloader: ## @param nats.reloader.enabled Bool to enable NATS reloader @@ -800,7 +807,7 @@ nats: ## @param nats.reloader.image.repository NATS reloader image repository repository: natsio/nats-server-config-reloader ## @param nats.reloader.image.tag NATS reloader image tag - tag: "0.14.1" + tag: "0.14.3" ## nats.cluster NATS cluster configuration cluster: ## @param nats.cluster.enabled Bool to enable NATS cluster @@ -876,9 +883,11 @@ tfyBuild: operator: Equal ## tfyBuild.truefoundryWorkflows.sfyBuilder Settings for the sfyBuilder sfyBuilder: - ## @param tfyBuild.truefoundryWorkflows.sfyBuilder.version syftBuilder Version + ## tfyBuild.truefoundryWorkflows.sfyBuilder.image syftBuilder Image image: + ## @param tfyBuild.truefoundryWorkflows.sfyBuilder.image.repository Repository for the sfyBuilder repository: public.ecr.aws/truefoundrycloud/sfy-builder + ## @param tfyBuild.truefoundryWorkflows.sfyBuilder.image.tag Tag for the sfyBuilder tag: v0.8.0 ## tfyBuild.truefoundryWorkflows.sfyBuilder.resources Resource requests and limits for the sfyBuilder resources: @@ -969,6 +978,38 @@ tfyBuild: extraVolumeMounts: [] ## @param tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.extraVolume extraVolume: [] + ## Pre-build + ## This step will be executed after each build. In this build step a separate container will be created to run your post build script. This container will have the same environment variables as the main build container. + preBuild: + ## @param tfyBuild.truefoundryWorkflows.preBuild.enabled Enable pre-build step for the tfyBuild server + enabled: false + image: + ## @param tfyBuild.truefoundryWorkflows.preBuild.image.repository Image repository for the pre-build step + repository: "" + ## @param tfyBuild.truefoundryWorkflows.preBuild.image.tag Image tag for the pre-build step + tag: "" + ## @param tfyBuild.truefoundryWorkflows.preBuild.command Command for the pre-build step + command: [] + ## @param tfyBuild.truefoundryWorkflows.preBuild.script Script for the pre-build step + script: "" + ## @param tfyBuild.truefoundryWorkflows.preBuild.resources Resource requests and limits for the pre-build step + resources: {} + ## Post build + ## This step will be executed after each build. In this build step a separate container will be created to run your post build script. This container will have the same environment variables as the main build container. + postBuild: + ## @param tfyBuild.truefoundryWorkflows.postBuild.enabled Enable post-build step for the tfyBuild server + enabled: false + image: + ## @param tfyBuild.truefoundryWorkflows.postBuild.image.repository Image repository for the post-build step + repository: "" + ## @param tfyBuild.truefoundryWorkflows.postBuild.image.tag Image tag for the post-build step + tag: "" + ## @param tfyBuild.truefoundryWorkflows.postBuild.command Command for the post-build step + command: [] + ## @param tfyBuild.truefoundryWorkflows.postBuild.script Script for the post-build step + script: "" + ## @param tfyBuild.truefoundryWorkflows.postBuild.resources Resource requests and limits for the post-build step + resources: {} ############################# ## tfyBuildkitdService Settings corresponding to the tfy-buildkitd service @@ -1112,7 +1153,7 @@ tfyWorkflowAdmin: commonLabels: {} ## @param tfyWorkflowAdmin.securityContext Security context for the tfyWorkflowAdmin securityContext: {} - ## @param tfyWorklfowAdmin.imagePullSecrets Image pull secrets for the tfycontroller + ## @param tfyWorkflowAdmin.imagePullSecrets Image pull secrets for the tfycontroller ## imagePullSecrets: [] ## @skip tfyWorkflowAdmin.resources Resource requests and limits for the tfyWorkflowAdmin @@ -1141,7 +1182,7 @@ tfyWorkflowAdmin: serviceAccount: ## @param tfyWorkflowAdmin.serviceAccount.annotations Annotations for the tfyWorkflowAdmin service account annotations: {} - ## @param tfyworkflowadmin.s3BucketName S3 bucket name for the tfyWorkflowAdmin + ## @param tfyWorkflowAdmin.s3BucketName S3 bucket name for the tfyWorkflowAdmin s3BucketName: '' ## @param tfyWorkflowAdmin.awsRegion AWS region for the tfyWorkflowAdmin awsRegion: '' @@ -1158,5 +1199,5 @@ tfyWorkflowAdmin: ADMIN_CONFIG_FILE_PATH: /etc/config/flyteadmin-config.yaml SCHEDULER_CONFIG_FILE_PATH: /etc/config/flytescheduler-config.yaml CONTROL_PLANE_URL: "{{ .Values.global.controlPlaneURL }}" - ## @param tfyController.imageTag Image tag for the tfyController + ## @param tfyWorkflowAdmin.imageTag Image tag for the tfyController imageTag: v0.1.3-rc.1 From 368fb0526a5dfd0a684bcf5ceab7a2d36455e8d2 Mon Sep 17 00:00:00 2001 From: innoavator Date: Mon, 9 Sep 2024 09:54:19 +0000 Subject: [PATCH 2/2] Update README.md with readme-generator-for-helm Signed-off-by: innoavator --- charts/truefoundry/README.md | 333 ++++++++++++++++++++++++++++++++++- 1 file changed, 332 insertions(+), 1 deletion(-) diff --git a/charts/truefoundry/README.md b/charts/truefoundry/README.md index 49f429f4d..80e25e19d 100644 --- a/charts/truefoundry/README.md +++ b/charts/truefoundry/README.md @@ -3,7 +3,338 @@ truefoundry is an applications that gets deployed on the kubernetes cluster to s ## Parameters -########## Parameters for Truefoundry +########### Parameters for Truefoundry + +| Name | Description | Value | +| ------------------------------------------------------------------------------- | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------ | +| `global.existingTruefoundryImagePullSecretName` | Name of the existing image pull secret | `""` | +| `global.truefoundryImagePullConfigJSON` | JSON config for image pull secret | `""` | +| `global.tenantName` | Name of the tenant | `""` | +| `global.controlPlaneURL` | URL of the control plane | `http://truefoundry-truefoundry-frontend-app.truefoundry.svc.cluster.local:5000` | +| `global.existingTruefoundryCredsSecret` | Name of the existing truefoundry creds secret | `""` | +| `global.database.host` | Control plane database hostname when dev mode is not enabled | `""` | +| `global.database.name` | Control plane database name when dev mode is not enabled | `""` | +| `global.database.username` | Control plane database username when dev mode is not enabled | `""` | +| `global.database.password` | Control plane database password when dev mode is not enabled | `""` | +| `global.tfyApiKey` | API key for truefoundry | `""` | +| `global.affinity` | Affinity for all services | `{}` | +| `devMode.enabled` | Bool to enable dev mode | `false` | +| `truefoundryBootstrap.enabled` | Bool to enable truefoundry bootstrap | `true` | +| `truefoundryBootstrap.image.repository` | Truefoundry bootstrap image repository | `docker.io/library/ubuntu` | +| `truefoundryBootstrap.image.tag` | Truefoundry bootstrap image tag | `latest` | +| `truefoundryBootstrap.natsConfigmapName` | Truefoundry nats configmap name | `nats-accounts` | +| `truefoundryBootstrap.extraEnvVars` | Extra environment variables for the bootstrap container | `[]` | +| `truefoundryBootstrap.extraVolumeMounts` | Extra volume mounts for the bootstrap container | `[]` | +| `truefoundryBootstrap.extraVolumes` | Extra volumes for the bootstrap container | `[]` | +| `truefoundryBootstrap.affinity` | Affinity for the bootstrap container | `{}` | +| `truefoundryBootstrap.nodeSelector` | Node selector for the bootstrap container | `{}` | +| `truefoundryBootstrap.tolerations` | Tolerations specific to the bootstrap container | `{}` | +| `truefoundryBootstrap.imagePullSecrets` | Image pull secrets for the bootstrap container | `[]` | +| `truefoundryFrontendApp.enabled` | Bool to enable the frontend app | `true` | +| `truefoundryFrontendApp.tolerations` | Tolerations specific to the frontend app | `{}` | +| `truefoundryFrontendApp.replicaCount` | Number of replicas for the frontend app | `1` | +| `truefoundryFrontendApp.global` | Global values for the frontend app | `{}` | +| `truefoundryFrontendApp.imageRepository` | Image repository for the frontend app | `truefoundrycloud/truefoundry-frontend-app` | +| `truefoundryFrontendApp.envSecretName` | Secret name for the frontend app environment variables | `truefoundry-frontend-app-env-secret` | +| `truefoundryFrontendApp.imagePullPolicy` | Image pull policy for the frontend app | `IfNotPresent` | +| `truefoundryFrontendApp.nameOverride` | Override name for the frontend app | `""` | +| `truefoundryFrontendApp.fullnameOverride` | Full name override for the frontend app | `""` | +| `truefoundryFrontendApp.podAnnotations` | Annotations for the frontend app pods | `{}` | +| `truefoundryFrontendApp.podSecurityContext` | Security context for the frontend app pods | `{}` | +| `truefoundryFrontendApp.commonLabels` | Common labels for the frontend app pods | `{}` | +| `truefoundryFrontendApp.securityContext` | Security context for the frontend app | `{}` | +| `truefoundryFrontendApp.resources.limits.cpu` | CPU limit for the frontend app | `200m` | +| `truefoundryFrontendApp.resources.limits.memory` | Memory limit for the frontend app | `512Mi` | +| `truefoundryFrontendApp.resources.limits.ephemeral-storage` | Ephemeral storage limit for the frontend app | `256Mi` | +| `truefoundryFrontendApp.resources.requests.cpu` | CPU request for the frontend app | `25m` | +| `truefoundryFrontendApp.resources.requests.memory` | Memory request for the frontend app | `256Mi` | +| `truefoundryFrontendApp.resources.requests.ephemeral-storage` | Ephemeral storage request for the frontend app | `128Mi` | +| `truefoundryFrontendApp.nodeSelector` | Node selector for the frontend app | `{}` | +| `truefoundryFrontendApp.affinity` | Affinity settings for the frontend app | `{}` | +| `truefoundryFrontendApp.topologySpreadConstraints` | Topology spread constraints for the frontend app | `{}` | +| `truefoundryFrontendApp.service.type` | Service type for the frontend app | `ClusterIP` | +| `truefoundryFrontendApp.service.port` | Service port for the frontend app | `5000` | +| `truefoundryFrontendApp.service.annotations` | Annotations for the frontend app service | `{}` | +| `truefoundryFrontendApp.ingress.enabled` | Enable ingress for the frontend app | `false` | +| `truefoundryFrontendApp.ingress.annotations` | Annotations for the frontend app ingress | `{}` | +| `truefoundryFrontendApp.ingress.labels` | Labels for the frontend app ingress | `{}` | +| `truefoundryFrontendApp.ingress.ingressClassName` | Ingress class name for the frontend app | `istio` | +| `truefoundryFrontendApp.ingress.tls` | TLS settings for the frontend app | `[]` | +| `truefoundryFrontendApp.ingress.hosts` | Hosts for the frontend app | `[]` | +| `truefoundryFrontendApp.istio.virtualservice.enabled` | Enable virtual service for the frontend app | `false` | +| `truefoundryFrontendApp.istio.virtualservice.annotations` | Annotations for the frontend app virtual service | `{}` | +| `truefoundryFrontendApp.istio.virtualservice.gateways` | Gateways for the frontend app virtual service | `[]` | +| `truefoundryFrontendApp.istio.virtualservice.hosts` | Hosts for the frontend app virtual service | `[]` | +| `truefoundryFrontendApp.imageTag` | Image tag for the frontend app | `v0.3.152-rc.4` | +| `truefoundryFrontendApp.servicefoundryServerHost` | Servicefoundry server host for the frontend app | `{{ .Release.Name }}-servicefoundry-server.{{ .Release.Namespace }}.svc.cluster.local` | +| `truefoundryFrontendApp.tfyWorkflowAdminHost` | tfy workflow admin host for the frontend app | `{{ .Release.Name }}-tfy-workflow-admin-server.{{ .Release.Namespace }}.svc.cluster.local` | +| `truefoundryFrontendApp.llmGateway.external` | Make LLMGateway external | `false` | +| `truefoundryFrontendApp.llmGateway.backendHost` | Backend Host for the LLM gateway | `{{ .Release.Name }}-llm-gateway.{{ .Release.Namespace }}.svc.cluster.local` | +| `truefoundryFrontendApp.llmGateway.backendPort` | Backend Port for the LLM gateway | `8787` | +| `truefoundryFrontendApp.proxyServerHost` | Proxy server host for the frontend app | `{{ .Release.Name }}-tfy-controller.{{ .Release.Namespace }}.svc.cluster.local` | +| `truefoundryFrontendApp.serviceAccount.annotations` | Annotations for the frontend app service account | `{}` | +| `truefoundryFrontendApp.extraVolumes` | Extra volumes for the frontend app | `[]` | +| `truefoundryFrontendApp.extraVolumeMounts` | Extra volume mounts for the frontend app | `[]` | +| `truefoundryFrontendApp.imagePullSecrets` | Image pull secrets for the frontend app | `[]` | +| `mlfoundryServer.enabled` | Bool to enable the mlfoundry server | `true` | +| `mlfoundryServer.tolerations` | Tolerations specific to the mlfoundry server | `{}` | +| `mlfoundryServer.imageRepository` | Image repository for the mlfoundry server | `truefoundrycloud/mlfoundry-server` | +| `mlfoundryServer.replicaCount` | Number of replicas for the mlfoundry server | `1` | +| `mlfoundryServer.environmentName` | Environment name for the mlfoundry server | `default` | +| `mlfoundryServer.envSecretName` | Secret name for the mlfoundry server environment variables | `mlfoundry-server-env-secret` | +| `mlfoundryServer.imagePullPolicy` | Image pull policy for the mlfoundry server | `IfNotPresent` | +| `mlfoundryServer.nameOverride` | Override name for the mlfoundry server | `""` | +| `mlfoundryServer.fullnameOverride` | Full name override for the mlfoundry server | `""` | +| `mlfoundryServer.podAnnotations` | Annotations for the mlfoundry server pods | `{}` | +| `mlfoundryServer.podSecurityContext` | Security context for the mlfoundry server pods | `{}` | +| `mlfoundryServer.commonLabels` | Common labels for the mlfoundry server pods | `{}` | +| `mlfoundryServer.securityContext` | Security context for the mlfoundry server | `{}` | +| `mlfoundryServer.resources.limits.cpu` | CPU limit for the mlfoundry server | `400m` | +| `mlfoundryServer.resources.limits.memory` | Memory limit for the mlfoundry server | `1024Mi` | +| `mlfoundryServer.resources.limits.ephemeral-storage` | Ephemeral storage limit for the mlfoundry server | `256Mi` | +| `mlfoundryServer.resources.requests.cpu` | CPU request for the mlfoundry server | `100m` | +| `mlfoundryServer.resources.requests.memory` | Memory request for the mlfoundry server | `640Mi` | +| `mlfoundryServer.resources.requests.ephemeral-storage` | Ephemeral storage request for the mlfoundry server | `128Mi` | +| `mlfoundryServer.nodeSelector` | Node selector for the mlfoundry server | `{}` | +| `mlfoundryServer.affinity` | Affinity settings for the mlfoundry server | `{}` | +| `mlfoundryServer.topologySpreadConstraints` | Topology spread constraints for the mlfoundry server | `{}` | +| `mlfoundryServer.service.type` | Service type for the mlfoundry server | `ClusterIP` | +| `mlfoundryServer.service.port` | Service port for the mlfoundry server | `5000` | +| `mlfoundryServer.service.annotations` | Annotations for the mlfoundry server service | `{}` | +| `mlfoundryServer.serviceAccount.annotations` | Annotations for the mlfoundry server service account | `{}` | +| `mlfoundryServer.imageTag` | Image tag for the mlfoundry server | `v0.2.119-rc.1` | +| `mlfoundryServer.imagePullSecrets` | Image pull credentials for mlfoundry server | `[]` | +| `mlfoundryServer.extraVolumes` | Extra volumes for the mlfoundry server | `[]` | +| `mlfoundryServer.extraVolumeMounts` | Extra volume mounts for the mlfoundry server | `[]` | +| `servicefoundryServer.enabled` | Bool to enable the servicefoundry server | `true` | +| `servicefoundryServer.tolerations` | Tolerations specific to the servicefoundry server | `{}` | +| `servicefoundryServer.replicaCount` | Number of replicas for the servicefoundry server | `1` | +| `servicefoundryServer.global` | Global values for the servicefoundry server | `{}` | +| `servicefoundryServer.imageRepository` | Image repository for the servicefoundry server | `truefoundrycloud/servicefoundry-server` | +| `servicefoundryServer.environmentName` | Environment name for the servicefoundry server | `default` | +| `servicefoundryServer.envSecretName` | Secret name for the servicefoundry server environment variables | `servicefoundry-server-env-secret` | +| `servicefoundryServer.imagePullPolicy` | Image pull policy for the servicefoundry server | `IfNotPresent` | +| `servicefoundryServer.nameOverride` | Override name for the servicefoundry server | `""` | +| `servicefoundryServer.fullnameOverride` | Full name override for the servicefoundry server | `""` | +| `servicefoundryServer.podAnnotations` | Annotations for the servicefoundry server pods | `{}` | +| `servicefoundryServer.podSecurityContext` | Security context for the servicefoundry server pods | `{}` | +| `servicefoundryServer.commonLabels` | Common labels for the servicefoundry server pods | `{}` | +| `servicefoundryServer.securityContext` | Security context for the servicefoundry server | `{}` | +| `servicefoundryServer.resources.limits.cpu` | CPU limit for the servicefoundry server | `600m` | +| `servicefoundryServer.resources.limits.memory` | Memory limit for the servicefoundry server | `1024Mi` | +| `servicefoundryServer.resources.limits.ephemeral-storage` | Ephemeral storage limit for the servicefoundry server | `256Mi` | +| `servicefoundryServer.resources.requests.cpu` | CPU request for the servicefoundry server | `400m` | +| `servicefoundryServer.resources.requests.memory` | Memory request for the servicefoundry server | `512Mi` | +| `servicefoundryServer.resources.requests.ephemeral-storage` | Ephemeral storage request for the servicefoundry server | `128Mi` | +| `servicefoundryServer.nodeSelector` | Node selector for the servicefoundry server | `{}` | +| `servicefoundryServer.affinity` | Affinity settings for the servicefoundry server | `{}` | +| `servicefoundryServer.topologySpreadConstraints` | Topology spread constraints for the servicefoundry server | `{}` | +| `servicefoundryServer.service.type` | Service type for the servicefoundry server | `ClusterIP` | +| `servicefoundryServer.service.port` | Service port for the servicefoundry server | `3000` | +| `servicefoundryServer.service.annotations` | Annotations for the servicefoundry server service | `{}` | +| `servicefoundryServer.serviceAccount.annotations` | Annotations for the servicefoundry server service account | `{}` | +| `servicefoundryServer.extraVolumes` | Extra volumes for the servicefoundry server | `[]` | +| `servicefoundryServer.extraVolumeMounts` | Extra volume mounts for the servicefoundry server | `[]` | +| `servicefoundryServer.imagePullSecrets` | Image pull credentials for servicefoundry server | `[]` | +| `servicefoundryServer.rbac.enabled` | Enable RBAC for the servicefoundry server | `true` | +| `servicefoundryServer.configs.cicdTemplates` | CICD Template for servicefoundry server | `{{ .Release.Name }}-cicd-templates-cm` | +| `servicefoundryServer.configs.workbenchImages` | Workbench Images for servicefoundry server | `{{ .Release.Name }}-workbench-images-cm` | +| `servicefoundryServer.imageTag` | Image Tag for servicefoundry server | `v0.4.2-rc.3` | +| `tfyK8sController.enabled` | Bool to enable the tfyK8sController | `true` | +| `tfyK8sController.tolerations` | Tolerations specific to the tfyK8sController | `{}` | +| `tfyK8sController.replicaCount` | Number of replicas for the tfyK8sController | `1` | +| `tfyK8sController.global` | Global values for the tfyK8sController | `{}` | +| `tfyK8sController.imageRepository` | Image repository for the tfyK8sController | `truefoundrycloud/tfy-k8s-controller` | +| `tfyK8sController.environmentName` | Environment name for tfyK8sController | `default` | +| `tfyK8sController.envSecretName` | Secret name for the tfyK8sController environment variables | `tfy-k8s-controller-env-secret` | +| `tfyK8sController.imagePullPolicy` | Image pull policy for the tfyK8sController | `IfNotPresent` | +| `tfyK8sController.nameOverride` | Override name for the tfyK8sController | `""` | +| `tfyK8sController.fullnameOverride` | Full name override for the tfyK8sController | `""` | +| `tfyK8sController.podAnnotations` | Annotations for the tfyK8sController pods | `{}` | +| `tfyK8sController.podSecurityContext` | Security context for the tfyK8sController pods | `{}` | +| `tfyK8sController.commonLabels` | Common labels for the tfyK8sController pods | `{}` | +| `tfyK8sController.securityContext` | Security context for the tfyK8sController | `{}` | +| `tfyK8sController.resources.limits.cpu` | CPU limit for the tfyK8sController | `400m` | +| `tfyK8sController.resources.limits.memory` | Memory limit for the tfyK8sController | `512Mi` | +| `tfyK8sController.resources.limits.ephemeral-storage` | Ephemeral storage limit for the tfyK8sController | `256Mi` | +| `tfyK8sController.resources.requests.cpu` | CPU request for the tfyK8sController | `200m` | +| `tfyK8sController.resources.requests.memory` | Memory request for the tfyK8sController | `256Mi` | +| `tfyK8sController.resources.requests.ephemeral-storage` | Ephemeral storage request for the tfyK8sController | `128Mi` | +| `tfyK8sController.nodeSelector` | Node selector for the tfyK8sController | `{}` | +| `tfyK8sController.affinity` | Affinity settings for the tfyK8sController | `{}` | +| `tfyK8sController.topologySpreadConstraints` | Topology spread constraints for the tfyK8sController | `{}` | +| `tfyK8sController.service.type` | Service type for the tfyK8sController | `ClusterIP` | +| `tfyK8sController.service.port` | Service port for the tfyK8sController | `3002` | +| `tfyK8sController.service.annotations` | Annotations for the tfyK8sController service | `{}` | +| `tfyK8sController.serviceAccount.annotations` | Annotations for the tfyK8sController service account | `{}` | +| `tfyK8sController.extraVolumes` | Extra volumes for the tfyK8sController | `[]` | +| `tfyK8sController.extraVolumeMounts` | Extra volume mounts for the tfyK8sController | `[]` | +| `tfyK8sController.imagePullSecrets` | Image pull secrets for the tfyK8sController | `[]` | +| `tfyK8sController.imageTag` | Image Tag for tfyK8sController | `v0.1.4-rc.1` | +| `sfyManifestService.enabled` | Bool to enable the sfy manifest service | `true` | +| `sfyManifestService.tolerations` | Tolerations specific to the sfy manifest service | `{}` | +| `sfyManifestService.global` | Global values for the sfy manifest service | `{}` | +| `sfyManifestService.imageRepository` | Image repository for the sfy manifest service | `truefoundrycloud/sfy-manifest-service` | +| `sfyManifestService.replicaCount` | Number of replicas for the sfy manifest service | `1` | +| `sfyManifestService.environmentName` | Environment name for the sfy manifest service | `default` | +| `sfyManifestService.envSecretName` | Secret name for the sfy manifest service environment variables | `sfy-manifest-service-env-secret` | +| `sfyManifestService.imagePullPolicy` | Image pull policy for the sfy manifest service | `IfNotPresent` | +| `sfyManifestService.nameOverride` | Override name for the sfy manifest service | `""` | +| `sfyManifestService.fullnameOverride` | Full name override for the sfy manifest service | `""` | +| `sfyManifestService.podAnnotations` | Annotations for the sfy manifest service pods | `{}` | +| `sfyManifestService.podSecurityContext` | Security context for the sfy manifest service pods | `{}` | +| `sfyManifestService.commonLabels` | Common labels for the sfy manifest service pods | `{}` | +| `sfyManifestService.securityContext` | Security context for the sfy manifest service | `{}` | +| `sfyManifestService.resources.limits.cpu` | CPU limit for the sfy manifest service | `200m` | +| `sfyManifestService.resources.limits.memory` | Memory limit for the sfy manifest service | `512Mi` | +| `sfyManifestService.resources.limits.ephemeral-storage` | Ephemeral storage limit for the sfy manifest service | `256Mi` | +| `sfyManifestService.resources.requests.cpu` | CPU request for the sfy manifest service | `100m` | +| `sfyManifestService.resources.requests.memory` | Memory request for the sfy manifest service | `256Mi` | +| `sfyManifestService.resources.requests.ephemeral-storage` | Ephemeral storage request for the sfy manifest service | `128Mi` | +| `sfyManifestService.nodeSelector` | Node selector for the sfy manifest service | `{}` | +| `sfyManifestService.affinity` | Affinity settings for the sfy manifest service | `{}` | +| `sfyManifestService.topologySpreadConstraints` | Topology spread constraints for the sfy manifest service | `{}` | +| `sfyManifestService.service.type` | Service type for the sfy manifest service | `ClusterIP` | +| `sfyManifestService.service.port` | Service port for the sfy manifest service | `8080` | +| `sfyManifestService.service.annotations` | Annotations for the sfy manifest service | `{}` | +| `sfyManifestService.serviceAccount.annotations` | Annotations for the sfy manifest service service account | `{}` | +| `sfyManifestService.extraVolumes` | Extra volumes for the sfy manifest service | `[]` | +| `sfyManifestService.extraVolumeMounts` | Extra volume mounts for the sfy manifest service | `[]` | +| `sfyManifestService.imagePullSecrets` | Image pull credentials for the sfy manifest service | `[]` | +| `sfyManifestService.imageTag` | Image tag for the sfy manifest service | `0.1.133` | +| `nats.enabled` | Bool to enable the NATS server | `true` | +| `nats.nats.image.repository` | NATS server image repository | `nats` | +| `nats.nats.image.tag` | NATS server image tag | `2.10.18-alpine3.20` | +| `nats.nats.advertise` | Bool to enable NATS server advertise | `false` | +| `nats.nats.imagePullSecrets` | Image pull credentials for NATS server | `[]` | +| `nats.nats.jetstream.enabled` | Bool to enable Jetstream for NATS server | `true` | +| `nats.nats.jetstream.memStorage.enabled` | Bool to enable memory for Jetstream | `true` | +| `nats.nats.jetstream.memStorage.size` | Memory Storage size for Jetstream | `1Gi` | +| `nats.nats.jetstream.fileStorage.enabled` | Bool to enable file storage for Jetstream | `true` | +| `nats.nats.jetstream.fileStorage.storageDirectory` | Storage directory | `/data` | +| `nats.nats.jetstream.fileStorage.size` | Size for file storage for Jetstream | `10Gi` | +| `nats.nats.jetstream.fileStorage.accessModes` | Storage directory Access Modes | `["ReadWriteOnce"]` | +| `nats.nats.logging.debug` | Bool to enable debug logging for NATS server | `true` | +| `nats.nats.resources.limits.cpu` | CPU limit for NATS server | `50m` | +| `nats.nats.resources.limits.memory` | Memory limit for NATS server | `512Mi` | +| `nats.nats.resources.requests.cpu` | CPU request for NATS server | `25m` | +| `nats.nats.resources.requests.memory` | Memory request for NATS server | `256Mi` | +| `nats.natsbox.enabled` | Bool to enable NATSBox | `false` | +| `nats.natsbox.image.repository` | NATSBox image repository | `natsio/nats-box` | +| `nats.natsbox.image.tag` | NATSBox image tag | `0.13.2` | +| `nats.natsbox.imagePullSecrets` | Image pull credentials for NATSBox | `[]` | +| `nats.natsbox.resources.limits.cpu` | CPU limit for NATSBox | `50m` | +| `nats.natsbox.resources.limits.memory` | Memory limit for NATSBox | `512Ki` | +| `nats.natsbox.resources.requests.cpu` | CPU request for NATSBox | `25m` | +| `nats.natsbox.resources.requests.memory` | Memory request for NATSBox | `256Ki` | +| `nats.exporter.enabled` | Bool to enable NATS exporter | `true` | +| `nats.exporter.image.repository` | NATS exporter image repository | `natsio/prometheus-nats-exporter` | +| `nats.exporter.image.tag` | NATS exporter image tag | `0.15.0` | +| `nats.reloader.enabled` | Bool to enable NATS reloader | `true` | +| `nats.reloader.image.repository` | NATS reloader image repository | `natsio/nats-server-config-reloader` | +| `nats.reloader.image.tag` | NATS reloader image tag | `0.14.3` | +| `nats.cluster.enabled` | Bool to enable NATS cluster | `true` | +| `nats.cluster.replicas` | Number of replicas for NATS cluster | `3` | +| `nats.cluster.noAdvertise` | Bool to enable NATS cluster | `true` | +| `nats.websocket.enabled` | Bool to enable NATS websocket | `true` | +| `nats.websocket.port` | Port for NATS websocket | `443` | +| `nats.websocket.noTLS` | Bool to enable NATS websocket without TLS | `true` | +| `nats.websocket.sameOrigin` | Bool to enable NATS websocket same origin | `false` | +| `nats.websocket.allowedOrigins` | Allowed origins for NATS websocket | `[]` | +| `nats.auth.enabled` | Bool to enable NATS authentication | `true` | +| `nats.auth.resolver.type` | Type for NATS authentication resolver | `memory` | +| `tfyBuild.enabled` | Bool to enable the tfyBuild server | `true` | +| `tfyBuild.global` | Global values for the tfyBuild server | `{}` | +| `tfyBuild.nameOverride` | Override name for the tfyBuild server | `""` | +| `tfyBuild.fullnameOverride` | Full name override for the tfyBuild server | `""` | +| `tfyBuild.serviceAccount.annotations` | Annotations for the tfyBuild server service account | `{}` | +| `tfyBuild.preemptibleDeployment.enabled` | Bool to enable preemptible deployment for the tfyBuild server | `false` | +| `tfyBuild.preemptibleDeployment.extraEnvs` | Extra environment variables for the tfyBuild server | `[]` | +| `tfyBuild.preemptibleDeployment.extraVolumeMounts` | Extra volume mounts for the tfyBuild server | `[]` | +| `tfyBuild.preemptibleDeployment.extraVolumes` | Extra volumes for the tfyBuild server | `[]` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.image.repository` | Repository for the sfyBuilder | `public.ecr.aws/truefoundrycloud/sfy-builder` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.image.tag` | Tag for the sfyBuilder | `v0.8.0` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.limits.cpu` | CPU limit for the sfyBuilder | `1` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.limits.ephemeral-storage` | Ephemeral storage limit for the sfyBuilder | `20Gi` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.limits.memory` | Memory limit for the sfyBuilder | `2Gi` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.requests.cpu` | CPU request for the sfyBuilder | `200m` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.requests.ephemeral-storage` | Ephemeral storage request for the sfyBuilder | `10Gi` | +| `tfyBuild.truefoundryWorkflows.sfyBuilder.resources.requests.memory` | Memory request for the sfyBuilder | `500Mi` | +| `tfyBuild.truefoundryWorkflows.extraEnvs` | Extra environment variables for the tfyBuild server | `[]` | +| `tfyBuild.truefoundryWorkflows.extraVolumeMounts` | Extra volume mounts for the tfyBuild server | `[]` | +| `tfyBuild.truefoundryWorkflows.extraVolumes` | Extra volumes for the tfyBuild server | `[]` | +| `tfyBuild.truefoundryWorkflows.affinity` | Affinity settings for the tfyBuild server | `{}` | +| `tfyBuild.truefoundryWorkflows.nodeSelector` | Node selector for the tfyBuild server | `{}` | +| `tfyBuild.truefoundryWorkflows.logMarkers.error` | Error log marker for the tfyBuild server | `\u001b[31m[Error]\u001b[0m` | +| `tfyBuild.truefoundryWorkflows.logMarkers.done` | Done log marker for the tfyBuild server | `\u001b[32m[Done]\u001b[0m` | +| `tfyBuild.truefoundryWorkflows.logMarkers.start` | Start log marker for the tfyBuild server | `\u001b[36m[Start]\u001b[0m` | +| `tfyBuild.truefoundryWorkflows.logMarkers.clientPrefix` | Client prefix for the tfyBuild server | `["TFY-CLIENT"]` | +| `tfyBuild.truefoundryWorkflows.logMarkers.supportSlack` | Slack support URL for the tfyBuild server | `https://join.slack.com/t/truefoundry/shared_invite/zt-11ht512jq-nDJq~HJMqc6wBw90JVlo7g` | +| `tfyBuild.truefoundryWorkflows.logMarkers.serviceFoundryUiUrl` | Service foundry UI URL | `https://app.truefoundry.com/workspace` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.enabled` | Bool to enable SOCI index build and push | `false` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.image.repository` | Repository for the SOCI index build and push | `public.ecr.aws/truefoundrycloud/soci-index-builder` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.image.tag` | Tag for the SOCI index build and push | `0.2.0-rc.1` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.imageSizeThresholdBytes` | Image size threshold for the SOCI index build and push | `419430400` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.extraEnvs` | Extra environment variables for the SOCI index build and push | `[]` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.extraVolumeMounts` | Extra volume mounts for the SOCI index build and push | `[]` | +| `tfyBuild.truefoundryWorkflows.sociIndexBuildAndPush.extraVolume` | | `[]` | +| `tfyBuild.truefoundryWorkflows.preBuild.enabled` | Enable pre-build step for the tfyBuild server | `false` | +| `tfyBuild.truefoundryWorkflows.preBuild.image.repository` | Image repository for the pre-build step | `""` | +| `tfyBuild.truefoundryWorkflows.preBuild.image.tag` | Image tag for the pre-build step | `""` | +| `tfyBuild.truefoundryWorkflows.preBuild.command` | Command for the pre-build step | `[]` | +| `tfyBuild.truefoundryWorkflows.preBuild.script` | Script for the pre-build step | `""` | +| `tfyBuild.truefoundryWorkflows.preBuild.resources` | Resource requests and limits for the pre-build step | `{}` | +| `tfyBuild.truefoundryWorkflows.postBuild.enabled` | Enable post-build step for the tfyBuild server | `false` | +| `tfyBuild.truefoundryWorkflows.postBuild.image.repository` | Image repository for the post-build step | `""` | +| `tfyBuild.truefoundryWorkflows.postBuild.image.tag` | Image tag for the post-build step | `""` | +| `tfyBuild.truefoundryWorkflows.postBuild.command` | Command for the post-build step | `[]` | +| `tfyBuild.truefoundryWorkflows.postBuild.script` | Script for the post-build step | `""` | +| `tfyBuild.truefoundryWorkflows.postBuild.resources` | Resource requests and limits for the post-build step | `{}` | +| `tfy-buildkitd-service.enabled` | Bool to enable the tfy-buildkitd service | `false` | +| `postgresql.auth.existingSecret` | Name of the existing secret for PostgreSQL authentication | `truefoundry-postgresql-auth-secret` | +| `postgresql.auth.database` | Name of the database for PostgreSQL | `truefoundry` | +| `tfyController.enabled` | Bool to enable the tfyController | `true` | +| `tfyController.global` | Global values for the tfyController | `{}` | +| `tfyController.imageRepository` | Image repository for the tfyController | `truefoundrycloud/tfy-controller` | +| `tfyController.environmentName` | Environment name for the tfyController | `default` | +| `tfyController.envSecretName` | Secret name for the tfyController environment variables | `sfy-manifest-service-env-secret` | +| `tfyController.imagePullPolicy` | Image pull policy for the tfyController | `IfNotPresent` | +| `tfyController.nameOverride` | Override name for the tfyController | `""` | +| `tfyController.fullnameOverride` | Full name override for the tfyController | `""` | +| `tfyController.podAnnotations` | Annotations for the tfyController pods | `{}` | +| `tfyController.podSecurityContext` | Security context for the tfyController pods | `{}` | +| `tfyController.commonLabels` | Common labels for the tfyController pods | `{}` | +| `tfyController.securityContext` | Security context for the tfyController | `{}` | +| `tfyController.imagePullSecrets` | Image pull secrets for the tfycontroller | `[]` | +| `tfyController.nodeSelector` | Node selector for the tfyController | `{}` | +| `tfyController.affinity` | Affinity settings for the tfyController | `{}` | +| `tfyController.service.type` | Service type for the tfyController | `ClusterIP` | +| `tfyController.service.port` | Service port for the tfyController | `8123` | +| `tfyController.service.annotations` | Annotations for the tfyController service | `{}` | +| `tfyController.serviceAccount.annotations` | Annotations for the tfyController service account | `{}` | +| `tfyController.imageTag` | Image tag for the tfyController | `v0.0.27` | +| `tfyWorkflowAdmin.enabled` | Bool to enable the tfyWorkflowAdmin | `false` | +| `tfyWorkflowAdmin.global` | Global values for the tfyWorkflowAdmin | `{}` | +| `tfyWorkflowAdmin.imageRepository` | Image repository for the tfyWorkflowAdmin | `truefoundrycloud/tfy-workflow-admin` | +| `tfyWorkflowAdmin.environmentName` | Environment name for the tfyWorkflowAdmin | `default` | +| `tfyWorkflowAdmin.envSecretName` | Secret name for the tfyWorkflowAdmin environment variables | `tfy-workflow-admin-env-secret` | +| `tfyWorkflowAdmin.imagePullPolicy` | Image pull policy for the tfyWorkflowAdmin | `IfNotPresent` | +| `tfyWorkflowAdmin.nameOverride` | Override name for the tfyWorkflowAdmin | `""` | +| `tfyWorkflowAdmin.fullnameOverride` | Full name override for the tfyWorkflowAdmin | `""` | +| `tfyWorkflowAdmin.podAnnotations` | Annotations for the tfyWorkflowAdmin pods | `{}` | +| `tfyWorkflowAdmin.podSecurityContext` | Security context for the tfyWorkflowAdmin pods | `{}` | +| `tfyWorkflowAdmin.commonLabels` | Common labels for the tfyWorkflowAdmin pods | `{}` | +| `tfyWorkflowAdmin.securityContext` | Security context for the tfyWorkflowAdmin | `{}` | +| `tfyWorkflowAdmin.imagePullSecrets` | Image pull secrets for the tfycontroller | `[]` | +| `tfyWorkflowAdmin.nodeSelector` | Node selector for the tfyWorkflowAdmin | `{}` | +| `tfyWorkflowAdmin.affinity` | Affinity settings for the tfyWorkflowAdmin | `{}` | +| `tfyWorkflowAdmin.service.type` | Service type for the tfyWorkflowAdmin | `ClusterIP` | +| `tfyWorkflowAdmin.service.port` | Service port for the tfyWorkflowAdmin | `8089` | +| `tfyWorkflowAdmin.service.annotations` | Annotations for the tfyWorkflowAdmin service | `{}` | +| `tfyWorkflowAdmin.serviceAccount.annotations` | Annotations for the tfyWorkflowAdmin service account | `{}` | +| `tfyWorkflowAdmin.s3BucketName` | S3 bucket name for the tfyWorkflowAdmin | `""` | +| `tfyWorkflowAdmin.awsRegion` | AWS region for the tfyWorkflowAdmin | `""` | +| `tfyWorkflowAdmin.imageTag` | Image tag for the tfyController | `v0.1.3-rc.1` | | Name | Description | Value | | ------------------------------------------------------------------------------- | --------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |