From 44f5f42b3e5a75747932a6d76e8fc8fef625f3d2 Mon Sep 17 00:00:00 2001 From: Kevin Su Date: Fri, 1 Sep 2023 10:24:02 -0700 Subject: [PATCH] Flyte Agent Helm Chart (#3935) Signed-off-by: Kevin Su --- .github/workflows/helm-charts.yaml | 2 +- .gitignore | 2 + charts/flyte-agent/.helmignore | 23 ++++ charts/flyte-agent/Chart.yaml | 5 + charts/flyte-agent/README.md | 37 ++++++ charts/flyte-agent/templates/_helpers.tpl | 46 +++++++ .../templates/agent/deployment.yaml | 34 +++--- .../flyte-agent/templates/agent/secret.yaml | 9 ++ .../templates/agent/service.yaml | 12 +- .../templates/agent/serviceaccount.yaml} | 8 +- charts/flyte-agent/values.yaml | 74 ++++++++++++ charts/flyte-binary/Chart.yaml | 6 + charts/flyte-binary/README.md | 49 ++------ charts/flyte-binary/templates/_helpers.tpl | 18 --- .../templates/agent/deployment.yaml | 112 ------------------ .../flyte-binary/templates/agent/service.yaml | 48 -------- .../templates/agent/serviceaccount.yaml | 27 ----- charts/flyte-binary/templates/configmap.yaml | 6 +- charts/flyte-binary/values.yaml | 102 +--------------- charts/flyte-core/Chart.yaml | 6 + charts/flyte-core/README.md | 28 +---- charts/flyte-core/values.yaml | 55 --------- charts/flyte/README.md | 27 +---- charts/flyte/values.yaml | 67 +---------- .../agent/flyte_agent_helm_generated.yaml | 100 ++++++++++++++++ deployment/sandbox/flyte_helm_generated.yaml | 91 +------------- .../sandbox-bundled/manifests/complete.yaml | 4 +- docker/sandbox-bundled/manifests/dev.yaml | 4 +- script/generate_helm.sh | 8 +- 29 files changed, 378 insertions(+), 632 deletions(-) create mode 100644 charts/flyte-agent/.helmignore create mode 100644 charts/flyte-agent/Chart.yaml create mode 100644 charts/flyte-agent/README.md create mode 100755 charts/flyte-agent/templates/_helpers.tpl rename charts/{flyte-core => flyte-agent}/templates/agent/deployment.yaml (51%) create mode 100644 charts/flyte-agent/templates/agent/secret.yaml rename charts/{flyte-core => flyte-agent}/templates/agent/service.yaml (56%) rename charts/{flyte-core/templates/agent/rbac.yaml => flyte-agent/templates/agent/serviceaccount.yaml} (60%) create mode 100755 charts/flyte-agent/values.yaml delete mode 100644 charts/flyte-binary/templates/agent/deployment.yaml delete mode 100644 charts/flyte-binary/templates/agent/service.yaml delete mode 100644 charts/flyte-binary/templates/agent/serviceaccount.yaml create mode 100644 deployment/agent/flyte_agent_helm_generated.yaml diff --git a/.github/workflows/helm-charts.yaml b/.github/workflows/helm-charts.yaml index 875a861749..2a9cb9b88f 100644 --- a/.github/workflows/helm-charts.yaml +++ b/.github/workflows/helm-charts.yaml @@ -13,7 +13,7 @@ jobs: strategy: fail-fast: false matrix: - chart: ["flyte-binary", "flyte-core"] + chart: ["flyte-binary", "flyte-core", "flyte-agent"] steps: - name: Checkout uses: actions/checkout@v3 diff --git a/.gitignore b/.gitignore index 819c940142..5509304e69 100644 --- a/.gitignore +++ b/.gitignore @@ -19,6 +19,8 @@ __pycache__/ /charts/flyte/charts /charts/flyte-deps/charts /charts/flyte/Chart.lock +/charts/flyte-binary/Chart.lock +/charts/flyte-agent/Chart.lock /charts/flyte-deps/Chart.lock /charts/flyte-core/Chart.lock /docker/sandbox-lite/storage/charts diff --git a/charts/flyte-agent/.helmignore b/charts/flyte-agent/.helmignore new file mode 100644 index 0000000000..0e8a0eb36f --- /dev/null +++ b/charts/flyte-agent/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/charts/flyte-agent/Chart.yaml b/charts/flyte-agent/Chart.yaml new file mode 100644 index 0000000000..33c2ec4b02 --- /dev/null +++ b/charts/flyte-agent/Chart.yaml @@ -0,0 +1,5 @@ +apiVersion: v2 +name: flyteagent +description: A Helm chart for Flyte agent +type: application +version: v0.1.10 # VERSION diff --git a/charts/flyte-agent/README.md b/charts/flyte-agent/README.md new file mode 100644 index 0000000000..10f65508f1 --- /dev/null +++ b/charts/flyte-agent/README.md @@ -0,0 +1,37 @@ +# flyteagent + +![Version: v0.1.10](https://img.shields.io/badge/Version-v0.1.10-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) + +A Helm chart for Flyte agent + +## Values + +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| additionalContainers | list | `[]` | Appends additional containers to the deployment spec. May include template values. | +| additionalVolumeMounts | list | `[]` | Appends additional volume mounts to the main container's spec. May include template values. | +| additionalVolumes | list | `[]` | Appends additional volumes to the deployment spec. May include template values. | +| affinity | object | `{}` | affinity for flyteagent deployment | +| agentSecret.secretData | object | `{"data":{"username":"User"}}` | Specify your Secret (with sensitive data) or pseudo-manifest (without sensitive data). | +| commonAnnotations | object | `{}` | | +| commonLabels | object | `{}` | | +| configPath | string | `"/etc/flyteagent/config/*.yaml"` | Default regex string for searching configuration files | +| extraArgs | object | `{}` | Appends extra command line arguments to the main command | +| fullnameOverride | string | `""` | | +| image.pullPolicy | string | `"IfNotPresent"` | Docker image pull policy | +| image.repository | string | `"ghcr.io/flyteorg/flyteagent"` | Docker image for flyteagent deployment | +| image.tag | string | `"1.8.3"` | Docker image tag | +| nameOverride | string | `""` | | +| nodeSelector | object | `{}` | nodeSelector for flyteagent deployment | +| podAnnotations | object | `{}` | Annotations for flyteagent pods | +| ports.containerPort | int | `8000` | | +| ports.name | string | `"agent-grpc"` | | +| priorityClassName | string | `""` | Sets priorityClassName for datacatalog pod(s). | +| replicaCount | int | `1` | Replicas count for flyteagent deployment | +| resources | object | `{"limits":{"cpu":"500m","ephemeral-storage":"200Mi","memory":"200Mi"},"requests":{"cpu":"500m","ephemeral-storage":"200Mi","memory":"200Mi"}}` | Default resources requests and limits for flyteagent deployment | +| service | object | `{"annotations":{"projectcontour.io/upstream-protocol.h2c":"grpc"},"type":"ClusterIP"}` | Service settings for flyteagent | +| serviceAccount | object | `{"annotations":{},"create":true,"imagePullSecrets":[]}` | Configuration for service accounts for flyteagent | +| serviceAccount.annotations | object | `{}` | Annotations for ServiceAccount attached to flyteagent pods | +| serviceAccount.create | bool | `true` | Should a service account be created for flyteagent | +| serviceAccount.imagePullSecrets | list | `[]` | ImagePullSecrets to automatically assign to the service account | +| tolerations | list | `[]` | tolerations for flyteagent deployment | diff --git a/charts/flyte-agent/templates/_helpers.tpl b/charts/flyte-agent/templates/_helpers.tpl new file mode 100755 index 0000000000..fffa18304a --- /dev/null +++ b/charts/flyte-agent/templates/_helpers.tpl @@ -0,0 +1,46 @@ +{{/* vim: set filetype=mustache: */}} + +{{- define "flyte.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{- define "flyte.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{- define "flyte.namespace" -}} +{{- default .Release.Namespace .Values.forceNamespace | trunc 63 | trimSuffix "-" -}} +{{- end -}} + + +{{- define "flyteagent.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} +{{- end -}} + +{{- define "flyteagent.selectorLabels" -}} +app.kubernetes.io/name: {{ template "flyteagent.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end -}} + +{{- define "flyteagent.labels" -}} +{{ include "flyteagent.selectorLabels" . }} +helm.sh/chart: {{ include "flyte.chart" . }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end -}} + +# Optional blocks for secret mount + +{{- define "agentSecret.volume" -}} +- name: {{ include "flyte.name" . }} + secret: + secretName: {{ include "flyte.name" . }} +{{- end }} + +{{- define "agentSecret.volumeMount" -}} +- mountPath: /etc/secrets + name: {{ include "flyte.name" . }} +{{- end }} + +{{- define "flyteagent.servicePort" -}} +{{ include .Values.ports.containerPort}} +{{- end }} \ No newline at end of file diff --git a/charts/flyte-core/templates/agent/deployment.yaml b/charts/flyte-agent/templates/agent/deployment.yaml similarity index 51% rename from charts/flyte-core/templates/agent/deployment.yaml rename to charts/flyte-agent/templates/agent/deployment.yaml index ed3d38dace..a8b7a3889e 100644 --- a/charts/flyte-core/templates/agent/deployment.yaml +++ b/charts/flyte-agent/templates/agent/deployment.yaml @@ -1,4 +1,3 @@ -{{- if .Values.flyteagent.enabled }} apiVersion: apps/v1 kind: Deployment metadata: @@ -6,48 +5,49 @@ metadata: namespace: {{ template "flyte.namespace" . }} labels: {{ include "flyteagent.labels" . | nindent 4 }} spec: - replicas: {{ .Values.flyteagent.replicaCount }} + replicas: {{ .Values.replicaCount }} selector: matchLabels: {{ include "flyteagent.selectorLabels" . | nindent 6 }} template: metadata: annotations: - {{- with .Values.flyteagent.podAnnotations }} + {{- with .Values.podAnnotations }} {{- toYaml . | nindent 8 }} {{- end }} labels: {{ include "flyteagent.labels" . | nindent 8 }} spec: - {{- if .Values.flyteagent.priorityClassName }} - priorityClassName: {{ .Values.flyteagent.priorityClassName }} + {{- if .Values.priorityClassName }} + priorityClassName: {{ .Values.priorityClassName }} {{- end }} containers: - command: - pyflyte - serve - image: "{{ .Values.flyteagent.image.repository }}:{{ .Values.flyteagent.image.tag }}" - imagePullPolicy: "{{ .Values.flyteagent.image.pullPolicy }}" + image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" + imagePullPolicy: "{{ .Values.image.pullPolicy }}" name: flyteagent + volumeMounts: {{- include "agentSecret.volumeMount" . | nindent 8 }} ports: - - containerPort: {{ .Values.flyteagent.ports.containerPort }} - name: {{ .Values.flyteagent.ports.name }} - resources: {{- toYaml .Values.flyteagent.resources | nindent 10 }} - {{- with .Values.flyteagent.additionalVolumeMounts -}} + - containerPort: {{ .Values.ports.containerPort }} + name: {{ .Values.ports.name }} + resources: {{- toYaml .Values.resources | nindent 10 }} + {{- with .Values.additionalVolumeMounts -}} {{ tpl (toYaml .) $ | nindent 8 }} {{- end }} - {{- with .Values.flyteagent.additionalContainers -}} + {{- with .Values.additionalContainers -}} {{- tpl (toYaml .) $ | nindent 6}} {{- end }} serviceAccountName: {{ template "flyteagent.name" . }} - {{- with .Values.flyteagent.additionalVolumes -}} + volumes: {{- include "agentSecret.volume" . | nindent 6 }} + {{- with .Values.additionalVolumes -}} {{ tpl (toYaml .) $ | nindent 6 }} {{- end }} - {{- with .Values.flyteagent.nodeSelector }} + {{- with .Values.nodeSelector }} nodeSelector: {{ tpl (toYaml .) $ | nindent 8 }} {{- end }} - {{- with .Values.flyteagent.affinity }} + {{- with .Values.affinity }} affinity: {{ tpl (toYaml .) $ | nindent 8 }} {{- end }} - {{- with .Values.flyteagent.tolerations }} + {{- with .Values.tolerations }} tolerations: {{ tpl (toYaml .) $ | nindent 8 }} {{- end }} -{{- end }} diff --git a/charts/flyte-agent/templates/agent/secret.yaml b/charts/flyte-agent/templates/agent/secret.yaml new file mode 100644 index 0000000000..c15c3d5723 --- /dev/null +++ b/charts/flyte-agent/templates/agent/secret.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: Secret +metadata: + name: {{ template "flyteagent.name" . }} + namespace: {{ template "flyte.namespace" . }} +type: Opaque +{{- with .Values.agentSecret.secretData -}} +{{ tpl (toYaml .) $ | nindent 0 }} +{{- end }} diff --git a/charts/flyte-core/templates/agent/service.yaml b/charts/flyte-agent/templates/agent/service.yaml similarity index 56% rename from charts/flyte-core/templates/agent/service.yaml rename to charts/flyte-agent/templates/agent/service.yaml index a3803714c9..a6e9908b31 100644 --- a/charts/flyte-core/templates/agent/service.yaml +++ b/charts/flyte-agent/templates/agent/service.yaml @@ -1,21 +1,19 @@ -{{- if .Values.flyteagent.enabled }} apiVersion: v1 kind: Service metadata: name: {{ template "flyteagent.name" . }} namespace: {{ template "flyte.namespace" . }} labels: {{ include "flyteagent.labels" . | nindent 4 }} - {{- with .Values.flyteagent.service.annotations }} + {{- with .Values.service.annotations }} annotations: {{ tpl (toYaml .) $ | nindent 4 }} {{- end }} spec: - {{- with .Values.flyteagent.service.type}} + {{- with .Values.service.type}} type: {{ . }} {{- end }} ports: - - name: {{ .Values.flyteagent.ports.name }} - port: {{ .Values.flyteagent.ports.containerPort }} + - name: {{ .Values.ports.name }} + port: {{ .Values.ports.containerPort }} protocol: TCP - targetPort: {{ .Values.flyteagent.ports.name }} + targetPort: {{ .Values.ports.name }} selector: {{ include "flyteagent.selectorLabels" . | nindent 4 }} -{{- end }} diff --git a/charts/flyte-core/templates/agent/rbac.yaml b/charts/flyte-agent/templates/agent/serviceaccount.yaml similarity index 60% rename from charts/flyte-core/templates/agent/rbac.yaml rename to charts/flyte-agent/templates/agent/serviceaccount.yaml index 56097daac2..4c256ba36f 100644 --- a/charts/flyte-core/templates/agent/rbac.yaml +++ b/charts/flyte-agent/templates/agent/serviceaccount.yaml @@ -1,17 +1,15 @@ -{{- if .Values.flyteagent.enabled }} --- -{{- if .Values.flyteagent.serviceAccount.create }} +{{- if .Values.serviceAccount.create }} apiVersion: v1 kind: ServiceAccount metadata: name: {{ template "flyteagent.name" . }} namespace: {{ template "flyte.namespace" . }} labels: {{ include "flyteagent.labels" . | nindent 4 }} - {{- with .Values.flyteagent.serviceAccount.annotations }} + {{- with .Values.serviceAccount.annotations }} annotations: {{ tpl (toYaml .) $ | nindent 4 }} {{- end}} -{{- with .Values.flyteagent.serviceAccount.imagePullSecrets }} +{{- with .Values.serviceAccount.imagePullSecrets }} imagePullSecrets: {{ tpl (toYaml .) $ | nindent 2 }} {{- end }} {{- end }} -{{- end }} \ No newline at end of file diff --git a/charts/flyte-agent/values.yaml b/charts/flyte-agent/values.yaml new file mode 100755 index 0000000000..446ab25f64 --- /dev/null +++ b/charts/flyte-agent/values.yaml @@ -0,0 +1,74 @@ +# --------------------------------------------------------------------- +# FLYTE_AGENT SETTINGS +# --------------------------------------------------------------------- + +# nameOverride String to override flyte-agent.name template +nameOverride: "" +# fullnameOverride String to override flyte-agent.fullname template +fullnameOverride: "" +# commonLabels Add labels to all the deployed resources +commonLabels: {} +# commonAnnotations Add annotations to all the deployed resources +commonAnnotations: {} + +agentSecret: + # -- Specify your Secret (with sensitive data) or pseudo-manifest (without sensitive data). + secretData: + data: + username: User + +# -- Replicas count for flyteagent deployment +replicaCount: 1 +image: + # -- Docker image for flyteagent deployment + repository: ghcr.io/flyteorg/flyteagent + # -- Docker image tag + tag: 1.8.3 + # -- Docker image pull policy + pullPolicy: IfNotPresent +ports: + containerPort: 8000 + name: agent-grpc +# -- Default resources requests and limits for flyteagent deployment +resources: + limits: + cpu: 500m + ephemeral-storage: 200Mi + memory: 200Mi + requests: + cpu: 500m + ephemeral-storage: 200Mi + memory: 200Mi +# -- Default regex string for searching configuration files +configPath: /etc/flyteagent/config/*.yaml +# -- Service settings for flyteagent +service: + annotations: + projectcontour.io/upstream-protocol.h2c: grpc + type: ClusterIP +# -- Configuration for service accounts for flyteagent +serviceAccount: + # -- Should a service account be created for flyteagent + create: true + # -- Annotations for ServiceAccount attached to flyteagent pods + annotations: {} + # -- ImagePullSecrets to automatically assign to the service account + imagePullSecrets: [] +# -- Annotations for flyteagent pods +podAnnotations: {} +# -- nodeSelector for flyteagent deployment +nodeSelector: {} +# -- tolerations for flyteagent deployment +tolerations: [] +# -- affinity for flyteagent deployment +affinity: {} +# -- Appends additional volumes to the deployment spec. May include template values. +additionalVolumes: [] +# -- Appends additional volume mounts to the main container's spec. May include template values. +additionalVolumeMounts: [] +# -- Appends additional containers to the deployment spec. May include template values. +additionalContainers: [] +# -- Appends extra command line arguments to the main command +extraArgs: {} +# -- Sets priorityClassName for datacatalog pod(s). +priorityClassName: "" diff --git a/charts/flyte-binary/Chart.yaml b/charts/flyte-binary/Chart.yaml index ab446d25b8..c482828ebc 100644 --- a/charts/flyte-binary/Chart.yaml +++ b/charts/flyte-binary/Chart.yaml @@ -14,3 +14,9 @@ version: v0.1.10 # VERSION # follow Semantic Versioning. They should reflect the version the application is using. # It is recommended to use it with quotes. appVersion: "1.16.0" +dependencies: + - name: flyteagent + condition: flyteagent.enabled + alias: flyteagent + version: v0.1.10 # VERSION + repository: file://../flyte-agent # REPOSITORY \ No newline at end of file diff --git a/charts/flyte-binary/README.md b/charts/flyte-binary/README.md index 522764e1d6..05bc00b678 100644 --- a/charts/flyte-binary/README.md +++ b/charts/flyte-binary/README.md @@ -4,6 +4,12 @@ Chart for basic single Flyte executable deployment +## Requirements + +| Repository | Name | Version | +|------------|------|---------| +| file://../flyte-agent | flyteagent(flyteagent) | v0.1.10 | + ## Values | Key | Type | Default | Description | @@ -107,48 +113,7 @@ Chart for basic single Flyte executable deployment | flyte-core-components.dataCatalog.disabled | bool | `false` | | | flyte-core-components.propeller.disableWebhook | bool | `false` | | | flyte-core-components.propeller.disabled | bool | `false` | | -| flyteagent.deployment.annotations | object | `{}` | | -| flyteagent.deployment.args | list | `[]` | | -| flyteagent.deployment.command | list | `[]` | | -| flyteagent.deployment.extraEnvVars | list | `[]` | | -| flyteagent.deployment.extraEnvVarsConfigMap | string | `""` | | -| flyteagent.deployment.extraEnvVarsSecret | string | `""` | | -| flyteagent.deployment.extraPodSpec | object | `{}` | | -| flyteagent.deployment.extraVolumeMounts | list | `[]` | | -| flyteagent.deployment.extraVolumes | list | `[]` | | -| flyteagent.deployment.image.pullPolicy | string | `"IfNotPresent"` | | -| flyteagent.deployment.image.repository | string | `"ghcr.io/flyteorg/flyteagent"` | | -| flyteagent.deployment.image.tag | string | `"1.6.2b1"` | | -| flyteagent.deployment.initContainers | list | `[]` | | -| flyteagent.deployment.labels | object | `{}` | | -| flyteagent.deployment.lifecycleHooks | object | `{}` | | -| flyteagent.deployment.livenessProbe | object | `{}` | | -| flyteagent.deployment.podAnnotations | object | `{}` | | -| flyteagent.deployment.podLabels | object | `{}` | | -| flyteagent.deployment.podSecurityContext.enabled | bool | `false` | | -| flyteagent.deployment.podSecurityContext.fsGroup | int | `65534` | | -| flyteagent.deployment.podSecurityContext.runAsGroup | int | `65534` | | -| flyteagent.deployment.podSecurityContext.runAsUser | int | `65534` | | -| flyteagent.deployment.readinessProbe | object | `{}` | | -| flyteagent.deployment.replicas | int | `1` | | -| flyteagent.deployment.sidecars | list | `[]` | | -| flyteagent.deployment.startupProbe | object | `{}` | | -| flyteagent.enable | bool | `false` | | -| flyteagent.service.annotations | object | `{}` | | -| flyteagent.service.clusterIP | string | `""` | | -| flyteagent.service.externalTrafficPolicy | string | `"Cluster"` | | -| flyteagent.service.extraPorts | list | `[]` | | -| flyteagent.service.labels | object | `{}` | | -| flyteagent.service.loadBalancerIP | string | `""` | | -| flyteagent.service.loadBalancerSourceRanges | list | `[]` | | -| flyteagent.service.nodePort | string | `""` | | -| flyteagent.service.port | string | `""` | | -| flyteagent.service.type | string | `"ClusterIP"` | | -| flyteagent.serviceAccount.annotations | object | `{}` | | -| flyteagent.serviceAccount.create | bool | `true` | | -| flyteagent.serviceAccount.imagePullSecrets | list | `[]` | | -| flyteagent.serviceAccount.labels | object | `{}` | | -| flyteagent.serviceAccount.name | string | `""` | | +| flyteagent.enabled | bool | `false` | | | fullnameOverride | string | `""` | | | ingress.commonAnnotations | object | `{}` | | | ingress.create | bool | `false` | | diff --git a/charts/flyte-binary/templates/_helpers.tpl b/charts/flyte-binary/templates/_helpers.tpl index ecd3d51cc4..d7572058ed 100644 --- a/charts/flyte-binary/templates/_helpers.tpl +++ b/charts/flyte-binary/templates/_helpers.tpl @@ -217,21 +217,3 @@ Flyte Agent selector labels {{ include "flyte-binary.baseLabels" . }} app.kubernetes.io/component: agent {{- end }} - -{{/* -Get the name of the service account to use -*/}} -{{- define "flyte-binary.agent.serviceAccountName" -}} -{{- if .Values.flyteagent.serviceAccount.create }} -{{- default (include "flyte-binary.agent.name" .) .Values.flyteagent.serviceAccount.name }} -{{- else }} -{{- default "default" .Values.flyteagent.serviceAccount.name }} -{{- end }} -{{- end }} - -{{/* -Get the Flyte Agent service port. -*/}} -{{- define "flyte-binary.agent.servicePort" -}} -{{- default 8000 .Values.flyteagent.service.port -}} -{{- end -}} diff --git a/charts/flyte-binary/templates/agent/deployment.yaml b/charts/flyte-binary/templates/agent/deployment.yaml deleted file mode 100644 index 28c42fad16..0000000000 --- a/charts/flyte-binary/templates/agent/deployment.yaml +++ /dev/null @@ -1,112 +0,0 @@ -{{- if .Values.flyteagent.enable }} -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ include "flyte-binary.agent.name" . }} - namespace: {{ .Release.Namespace | quote }} - labels: {{- include "flyte-binary.labels" . | nindent 4 }} - {{- if .Values.commonLabels }} - {{- tpl ( .Values.commonLabels | toYaml ) . | nindent 4 }} - {{- end }} - {{- if .Values.flyteagent.deployment.labels }} - {{- tpl ( .Values.flyteagent.deployment.labels | toYaml ) . | nindent 4 }} - {{- end }} - annotations: - {{- if .Values.commonAnnotations }} - {{- tpl ( .Values.commonAnnotations | toYaml ) . | nindent 4 }} - {{- end }} - {{- if .Values.flyteagent.deployment.annotations }} - {{- tpl ( .Values.flyteagent.deployment.annotations | toYaml ) . | nindent 4 }} - {{- end }} -spec: - replicas: {{ .Values.flyteagent.deployment.replicas }} - selector: - matchLabels: {{- include "flyte-binary.agent.selectorLabels" . | nindent 6 }} - template: - metadata: - labels: {{- include "flyte-binary.agent.selectorLabels" . | nindent 8 }} - {{- if .Values.commonLabels }} - {{- tpl ( .Values.commonLabels | toYaml ) . | nindent 8 }} - {{- end }} - {{- if .Values.flyteagent.deployment.podLabels }} - {{- tpl ( .Values.flyteagent.deployment.podLabels | toYaml ) . | nindent 8 }} - {{- end }} - annotations: - {{- if .Values.commonAnnotations }} - {{- tpl ( .Values.commonAnnotations | toYaml ) . | nindent 8 }} - {{- end }} - {{- if .Values.flyteagent.deployment.podAnnotations }} - {{- tpl ( .Values.flyteagent.deployment.podAnnotations | toYaml ) . | nindent 8 }} - {{- end }} - spec: - {{- if .Values.flyteagent.deployment.extraPodSpec }} - {{- tpl ( .Values.flyteagent.deployment.extraPodSpec | toYaml ) . | nindent 6 }} - {{- end }} - {{- if .Values.flyteagent.deployment.podSecurityContext.enabled }} - securityContext: {{- omit .Values.flyteagent.deployment.podSecurityContext "enabled" | toYaml | nindent 12 }} - {{- end }} - serviceAccountName: {{ include "flyte-binary.agent.serviceAccountName" . }} - {{- if .Values.flyteagent.deployment.initContainers }} - initContainers: - {{- tpl ( .Values.flyteagent.deployment.initContainers | toYaml ) . | nindent 8 }} - {{- end }} - containers: - - name: agent - {{- with .Values.flyteagent.deployment.image }} - image: {{ printf "%s:%s" .repository .tag | quote }} - imagePullPolicy: {{ .pullPolicy | quote }} - {{- end }} - {{- if .Values.flyteagent.deployment.command }} - command: {{- tpl ( .Values.flyteagent.deployment.command | toYaml ) . | nindent 12 }} - {{- end }} - {{- if .Values.flyteagent.deployment.args }} - args: - {{- tpl ( .Values.flyteagent.deployment.args | toYaml ) . | nindent 12 }} - {{- end }} - {{- if .Values.flyteagent.deployment.extraEnvVars }} - env: - {{- tpl ( .Values.flyteagent.deployment.extraEnvVars | toYaml ) . | nindent 12 }} - {{- end }} - {{- if or .Values.flyteagent.deployment.extraEnvVarsConfigMap .Values.flyteagent.deployment.extraEnvVarsSecret }} - envFrom: - {{- if .Values.flyteagent.deployment.extraEnvVarsConfigMap }} - - configMapRef: - name: {{ .Values.flyteagent.deployment.extraEnvVarsConfigMap }} - {{- end }} - {{- if .Values.flyteagent.deployment.extraEnvVarsSecret }} - - secretRef: - name: {{ .Values.flyteagent.deployment.extraEnvVarsSecret }} - {{- end }} - {{- end }} - ports: - - name: grpc - containerPort: 8000 - {{- if .Values.flyteagent.deployment.startupProbe }} - startupProbe: {{- tpl ( .Values.flyteagent.deployment.startupProbe | toYaml ) . | nindent 12 }} - {{- end }} - {{- if .Values.flyteagent.deployment.livenessProbe }} - livenessProbe: - {{- tpl ( .Values.flyteagent.deployment.livenessProbe | toYaml ) . | nindent 12 }} - {{- end }} - {{- if .Values.flyteagent.deployment.readinessProbe }} - readinessProbe: - {{- tpl ( .Values.flyteagent.deployment.readinessProbe | toYaml ) . | nindent 12 }} - {{- end }} - {{- if .Values.flyteagent.deployment.resources }} - resources: {{- toYaml .Values.flyteagent.deployment.resources | nindent 12 }} - {{- end }} - {{- if .Values.flyteagent.deployment.lifecycleHooks }} - lifecycle: {{- tpl ( .Values.flyteagent.deployment.lifecycleHooks | toYaml ) . | nindent 12 }} - {{- end }} - {{- if .Values.flyteagent.deployment.extraVolumeMounts }} - volumeMounts: - {{- tpl ( .Values.flyteagent.deployment.extraVolumeMounts | toYaml ) . | nindent 12 }} - {{- end }} - {{- if .Values.flyteagent.deployment.sidecars }} - {{- tpl ( .Values.flyteagent.deployment.sidecars | toYaml ) . | nindent 8 }} - {{- end }} - {{- if .Values.flyteagent.deployment.extraVolumes }} - volumes: - {{- tpl ( .Values.flyteagent.deployment.extraVolumes | toYaml ) . | nindent 8 }} - {{- end }} -{{- end }} diff --git a/charts/flyte-binary/templates/agent/service.yaml b/charts/flyte-binary/templates/agent/service.yaml deleted file mode 100644 index 418a1bc52e..0000000000 --- a/charts/flyte-binary/templates/agent/service.yaml +++ /dev/null @@ -1,48 +0,0 @@ -{{- if .Values.flyteagent.enable }} -apiVersion: v1 -kind: Service -metadata: - name: {{ include "flyte-binary.agent.name" . }} - namespace: {{ .Release.Namespace | quote }} - labels: {{- include "flyte-binary.labels" . | nindent 4 }} - {{- if .Values.commonLabels }} - {{- tpl ( .Values.commonLabels | toYaml ) . | nindent 4 }} - {{- end }} - {{- if .Values.flyteagent.service.labels }} - {{- tpl ( .Values.flyteagent.service.labels | toYaml ) . | nindent 4 }} - {{- end }} - annotations: - {{- if .Values.commonAnnotations }} - {{- tpl ( .Values.commonAnnotations | toYaml ) . | nindent 4 }} - {{- end }} - {{- if .Values.flyteagent.service.annotations }} - {{- tpl ( .Values.flyteagent.service.annotations | toYaml ) . | nindent 4 }} - {{- end }} -spec: - type: {{ .Values.flyteagent.service.type }} - {{- if or (eq .Values.flyteagent.service.type "LoadBalancer") (eq .Values.flyteagent.service.type "NodePort") }} - externalTrafficPolicy: {{ .Values.flyteagent.service.externalTrafficPolicy | quote }} - {{- end }} - {{- if and (eq .Values.flyteagent.service.type "LoadBalancer") (not (empty .Values.flyteagent.service.loadBalancerSourceRanges)) }} - loadBalancerSourceRanges: {{ .Values.flyteagent.service.loadBalancerSourceRanges }} - {{- end }} - {{- if and (eq .Values.flyteagent.service.type "LoadBalancer") (not (empty .Values.flyteagent.service.loadBalancerIP)) }} - loadBalancerIP: {{ .Values.flyteagent.service.loadBalancerIP }} - {{- end }} - {{- if and .Values.flyteagent.service.clusterIP (eq .Values.flyteagent.service.type "ClusterIP") }} - clusterIP: {{ .Values.flyteagent.service.clusterIP }} - {{- end }} - ports: - - name: grpc - port: {{ include "flyte-binary.agent.servicePort" . }} - targetPort: grpc - {{- if and (or (eq .Values.flyteagent.service.type "NodePort") (eq .Values.flyteagent.service.type "LoadBalancer")) (not (empty .Values.flyteagent.service.nodePort)) }} - nodePort: {{ .Values.flyteagent.service.nodePort }} - {{- else if eq .Values.flyteagent.service.type "ClusterIP" }} - nodePort: null - {{- end }} - {{- if .Values.flyteagent.service.extraPorts }} - {{- tpl ( .Values.flyteagent.service.extraPorts | toYaml ) . | nindent 4 }} - {{- end }} - selector: {{- include "flyte-binary.agent.selectorLabels" . | nindent 4 }} -{{- end }} diff --git a/charts/flyte-binary/templates/agent/serviceaccount.yaml b/charts/flyte-binary/templates/agent/serviceaccount.yaml deleted file mode 100644 index 7c9d66d166..0000000000 --- a/charts/flyte-binary/templates/agent/serviceaccount.yaml +++ /dev/null @@ -1,27 +0,0 @@ -{{- if .Values.flyteagent.enable }} -{{- if .Values.flyteagent.serviceAccount.create }} -apiVersion: v1 -kind: ServiceAccount -metadata: - name: {{ include "flyte-binary.agent.serviceAccountName" . }} - namespace: {{ .Release.Namespace | quote }} - labels: {{- include "flyte-binary.labels" . | nindent 4 }} - {{- if .Values.commonLabels }} - {{- tpl ( .Values.commonLabels | toYaml ) . | nindent 4 }} - {{- end }} - {{- if .Values.flyteagent.serviceAccount.labels }} - {{- tpl ( .Values.flyteagent.serviceAccount.labels | toYaml ) . | nindent 4 }} - {{- end }} - annotations: - {{- if .Values.commonAnnotations }} - {{- tpl ( .Values.commonAnnotations | toYaml ) . | nindent 4 }} - {{- end }} - {{- if .Values.flyteagent.serviceAccount.annotations }} - {{- tpl ( .Values.flyteagent.serviceAccount.annotations | toYaml ) . | nindent 4 }} - {{- end }} -{{- if .Values.flyteagent.serviceAccount.imagePullSecrets }} -imagePullSecrets: - {{- tpl ( .Values.flyteagent.serviceAccount.imagePullSecrets | toYaml ) . | nindent 2 }} -{{- end }} -{{- end }} -{{- end }} diff --git a/charts/flyte-binary/templates/configmap.yaml b/charts/flyte-binary/templates/configmap.yaml index 483c5d1870..f5d084dd6a 100644 --- a/charts/flyte-binary/templates/configmap.yaml +++ b/charts/flyte-binary/templates/configmap.yaml @@ -64,9 +64,11 @@ data: {{- if .Values.configuration.agentService }} agent-service: {{- tpl ( .Values.configuration.agentService | toYaml ) . | nindent 8 }} - {{- else if .Values.flyteagent.enable }} + {{- else if .Values.flyteagent.enabled }} agent-service: - defaultGrpcEndpoint: {{ include "flyte-binary.agent.name" . }}:{{ include "flyte-binary.agent.servicePort" . }} + defaultAgent: + endpoint: {{ include "flyteagent.name" . }}:{{ include "flyteagent.servicePort" . }} + insecure: true supportedTaskTypes: - bigquery_query_job_task {{- end }} diff --git a/charts/flyte-binary/values.yaml b/charts/flyte-binary/values.yaml index 88aa3f1dcf..932ca9cca8 100644 --- a/charts/flyte-binary/values.yaml +++ b/charts/flyte-binary/values.yaml @@ -369,107 +369,7 @@ serviceAccount: # flyteagent Configure Flyte Agent objects flyteagent: # enable Flag to enable bundled Flyte Agent - enable: false - # deployment Configure Flyte Agent deployment specification - deployment: - # replicas Number of replicas to create - replicas: 1 - # image Configure image to use for Flyte Agent - image: - # repository Flyte Agent image repository - repository: ghcr.io/flyteorg/flyteagent # FLYTE_AGENT_IMAGE - # tag Flyte image tag - tag: 1.6.2b1 # FLYTE_AGENT_TAG - # pullPolicy Flyte Agent image pull policy - pullPolicy: IfNotPresent - # extraEnvVars Array with extra environment variables to add to Flyte Agent - extraEnvVars: [] - # extraEnvVarsConfigMap Name of existing ConfigMap containing extra env vars for Flyte Agent - extraEnvVarsConfigMap: "" - # extraEnvVarsSecret Name of existing Secret containing extra env vars for Flyte Agent - extraEnvVarsSecret: "" - # command Override default container command - command: [] - # args Override default container args - args: [] - # livenessProbe Override default container liveness probe - # See: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/ - livenessProbe: {} - # readinessProbe Override default container readiness probe - readinessProbe: {} - # startupProbe Specify a startup probe for Flyte Agent container - startupProbe: {} - # lifecycleHooks Specify hooks to run in Flyte container before or after startup - lifecycleHooks: {} - # resources Resource limits and requests for Flyte Agent container - # Uncomment and update to specify resources for deployment - # resources: - # limits: - # memory: 1Gi - # requests: - # cpu: 1 - # podSecurityContext Specify security context for Flyte Agent pod - # See: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ - podSecurityContext: - enabled: false - runAsUser: 65534 - runAsGroup: 65534 - fsGroup: 65534 - # labels Add labels to Flyte Agent deployment - labels: {} - # annotations Add annotations to Flyte Agent deployment - annotations: {} - # labels Add labels to Flyte Agent pod - podLabels: {} - # annotations Add annotations to Flyte Agent pod - podAnnotations: {} - # extraVolumeMounts Specify additional volumeMounts for Flyte Agent container - extraVolumeMounts: [] - # extraVolume Specify additional volumes for Flyte Agent pod - extraVolumes: [] - # sidecars Specify additional containers for Flyte Agent pod - sidecars: [] - # initContainers Specify additional init containers for Flyte Agent pod - initContainers: [] - # extraPodSpec Specify additional configuration for Flyte Agent pod - # This can be used for adding affinity, tolerations, hostNetwork, etc. - extraPodSpec: {} - # service Configure service for Flyte Agent - service: - # type Kubernetes service type - type: ClusterIP - # port Port for Flyte Agent service - # If not specified, defaults to corresponding container ports - port: "" - # nodePort Node port for Flyte Agent service if service type is `NodePort` or `LoadBalancer` - nodePort: "" - # clusterIP Set static IP if service type is `ClusterIP` - clusterIP: "" - # labels Add labels to Flyte Agent service - labels: {} - # annotations Add annotations to Flyte Agent service - annotations: {} - # loadBalancerIP Set static IP if service type is `LoadBalancer` - loadBalancerIP: "" - # externalTrafficPolicy Enable client source IP preservation if service type is `NodePort` or `LoadBalancer` - # See: https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip - externalTrafficPolicy: Cluster - # loadBalancerSourceRanges Addresses that are allowed when service is `LoadBalancer` - loadBalancerSourceRanges: [] - # extraPorts Additional ports to add to Flyte Agent service - extraPorts: [] - # serviceAccount Configure Flyte Agent ServiceAccount - serviceAccount: - # create Create ServiceAccount for Flyte Agent - create: true - # name Name of service account - name: "" - # labels Add labels to ServiceAccount - labels: {} - # annotations Add annotations to ServiceAccount - annotations: {} - # imagePullSecrets Secrets to use for fetching images from private registries - imagePullSecrets: [] + enabled: false enabled_plugins: # -- Tasks specific configuration [structure](https://pkg.go.dev/github.com/flyteorg/flytepropeller/pkg/controller/nodes/task/config#GetConfig) diff --git a/charts/flyte-core/Chart.yaml b/charts/flyte-core/Chart.yaml index 5ff65f7634..a7134d3448 100644 --- a/charts/flyte-core/Chart.yaml +++ b/charts/flyte-core/Chart.yaml @@ -3,3 +3,9 @@ name: flyte-core description: A Helm chart for Flyte core type: application version: v0.1.10 # VERSION +dependencies: + - name: flyteagent + condition: flyteagent.enabled + alias: flyteagent + version: v0.1.10 # VERSION + repository: file://../flyte-agent # REPOSITORY \ No newline at end of file diff --git a/charts/flyte-core/README.md b/charts/flyte-core/README.md index e94c5593d7..e14342ff4b 100644 --- a/charts/flyte-core/README.md +++ b/charts/flyte-core/README.md @@ -4,6 +4,12 @@ A Helm chart for Flyte core +## Requirements + +| Repository | Name | Version | +|------------|------|---------| +| file://../flyte-agent | flyteagent(flyteagent) | v0.1.10 | + ### Flyte INSTALLATION: - [Install helm 3](https://helm.sh/docs/intro/install/) - Fetch chart dependencies `` @@ -171,29 +177,7 @@ helm install gateway bitnami/contour -n flyte | flyteadmin.serviceAccount.createClusterRole | bool | `true` | Should a ClusterRole be created for Flyteadmin | | flyteadmin.serviceAccount.imagePullSecrets | list | `[]` | ImagePullSecrets to automatically assign to the service account | | flyteadmin.tolerations | list | `[]` | tolerations for Flyteadmin deployment | -| flyteagent.additionalContainers | list | `[]` | Appends additional containers to the deployment spec. May include template values. | -| flyteagent.additionalVolumeMounts | list | `[]` | Appends additional volume mounts to the main container's spec. May include template values. | -| flyteagent.additionalVolumes | list | `[]` | Appends additional volumes to the deployment spec. May include template values. | -| flyteagent.affinity | object | `{}` | affinity for flyteagent deployment | -| flyteagent.configPath | string | `"/etc/flyteagent/config/*.yaml"` | Default regex string for searching configuration files | | flyteagent.enabled | bool | `false` | | -| flyteagent.extraArgs | object | `{}` | Appends extra command line arguments to the main command | -| flyteagent.image.pullPolicy | string | `"IfNotPresent"` | Docker image pull policy | -| flyteagent.image.repository | string | `"ghcr.io/flyteorg/flyteagent"` | Docker image for flyteagent deployment | -| flyteagent.image.tag | string | `"1.6.2b1"` | Docker image tag | -| flyteagent.nodeSelector | object | `{}` | nodeSelector for flyteagent deployment | -| flyteagent.podAnnotations | object | `{}` | Annotations for flyteagent pods | -| flyteagent.ports.containerPort | int | `8000` | | -| flyteagent.ports.name | string | `"agent-grpc"` | | -| flyteagent.priorityClassName | string | `""` | Sets priorityClassName for datacatalog pod(s). | -| flyteagent.replicaCount | int | `1` | Replicas count for flyteagent deployment | -| flyteagent.resources | object | `{"limits":{"cpu":"500m","ephemeral-storage":"100Mi","memory":"500Mi"},"requests":{"cpu":"10m","ephemeral-storage":"50Mi","memory":"50Mi"}}` | Default resources requests and limits for flyteagent deployment | -| flyteagent.service | object | `{"annotations":{"projectcontour.io/upstream-protocol.h2c":"grpc"},"type":"ClusterIP"}` | Service settings for flyteagent | -| flyteagent.serviceAccount | object | `{"annotations":{},"create":true,"imagePullSecrets":[]}` | Configuration for service accounts for flyteagent | -| flyteagent.serviceAccount.annotations | object | `{}` | Annotations for ServiceAccount attached to flyteagent pods | -| flyteagent.serviceAccount.create | bool | `true` | Should a service account be created for flyteagent | -| flyteagent.serviceAccount.imagePullSecrets | list | `[]` | ImagePullSecrets to automatically assign to the service account | -| flyteagent.tolerations | list | `[]` | tolerations for flyteagent deployment | | flyteconsole.affinity | object | `{}` | affinity for Flyteconsole deployment | | flyteconsole.enabled | bool | `true` | | | flyteconsole.ga.enabled | bool | `false` | | diff --git a/charts/flyte-core/values.yaml b/charts/flyte-core/values.yaml index 85f498731a..a6aaf4a0ea 100755 --- a/charts/flyte-core/values.yaml +++ b/charts/flyte-core/values.yaml @@ -228,61 +228,6 @@ datacatalog: flyteagent: enabled: false - # -- Replicas count for flyteagent deployment - replicaCount: 1 - image: - # -- Docker image for flyteagent deployment - repository: ghcr.io/flyteorg/flyteagent - # -- Docker image tag - tag: 1.6.2b1 - # -- Docker image pull policy - pullPolicy: IfNotPresent - ports: - containerPort: 8000 - name: agent-grpc - # -- Default resources requests and limits for flyteagent deployment - resources: - limits: - cpu: 500m - ephemeral-storage: 100Mi - memory: 500Mi - requests: - cpu: 10m - ephemeral-storage: 50Mi - memory: 50Mi - # -- Default regex string for searching configuration files - configPath: /etc/flyteagent/config/*.yaml - # -- Service settings for flyteagent - service: - annotations: - projectcontour.io/upstream-protocol.h2c: grpc - type: ClusterIP - # -- Configuration for service accounts for flyteagent - serviceAccount: - # -- Should a service account be created for flyteagent - create: true - # -- Annotations for ServiceAccount attached to flyteagent pods - annotations: {} - # -- ImagePullSecrets to automatically assign to the service account - imagePullSecrets: [] - # -- Annotations for flyteagent pods - podAnnotations: {} - # -- nodeSelector for flyteagent deployment - nodeSelector: {} - # -- tolerations for flyteagent deployment - tolerations: [] - # -- affinity for flyteagent deployment - affinity: {} - # -- Appends additional volumes to the deployment spec. May include template values. - additionalVolumes: [] - # -- Appends additional volume mounts to the main container's spec. May include template values. - additionalVolumeMounts: [] - # -- Appends additional containers to the deployment spec. May include template values. - additionalContainers: [] - # -- Appends extra command line arguments to the main command - extraArgs: {} - # -- Sets priorityClassName for datacatalog pod(s). - priorityClassName: "" # # FLYTEPROPELLER SETTINGS diff --git a/charts/flyte/README.md b/charts/flyte/README.md index 18f7c25fde..922d184c0c 100644 --- a/charts/flyte/README.md +++ b/charts/flyte/README.md @@ -71,7 +71,7 @@ helm upgrade -f values-sandbox.yaml flyte . | contour.tolerations | list | `[]` | tolerations for Contour deployment | | daskoperator | object | `{"enabled":false}` | Optional: Dask Plugin using the Dask Operator | | daskoperator.enabled | bool | `false` | - enable or disable the dask operator deployment installation | -| flyte | object | `{"cluster_resource_manager":{"config":{"cluster_resources":{"customData":[{"production":[{"projectQuotaCpu":{"value":"5"}},{"projectQuotaMemory":{"value":"4000Mi"}}]},{"staging":[{"projectQuotaCpu":{"value":"2"}},{"projectQuotaMemory":{"value":"3000Mi"}}]},{"development":[{"projectQuotaCpu":{"value":"4"}},{"projectQuotaMemory":{"value":"3000Mi"}}]}],"refresh":"5m","refreshInterval":"5m","standaloneDeployment":false,"templatePath":"/etc/flyte/clusterresource/templates"}},"enabled":true,"service_account_name":"flyteadmin","templates":[{"key":"aa_namespace","value":"apiVersion: v1\nkind: Namespace\nmetadata:\n name: {{ namespace }}\nspec:\n finalizers:\n - kubernetes\n"},{"key":"ab_project_resource_quota","value":"apiVersion: v1\nkind: ResourceQuota\nmetadata:\n name: project-quota\n namespace: {{ namespace }}\nspec:\n hard:\n limits.cpu: {{ projectQuotaCpu }}\n limits.memory: {{ projectQuotaMemory }}\n"}]},"common":{"databaseSecret":{"name":"","secretManifest":{}},"flyteNamespaceTemplate":{"enabled":false},"ingress":{"albSSLRedirect":false,"annotations":{"nginx.ingress.kubernetes.io/app-root":"/console"},"enabled":true,"host":"","separateGrpcIngress":false,"separateGrpcIngressAnnotations":{"nginx.ingress.kubernetes.io/backend-protocol":"GRPC"},"tls":{"enabled":false},"webpackHMR":true}},"configmap":{"adminServer":{"auth":{"appAuth":{"thirdPartyConfig":{"flyteClient":{"clientId":"flytectl","redirectUri":"http://localhost:53593/callback","scopes":["offline","all"]}}},"authorizedUris":["https://localhost:30081","http://flyteadmin:80","http://flyteadmin.flyte.svc.cluster.local:80"],"userAuth":{"openId":{"baseUrl":"https://accounts.google.com","clientId":"657465813211-6eog7ek7li5k7i7fvgv2921075063hpe.apps.googleusercontent.com","scopes":["profile","openid"]}}},"flyteadmin":{"eventVersion":2,"metadataStoragePrefix":["metadata","admin"],"metricsScope":"flyte:","profilerPort":10254,"roleNameKey":"iam.amazonaws.com/role","testing":{"host":"http://flyteadmin"}},"server":{"grpcPort":8089,"httpPort":8088,"security":{"allowCors":true,"allowedHeaders":["Content-Type","flyte-authorization"],"allowedOrigins":["*"],"secure":false,"useAuth":false}}},"catalog":{"catalog-cache":{"endpoint":"datacatalog:89","insecure":true,"type":"datacatalog"}},"console":{"BASE_URL":"/console","CONFIG_DIR":"/etc/flyte/config"},"copilot":{"plugins":{"k8s":{"co-pilot":{"image":"cr.flyte.org/flyteorg/flytecopilot:v0.0.33","name":"flyte-copilot-","start-timeout":"30s"}}}},"core":{"propeller":{"downstream-eval-duration":"30s","enable-admin-launcher":true,"leader-election":{"enabled":true,"lease-duration":"15s","lock-config-map":{"name":"propeller-leader","namespace":"flyte"},"renew-deadline":"10s","retry-period":"2s"},"limit-namespace":"all","max-workflow-retries":30,"metadata-prefix":"metadata/propeller","metrics-prefix":"flyte","prof-port":10254,"queue":{"batch-size":-1,"batching-interval":"2s","queue":{"base-delay":"5s","capacity":1000,"max-delay":"120s","rate":100,"type":"maxof"},"sub-queue":{"capacity":100,"rate":10,"type":"bucket"},"type":"batch"},"rawoutput-prefix":"s3://my-s3-bucket/","workers":4,"workflow-reeval-duration":"30s"},"webhook":{"certDir":"/etc/webhook/certs","serviceName":"flyte-pod-webhook"}},"datacatalogServer":{"application":{"grpcPort":8089,"grpcServerReflection":true,"httpPort":8080},"datacatalog":{"metrics-scope":"datacatalog","profiler-port":10254,"storage-prefix":"metadata/datacatalog"}},"domain":{"domains":[{"id":"development","name":"development"},{"id":"staging","name":"staging"},{"id":"production","name":"production"}]},"enabled_plugins":{"tasks":{"task-plugins":{"default-for-task-types":{"bigquery_query_job_task":"agent-service","container":"container","container_array":"k8s-array","sidecar":"sidecar"},"enabled-plugins":["container","sidecar","k8s-array","agent-service"]}}},"k8s":{"plugins":{"agent-service":{"defaultGrpcEndpoint":"flyteagent.flyte.svc.cluster.local:8000","supportedTaskTypes":["bigquery_query_job_task"]},"k8s":{"default-cpus":"100m","default-env-vars":[{"FLYTE_AWS_ENDPOINT":"http://minio.flyte:9000"},{"FLYTE_AWS_ACCESS_KEY_ID":"minio"},{"FLYTE_AWS_SECRET_ACCESS_KEY":"miniostorage"}],"default-memory":"200Mi"}}},"logger":{"logger":{"level":5,"show-source":true}},"remoteData":{"remoteData":{"region":"us-east-1","scheme":"local","signedUrls":{"durationMinutes":3}}},"resource_manager":{"propeller":{"resourcemanager":{"redis":null,"type":"noop"}}},"task_logs":{"plugins":{"logs":{"cloudwatch-enabled":false,"kubernetes-enabled":true,"kubernetes-template-uri":"http://localhost:30082/#/log/{{ \"{{\" }} .namespace {{ \"}}\" }}/{{ \"{{\" }} .podName {{ \"}}\" }}/pod?namespace={{ \"{{\" }} .namespace {{ \"}}\" }}"}}},"task_resource_defaults":{"task_resources":{"defaults":{"cpu":"100m","memory":"200Mi","storage":"5Mi"},"limits":{"cpu":2,"gpu":1,"memory":"1Gi","storage":"20Mi"}}}},"datacatalog":{"affinity":{},"configPath":"/etc/datacatalog/config/*.yaml","image":{"pullPolicy":"IfNotPresent","repository":"cr.flyte.org/flyteorg/datacatalog","tag":"v1.0.51"},"nodeSelector":{},"podAnnotations":{},"replicaCount":1,"resources":{"limits":{"cpu":"500m","ephemeral-storage":"100Mi","memory":"500Mi"},"requests":{"cpu":"10m","ephemeral-storage":"50Mi","memory":"50Mi"}},"service":{"annotations":{"projectcontour.io/upstream-protocol.h2c":"grpc"},"type":"NodePort"},"serviceAccount":{"annotations":{},"create":true,"imagePullSecrets":[]},"tolerations":[]},"db":{"admin":{"database":{"dbname":"flyteadmin","host":"postgres","port":5432,"username":"postgres"}},"datacatalog":{"database":{"dbname":"datacatalog","host":"postgres","port":5432,"username":"postgres"}}},"deployRedoc":true,"flyteadmin":{"additionalVolumeMounts":[],"additionalVolumes":[],"affinity":{},"configPath":"/etc/flyte/config/*.yaml","env":[],"image":{"pullPolicy":"IfNotPresent","repository":"cr.flyte.org/flyteorg/flyteadmin","tag":"v1.1.118"},"initialProjects":["flytesnacks","flytetester","flyteexamples"],"nodeSelector":{},"podAnnotations":{},"replicaCount":1,"resources":{"limits":{"cpu":"250m","ephemeral-storage":"100Mi","memory":"500Mi"},"requests":{"cpu":"10m","ephemeral-storage":"50Mi","memory":"50Mi"}},"secrets":{},"service":{"annotations":{"projectcontour.io/upstream-protocol.h2c":"grpc"},"loadBalancerSourceRanges":[],"type":"ClusterIP"},"serviceAccount":{"annotations":{},"create":true,"imagePullSecrets":[]},"tolerations":[]},"flyteagent":{"additionalContainers":[],"additionalVolumeMounts":[],"additionalVolumes":[],"affinity":{},"configPath":"/etc/flyteagent/config/*.yaml","enabled":true,"extraArgs":{},"image":{"pullPolicy":"IfNotPresent","repository":"ghcr.io/flyteorg/flyteagent","tag":"1.6.2b1"},"nodeSelector":{},"podAnnotations":{},"priorityClassName":"","replicaCount":1,"resources":{"limits":{"cpu":"500m","ephemeral-storage":"100Mi","memory":"500Mi"},"requests":{"cpu":"10m","ephemeral-storage":"50Mi","memory":"50Mi"}},"service":{"annotations":{"projectcontour.io/upstream-protocol.h2c":"grpc"},"type":"ClusterIP"},"serviceAccount":{"annotations":{},"create":true,"imagePullSecrets":[]},"tolerations":[]},"flyteconsole":{"affinity":{},"ga":{"enabled":true,"tracking_id":"G-0QW4DJWJ20"},"image":{"pullPolicy":"IfNotPresent","repository":"cr.flyte.org/flyteorg/flyteconsole","tag":"v1.9.2"},"nodeSelector":{},"podAnnotations":{},"replicaCount":1,"resources":{"limits":{"cpu":"500m","memory":"275Mi"},"requests":{"cpu":"10m","memory":"250Mi"}},"service":{"annotations":{},"type":"ClusterIP"},"tolerations":[]},"flytepropeller":{"affinity":{},"cacheSizeMbs":0,"configPath":"/etc/flyte/config/*.yaml","image":{"pullPolicy":"IfNotPresent","repository":"cr.flyte.org/flyteorg/flytepropeller","tag":"v1.1.116"},"manager":false,"nodeSelector":{},"podAnnotations":{},"replicaCount":1,"resources":{"limits":{"cpu":"200m","ephemeral-storage":"100Mi","memory":"200Mi"},"requests":{"cpu":"10m","ephemeral-storage":"50Mi","memory":"50Mi"}},"serviceAccount":{"annotations":{},"create":true,"imagePullSecrets":[]},"tolerations":[]},"flytescheduler":{"affinity":{},"configPath":"/etc/flyte/config/*.yaml","image":{"pullPolicy":"IfNotPresent","repository":"cr.flyte.org/flyteorg/flytescheduler","tag":"v1.1.118"},"nodeSelector":{},"podAnnotations":{},"resources":{"limits":{"cpu":"250m","ephemeral-storage":"100Mi","memory":"500Mi"},"requests":{"cpu":"10m","ephemeral-storage":"50Mi","memory":"50Mi"}},"secrets":{},"serviceAccount":{"annotations":{},"create":true,"imagePullSecrets":[]},"tolerations":[]},"storage":{"bucketName":"my-s3-bucket","custom":{},"gcs":null,"s3":{"region":"us-east-1"},"type":"sandbox"},"webhook":{"enabled":true,"service":{"annotations":{"projectcontour.io/upstream-protocol.h2c":"grpc"},"type":"ClusterIP"},"serviceAccount":{"annotations":{},"create":true,"imagePullSecrets":[]}},"workflow_notifications":{"config":{},"enabled":false},"workflow_scheduler":{"enabled":true,"type":"native"}}` | ------------------------------------------------------------------- Core System settings This section consists of Core components of Flyte and their deployment settings. This includes FlyteAdmin service, Datacatalog, FlytePropeller and Flyteconsole | +| flyte | object | `{"cluster_resource_manager":{"config":{"cluster_resources":{"customData":[{"production":[{"projectQuotaCpu":{"value":"5"}},{"projectQuotaMemory":{"value":"4000Mi"}}]},{"staging":[{"projectQuotaCpu":{"value":"2"}},{"projectQuotaMemory":{"value":"3000Mi"}}]},{"development":[{"projectQuotaCpu":{"value":"4"}},{"projectQuotaMemory":{"value":"3000Mi"}}]}],"refresh":"5m","refreshInterval":"5m","standaloneDeployment":false,"templatePath":"/etc/flyte/clusterresource/templates"}},"enabled":true,"service_account_name":"flyteadmin","templates":[{"key":"aa_namespace","value":"apiVersion: v1\nkind: Namespace\nmetadata:\n name: {{ namespace }}\nspec:\n finalizers:\n - kubernetes\n"},{"key":"ab_project_resource_quota","value":"apiVersion: v1\nkind: ResourceQuota\nmetadata:\n name: project-quota\n namespace: {{ namespace }}\nspec:\n hard:\n limits.cpu: {{ projectQuotaCpu }}\n limits.memory: {{ projectQuotaMemory }}\n"}]},"common":{"databaseSecret":{"name":"","secretManifest":{}},"flyteNamespaceTemplate":{"enabled":false},"ingress":{"albSSLRedirect":false,"annotations":{"nginx.ingress.kubernetes.io/app-root":"/console"},"enabled":true,"host":"","separateGrpcIngress":false,"separateGrpcIngressAnnotations":{"nginx.ingress.kubernetes.io/backend-protocol":"GRPC"},"tls":{"enabled":false},"webpackHMR":true}},"configmap":{"adminServer":{"auth":{"appAuth":{"thirdPartyConfig":{"flyteClient":{"clientId":"flytectl","redirectUri":"http://localhost:53593/callback","scopes":["offline","all"]}}},"authorizedUris":["https://localhost:30081","http://flyteadmin:80","http://flyteadmin.flyte.svc.cluster.local:80"],"userAuth":{"openId":{"baseUrl":"https://accounts.google.com","clientId":"657465813211-6eog7ek7li5k7i7fvgv2921075063hpe.apps.googleusercontent.com","scopes":["profile","openid"]}}},"flyteadmin":{"eventVersion":2,"metadataStoragePrefix":["metadata","admin"],"metricsScope":"flyte:","profilerPort":10254,"roleNameKey":"iam.amazonaws.com/role","testing":{"host":"http://flyteadmin"}},"server":{"grpcPort":8089,"httpPort":8088,"security":{"allowCors":true,"allowedHeaders":["Content-Type","flyte-authorization"],"allowedOrigins":["*"],"secure":false,"useAuth":false}}},"catalog":{"catalog-cache":{"endpoint":"datacatalog:89","insecure":true,"type":"datacatalog"}},"console":{"BASE_URL":"/console","CONFIG_DIR":"/etc/flyte/config"},"copilot":{"plugins":{"k8s":{"co-pilot":{"image":"cr.flyte.org/flyteorg/flytecopilot:v0.0.33","name":"flyte-copilot-","start-timeout":"30s"}}}},"core":{"propeller":{"downstream-eval-duration":"30s","enable-admin-launcher":true,"leader-election":{"enabled":true,"lease-duration":"15s","lock-config-map":{"name":"propeller-leader","namespace":"flyte"},"renew-deadline":"10s","retry-period":"2s"},"limit-namespace":"all","max-workflow-retries":30,"metadata-prefix":"metadata/propeller","metrics-prefix":"flyte","prof-port":10254,"queue":{"batch-size":-1,"batching-interval":"2s","queue":{"base-delay":"5s","capacity":1000,"max-delay":"120s","rate":100,"type":"maxof"},"sub-queue":{"capacity":100,"rate":10,"type":"bucket"},"type":"batch"},"rawoutput-prefix":"s3://my-s3-bucket/","workers":4,"workflow-reeval-duration":"30s"},"webhook":{"certDir":"/etc/webhook/certs","serviceName":"flyte-pod-webhook"}},"datacatalogServer":{"application":{"grpcPort":8089,"grpcServerReflection":true,"httpPort":8080},"datacatalog":{"metrics-scope":"datacatalog","profiler-port":10254,"storage-prefix":"metadata/datacatalog"}},"domain":{"domains":[{"id":"development","name":"development"},{"id":"staging","name":"staging"},{"id":"production","name":"production"}]},"enabled_plugins":{"tasks":{"task-plugins":{"default-for-task-types":{"bigquery_query_job_task":"agent-service","container":"container","container_array":"k8s-array","sidecar":"sidecar"},"enabled-plugins":["container","sidecar","k8s-array","agent-service"]}}},"k8s":{"plugins":{"agent-service":{"defaultAgent":{"endpoint":"dns:///flyteagent.flyte.svc.cluster.local:8000","insecure":true},"supportedTaskTypes":["bigquery_query_job_task"]},"k8s":{"default-cpus":"100m","default-env-vars":[{"FLYTE_AWS_ENDPOINT":"http://minio.flyte:9000"},{"FLYTE_AWS_ACCESS_KEY_ID":"minio"},{"FLYTE_AWS_SECRET_ACCESS_KEY":"miniostorage"}],"default-memory":"200Mi"}}},"logger":{"logger":{"level":5,"show-source":true}},"remoteData":{"remoteData":{"region":"us-east-1","scheme":"local","signedUrls":{"durationMinutes":3}}},"resource_manager":{"propeller":{"resourcemanager":{"redis":null,"type":"noop"}}},"task_logs":{"plugins":{"logs":{"cloudwatch-enabled":false,"kubernetes-enabled":true,"kubernetes-template-uri":"http://localhost:30082/#/log/{{ \"{{\" }} .namespace {{ \"}}\" }}/{{ \"{{\" }} .podName {{ \"}}\" }}/pod?namespace={{ \"{{\" }} .namespace {{ \"}}\" }}"}}},"task_resource_defaults":{"task_resources":{"defaults":{"cpu":"100m","memory":"200Mi","storage":"5Mi"},"limits":{"cpu":2,"gpu":1,"memory":"1Gi","storage":"20Mi"}}}},"datacatalog":{"affinity":{},"configPath":"/etc/datacatalog/config/*.yaml","image":{"pullPolicy":"IfNotPresent","repository":"cr.flyte.org/flyteorg/datacatalog","tag":"v1.0.51"},"nodeSelector":{},"podAnnotations":{},"replicaCount":1,"resources":{"limits":{"cpu":"500m","ephemeral-storage":"100Mi","memory":"500Mi"},"requests":{"cpu":"10m","ephemeral-storage":"50Mi","memory":"50Mi"}},"service":{"annotations":{"projectcontour.io/upstream-protocol.h2c":"grpc"},"type":"NodePort"},"serviceAccount":{"annotations":{},"create":true,"imagePullSecrets":[]},"tolerations":[]},"db":{"admin":{"database":{"dbname":"flyteadmin","host":"postgres","port":5432,"username":"postgres"}},"datacatalog":{"database":{"dbname":"datacatalog","host":"postgres","port":5432,"username":"postgres"}}},"deployRedoc":true,"flyteadmin":{"additionalVolumeMounts":[],"additionalVolumes":[],"affinity":{},"configPath":"/etc/flyte/config/*.yaml","env":[],"image":{"pullPolicy":"IfNotPresent","repository":"cr.flyte.org/flyteorg/flyteadmin","tag":"v1.1.118"},"initialProjects":["flytesnacks","flytetester","flyteexamples"],"nodeSelector":{},"podAnnotations":{},"replicaCount":1,"resources":{"limits":{"cpu":"250m","ephemeral-storage":"100Mi","memory":"500Mi"},"requests":{"cpu":"10m","ephemeral-storage":"50Mi","memory":"50Mi"}},"secrets":{},"service":{"annotations":{"projectcontour.io/upstream-protocol.h2c":"grpc"},"loadBalancerSourceRanges":[],"type":"ClusterIP"},"serviceAccount":{"annotations":{},"create":true,"imagePullSecrets":[]},"tolerations":[]},"flyteconsole":{"affinity":{},"ga":{"enabled":true,"tracking_id":"G-0QW4DJWJ20"},"image":{"pullPolicy":"IfNotPresent","repository":"cr.flyte.org/flyteorg/flyteconsole","tag":"v1.9.2"},"nodeSelector":{},"podAnnotations":{},"replicaCount":1,"resources":{"limits":{"cpu":"500m","memory":"275Mi"},"requests":{"cpu":"10m","memory":"250Mi"}},"service":{"annotations":{},"type":"ClusterIP"},"tolerations":[]},"flytepropeller":{"affinity":{},"cacheSizeMbs":0,"configPath":"/etc/flyte/config/*.yaml","image":{"pullPolicy":"IfNotPresent","repository":"cr.flyte.org/flyteorg/flytepropeller","tag":"v1.1.116"},"manager":false,"nodeSelector":{},"podAnnotations":{},"replicaCount":1,"resources":{"limits":{"cpu":"200m","ephemeral-storage":"100Mi","memory":"200Mi"},"requests":{"cpu":"10m","ephemeral-storage":"50Mi","memory":"50Mi"}},"serviceAccount":{"annotations":{},"create":true,"imagePullSecrets":[]},"tolerations":[]},"flytescheduler":{"affinity":{},"configPath":"/etc/flyte/config/*.yaml","image":{"pullPolicy":"IfNotPresent","repository":"cr.flyte.org/flyteorg/flytescheduler","tag":"v1.1.118"},"nodeSelector":{},"podAnnotations":{},"resources":{"limits":{"cpu":"250m","ephemeral-storage":"100Mi","memory":"500Mi"},"requests":{"cpu":"10m","ephemeral-storage":"50Mi","memory":"50Mi"}},"secrets":{},"serviceAccount":{"annotations":{},"create":true,"imagePullSecrets":[]},"tolerations":[]},"storage":{"bucketName":"my-s3-bucket","custom":{},"gcs":null,"s3":{"region":"us-east-1"},"type":"sandbox"},"webhook":{"enabled":true,"service":{"annotations":{"projectcontour.io/upstream-protocol.h2c":"grpc"},"type":"ClusterIP"},"serviceAccount":{"annotations":{},"create":true,"imagePullSecrets":[]}},"workflow_notifications":{"config":{},"enabled":false},"workflow_scheduler":{"enabled":true,"type":"native"}}` | ------------------------------------------------------------------- Core System settings This section consists of Core components of Flyte and their deployment settings. This includes FlyteAdmin service, Datacatalog, FlytePropeller and Flyteconsole | | flyte.cluster_resource_manager | object | `{"config":{"cluster_resources":{"customData":[{"production":[{"projectQuotaCpu":{"value":"5"}},{"projectQuotaMemory":{"value":"4000Mi"}}]},{"staging":[{"projectQuotaCpu":{"value":"2"}},{"projectQuotaMemory":{"value":"3000Mi"}}]},{"development":[{"projectQuotaCpu":{"value":"4"}},{"projectQuotaMemory":{"value":"3000Mi"}}]}],"refresh":"5m","refreshInterval":"5m","standaloneDeployment":false,"templatePath":"/etc/flyte/clusterresource/templates"}},"enabled":true,"service_account_name":"flyteadmin","templates":[{"key":"aa_namespace","value":"apiVersion: v1\nkind: Namespace\nmetadata:\n name: {{ namespace }}\nspec:\n finalizers:\n - kubernetes\n"},{"key":"ab_project_resource_quota","value":"apiVersion: v1\nkind: ResourceQuota\nmetadata:\n name: project-quota\n namespace: {{ namespace }}\nspec:\n hard:\n limits.cpu: {{ projectQuotaCpu }}\n limits.memory: {{ projectQuotaMemory }}\n"}]}` | Configuration for the Cluster resource manager component. This is an optional component, that enables automatic cluster configuration. This is useful to set default quotas, manage namespaces etc that map to a project/domain | | flyte.cluster_resource_manager.config.cluster_resources | object | `{"customData":[{"production":[{"projectQuotaCpu":{"value":"5"}},{"projectQuotaMemory":{"value":"4000Mi"}}]},{"staging":[{"projectQuotaCpu":{"value":"2"}},{"projectQuotaMemory":{"value":"3000Mi"}}]},{"development":[{"projectQuotaCpu":{"value":"4"}},{"projectQuotaMemory":{"value":"3000Mi"}}]}],"refresh":"5m","refreshInterval":"5m","standaloneDeployment":false,"templatePath":"/etc/flyte/clusterresource/templates"}` | ClusterResource parameters Refer to the [structure](https://pkg.go.dev/github.com/lyft/flyteadmin@v0.3.37/pkg/runtime/interfaces#ClusterResourceConfig) to customize. | | flyte.cluster_resource_manager.config.cluster_resources.standaloneDeployment | bool | `false` | Starts the cluster resource manager in standalone mode with requisite auth credentials to call flyteadmin service endpoints | @@ -91,7 +91,7 @@ helm upgrade -f values-sandbox.yaml flyte . | flyte.common.ingress.separateGrpcIngressAnnotations | object | `{"nginx.ingress.kubernetes.io/backend-protocol":"GRPC"}` | - Extra Ingress annotations applied only to the GRPC ingress. Only makes sense if `separateGrpcIngress` is enabled. | | flyte.common.ingress.tls | object | `{"enabled":false}` | - TLS Settings | | flyte.common.ingress.webpackHMR | bool | `true` | - Enable or disable HMR route to flyteconsole. This is useful only for frontend development. | -| flyte.configmap | object | `{"adminServer":{"auth":{"appAuth":{"thirdPartyConfig":{"flyteClient":{"clientId":"flytectl","redirectUri":"http://localhost:53593/callback","scopes":["offline","all"]}}},"authorizedUris":["https://localhost:30081","http://flyteadmin:80","http://flyteadmin.flyte.svc.cluster.local:80"],"userAuth":{"openId":{"baseUrl":"https://accounts.google.com","clientId":"657465813211-6eog7ek7li5k7i7fvgv2921075063hpe.apps.googleusercontent.com","scopes":["profile","openid"]}}},"flyteadmin":{"eventVersion":2,"metadataStoragePrefix":["metadata","admin"],"metricsScope":"flyte:","profilerPort":10254,"roleNameKey":"iam.amazonaws.com/role","testing":{"host":"http://flyteadmin"}},"server":{"grpcPort":8089,"httpPort":8088,"security":{"allowCors":true,"allowedHeaders":["Content-Type","flyte-authorization"],"allowedOrigins":["*"],"secure":false,"useAuth":false}}},"catalog":{"catalog-cache":{"endpoint":"datacatalog:89","insecure":true,"type":"datacatalog"}},"console":{"BASE_URL":"/console","CONFIG_DIR":"/etc/flyte/config"},"copilot":{"plugins":{"k8s":{"co-pilot":{"image":"cr.flyte.org/flyteorg/flytecopilot:v0.0.33","name":"flyte-copilot-","start-timeout":"30s"}}}},"core":{"propeller":{"downstream-eval-duration":"30s","enable-admin-launcher":true,"leader-election":{"enabled":true,"lease-duration":"15s","lock-config-map":{"name":"propeller-leader","namespace":"flyte"},"renew-deadline":"10s","retry-period":"2s"},"limit-namespace":"all","max-workflow-retries":30,"metadata-prefix":"metadata/propeller","metrics-prefix":"flyte","prof-port":10254,"queue":{"batch-size":-1,"batching-interval":"2s","queue":{"base-delay":"5s","capacity":1000,"max-delay":"120s","rate":100,"type":"maxof"},"sub-queue":{"capacity":100,"rate":10,"type":"bucket"},"type":"batch"},"rawoutput-prefix":"s3://my-s3-bucket/","workers":4,"workflow-reeval-duration":"30s"},"webhook":{"certDir":"/etc/webhook/certs","serviceName":"flyte-pod-webhook"}},"datacatalogServer":{"application":{"grpcPort":8089,"grpcServerReflection":true,"httpPort":8080},"datacatalog":{"metrics-scope":"datacatalog","profiler-port":10254,"storage-prefix":"metadata/datacatalog"}},"domain":{"domains":[{"id":"development","name":"development"},{"id":"staging","name":"staging"},{"id":"production","name":"production"}]},"enabled_plugins":{"tasks":{"task-plugins":{"default-for-task-types":{"bigquery_query_job_task":"agent-service","container":"container","container_array":"k8s-array","sidecar":"sidecar"},"enabled-plugins":["container","sidecar","k8s-array","agent-service"]}}},"k8s":{"plugins":{"agent-service":{"defaultGrpcEndpoint":"flyteagent.flyte.svc.cluster.local:8000","supportedTaskTypes":["bigquery_query_job_task"]},"k8s":{"default-cpus":"100m","default-env-vars":[{"FLYTE_AWS_ENDPOINT":"http://minio.flyte:9000"},{"FLYTE_AWS_ACCESS_KEY_ID":"minio"},{"FLYTE_AWS_SECRET_ACCESS_KEY":"miniostorage"}],"default-memory":"200Mi"}}},"logger":{"logger":{"level":5,"show-source":true}},"remoteData":{"remoteData":{"region":"us-east-1","scheme":"local","signedUrls":{"durationMinutes":3}}},"resource_manager":{"propeller":{"resourcemanager":{"redis":null,"type":"noop"}}},"task_logs":{"plugins":{"logs":{"cloudwatch-enabled":false,"kubernetes-enabled":true,"kubernetes-template-uri":"http://localhost:30082/#/log/{{ \"{{\" }} .namespace {{ \"}}\" }}/{{ \"{{\" }} .podName {{ \"}}\" }}/pod?namespace={{ \"{{\" }} .namespace {{ \"}}\" }}"}}},"task_resource_defaults":{"task_resources":{"defaults":{"cpu":"100m","memory":"200Mi","storage":"5Mi"},"limits":{"cpu":2,"gpu":1,"memory":"1Gi","storage":"20Mi"}}}}` | ----------------------------------------------------------------- CONFIGMAPS SETTINGS | +| flyte.configmap | object | `{"adminServer":{"auth":{"appAuth":{"thirdPartyConfig":{"flyteClient":{"clientId":"flytectl","redirectUri":"http://localhost:53593/callback","scopes":["offline","all"]}}},"authorizedUris":["https://localhost:30081","http://flyteadmin:80","http://flyteadmin.flyte.svc.cluster.local:80"],"userAuth":{"openId":{"baseUrl":"https://accounts.google.com","clientId":"657465813211-6eog7ek7li5k7i7fvgv2921075063hpe.apps.googleusercontent.com","scopes":["profile","openid"]}}},"flyteadmin":{"eventVersion":2,"metadataStoragePrefix":["metadata","admin"],"metricsScope":"flyte:","profilerPort":10254,"roleNameKey":"iam.amazonaws.com/role","testing":{"host":"http://flyteadmin"}},"server":{"grpcPort":8089,"httpPort":8088,"security":{"allowCors":true,"allowedHeaders":["Content-Type","flyte-authorization"],"allowedOrigins":["*"],"secure":false,"useAuth":false}}},"catalog":{"catalog-cache":{"endpoint":"datacatalog:89","insecure":true,"type":"datacatalog"}},"console":{"BASE_URL":"/console","CONFIG_DIR":"/etc/flyte/config"},"copilot":{"plugins":{"k8s":{"co-pilot":{"image":"cr.flyte.org/flyteorg/flytecopilot:v0.0.33","name":"flyte-copilot-","start-timeout":"30s"}}}},"core":{"propeller":{"downstream-eval-duration":"30s","enable-admin-launcher":true,"leader-election":{"enabled":true,"lease-duration":"15s","lock-config-map":{"name":"propeller-leader","namespace":"flyte"},"renew-deadline":"10s","retry-period":"2s"},"limit-namespace":"all","max-workflow-retries":30,"metadata-prefix":"metadata/propeller","metrics-prefix":"flyte","prof-port":10254,"queue":{"batch-size":-1,"batching-interval":"2s","queue":{"base-delay":"5s","capacity":1000,"max-delay":"120s","rate":100,"type":"maxof"},"sub-queue":{"capacity":100,"rate":10,"type":"bucket"},"type":"batch"},"rawoutput-prefix":"s3://my-s3-bucket/","workers":4,"workflow-reeval-duration":"30s"},"webhook":{"certDir":"/etc/webhook/certs","serviceName":"flyte-pod-webhook"}},"datacatalogServer":{"application":{"grpcPort":8089,"grpcServerReflection":true,"httpPort":8080},"datacatalog":{"metrics-scope":"datacatalog","profiler-port":10254,"storage-prefix":"metadata/datacatalog"}},"domain":{"domains":[{"id":"development","name":"development"},{"id":"staging","name":"staging"},{"id":"production","name":"production"}]},"enabled_plugins":{"tasks":{"task-plugins":{"default-for-task-types":{"bigquery_query_job_task":"agent-service","container":"container","container_array":"k8s-array","sidecar":"sidecar"},"enabled-plugins":["container","sidecar","k8s-array","agent-service"]}}},"k8s":{"plugins":{"agent-service":{"defaultAgent":{"endpoint":"dns:///flyteagent.flyte.svc.cluster.local:8000","insecure":true},"supportedTaskTypes":["bigquery_query_job_task"]},"k8s":{"default-cpus":"100m","default-env-vars":[{"FLYTE_AWS_ENDPOINT":"http://minio.flyte:9000"},{"FLYTE_AWS_ACCESS_KEY_ID":"minio"},{"FLYTE_AWS_SECRET_ACCESS_KEY":"miniostorage"}],"default-memory":"200Mi"}}},"logger":{"logger":{"level":5,"show-source":true}},"remoteData":{"remoteData":{"region":"us-east-1","scheme":"local","signedUrls":{"durationMinutes":3}}},"resource_manager":{"propeller":{"resourcemanager":{"redis":null,"type":"noop"}}},"task_logs":{"plugins":{"logs":{"cloudwatch-enabled":false,"kubernetes-enabled":true,"kubernetes-template-uri":"http://localhost:30082/#/log/{{ \"{{\" }} .namespace {{ \"}}\" }}/{{ \"{{\" }} .podName {{ \"}}\" }}/pod?namespace={{ \"{{\" }} .namespace {{ \"}}\" }}"}}},"task_resource_defaults":{"task_resources":{"defaults":{"cpu":"100m","memory":"200Mi","storage":"5Mi"},"limits":{"cpu":2,"gpu":1,"memory":"1Gi","storage":"20Mi"}}}}` | ----------------------------------------------------------------- CONFIGMAPS SETTINGS | | flyte.configmap.adminServer | object | `{"auth":{"appAuth":{"thirdPartyConfig":{"flyteClient":{"clientId":"flytectl","redirectUri":"http://localhost:53593/callback","scopes":["offline","all"]}}},"authorizedUris":["https://localhost:30081","http://flyteadmin:80","http://flyteadmin.flyte.svc.cluster.local:80"],"userAuth":{"openId":{"baseUrl":"https://accounts.google.com","clientId":"657465813211-6eog7ek7li5k7i7fvgv2921075063hpe.apps.googleusercontent.com","scopes":["profile","openid"]}}},"flyteadmin":{"eventVersion":2,"metadataStoragePrefix":["metadata","admin"],"metricsScope":"flyte:","profilerPort":10254,"roleNameKey":"iam.amazonaws.com/role","testing":{"host":"http://flyteadmin"}},"server":{"grpcPort":8089,"httpPort":8088,"security":{"allowCors":true,"allowedHeaders":["Content-Type","flyte-authorization"],"allowedOrigins":["*"],"secure":false,"useAuth":false}}}` | FlyteAdmin server configuration | | flyte.configmap.adminServer.auth | object | `{"appAuth":{"thirdPartyConfig":{"flyteClient":{"clientId":"flytectl","redirectUri":"http://localhost:53593/callback","scopes":["offline","all"]}}},"authorizedUris":["https://localhost:30081","http://flyteadmin:80","http://flyteadmin.flyte.svc.cluster.local:80"],"userAuth":{"openId":{"baseUrl":"https://accounts.google.com","clientId":"657465813211-6eog7ek7li5k7i7fvgv2921075063hpe.apps.googleusercontent.com","scopes":["profile","openid"]}}}` | Authentication configuration | | flyte.configmap.adminServer.server.security.secure | bool | `false` | Controls whether to serve requests over SSL/TLS. | @@ -107,7 +107,7 @@ helm upgrade -f values-sandbox.yaml flyte . | flyte.configmap.enabled_plugins.tasks | object | `{"task-plugins":{"default-for-task-types":{"bigquery_query_job_task":"agent-service","container":"container","container_array":"k8s-array","sidecar":"sidecar"},"enabled-plugins":["container","sidecar","k8s-array","agent-service"]}}` | Tasks specific configuration [structure](https://pkg.go.dev/github.com/flyteorg/flytepropeller/pkg/controller/nodes/task/config#GetConfig) | | flyte.configmap.enabled_plugins.tasks.task-plugins | object | `{"default-for-task-types":{"bigquery_query_job_task":"agent-service","container":"container","container_array":"k8s-array","sidecar":"sidecar"},"enabled-plugins":["container","sidecar","k8s-array","agent-service"]}` | Plugins configuration, [structure](https://pkg.go.dev/github.com/flyteorg/flytepropeller/pkg/controller/nodes/task/config#TaskPluginConfig) | | flyte.configmap.enabled_plugins.tasks.task-plugins.enabled-plugins | list | `["container","sidecar","k8s-array","agent-service"]` | [Enabled Plugins](https://pkg.go.dev/github.com/lyft/flyteplugins/go/tasks/config#Config). Enable sagemaker*, athena if you install the backend plugins | -| flyte.configmap.k8s | object | `{"plugins":{"agent-service":{"defaultGrpcEndpoint":"flyteagent.flyte.svc.cluster.local:8000","supportedTaskTypes":["bigquery_query_job_task"]},"k8s":{"default-cpus":"100m","default-env-vars":[{"FLYTE_AWS_ENDPOINT":"http://minio.flyte:9000"},{"FLYTE_AWS_ACCESS_KEY_ID":"minio"},{"FLYTE_AWS_SECRET_ACCESS_KEY":"miniostorage"}],"default-memory":"200Mi"}}}` | Kubernetes specific Flyte configuration | +| flyte.configmap.k8s | object | `{"plugins":{"agent-service":{"defaultAgent":{"endpoint":"dns:///flyteagent.flyte.svc.cluster.local:8000","insecure":true},"supportedTaskTypes":["bigquery_query_job_task"]},"k8s":{"default-cpus":"100m","default-env-vars":[{"FLYTE_AWS_ENDPOINT":"http://minio.flyte:9000"},{"FLYTE_AWS_ACCESS_KEY_ID":"minio"},{"FLYTE_AWS_SECRET_ACCESS_KEY":"miniostorage"}],"default-memory":"200Mi"}}}` | Kubernetes specific Flyte configuration | | flyte.configmap.k8s.plugins.k8s | object | `{"default-cpus":"100m","default-env-vars":[{"FLYTE_AWS_ENDPOINT":"http://minio.flyte:9000"},{"FLYTE_AWS_ACCESS_KEY_ID":"minio"},{"FLYTE_AWS_SECRET_ACCESS_KEY":"miniostorage"}],"default-memory":"200Mi"}` | Configuration section for all K8s specific plugins [Configuration structure](https://pkg.go.dev/github.com/lyft/flyteplugins/go/tasks/pluginmachinery/flytek8s/config) | | flyte.configmap.logger | object | `{"logger":{"level":5,"show-source":true}}` | Logger configuration | | flyte.configmap.resource_manager | object | `{"propeller":{"resourcemanager":{"redis":null,"type":"noop"}}}` | Resource manager configuration | @@ -148,26 +148,6 @@ helm upgrade -f values-sandbox.yaml flyte . | flyte.flyteadmin.serviceAccount.create | bool | `true` | Should a service account be created for flyteadmin | | flyte.flyteadmin.serviceAccount.imagePullSecrets | list | `[]` | ImagePullSecrets to automatically assign to the service account | | flyte.flyteadmin.tolerations | list | `[]` | tolerations for Flyteadmin deployment | -| flyte.flyteagent.additionalContainers | list | `[]` | Appends additional containers to the deployment spec. May include template values. | -| flyte.flyteagent.additionalVolumeMounts | list | `[]` | Appends additional volume mounts to the main container's spec. May include template values. | -| flyte.flyteagent.additionalVolumes | list | `[]` | Appends additional volumes to the deployment spec. May include template values. | -| flyte.flyteagent.affinity | object | `{}` | affinity for flyteagent deployment | -| flyte.flyteagent.configPath | string | `"/etc/flyteagent/config/*.yaml"` | Default regex string for searching configuration files | -| flyte.flyteagent.extraArgs | object | `{}` | Appends extra command line arguments to the main command | -| flyte.flyteagent.image.pullPolicy | string | `"IfNotPresent"` | Docker image pull policy | -| flyte.flyteagent.image.repository | string | `"ghcr.io/flyteorg/flyteagent"` | Docker image for flyteagent deployment | -| flyte.flyteagent.image.tag | string | `"1.6.2b1"` | Docker image tag | -| flyte.flyteagent.nodeSelector | object | `{}` | nodeSelector for flyteagent deployment | -| flyte.flyteagent.podAnnotations | object | `{}` | Annotations for flyteagent pods | -| flyte.flyteagent.priorityClassName | string | `""` | Sets priorityClassName for datacatalog pod(s). | -| flyte.flyteagent.replicaCount | int | `1` | Replicas count for flyteagent deployment | -| flyte.flyteagent.resources | object | `{"limits":{"cpu":"500m","ephemeral-storage":"100Mi","memory":"500Mi"},"requests":{"cpu":"10m","ephemeral-storage":"50Mi","memory":"50Mi"}}` | Default resources requests and limits for flyteagent deployment | -| flyte.flyteagent.service | object | `{"annotations":{"projectcontour.io/upstream-protocol.h2c":"grpc"},"type":"ClusterIP"}` | Service settings for flyteagent | -| flyte.flyteagent.serviceAccount | object | `{"annotations":{},"create":true,"imagePullSecrets":[]}` | Configuration for service accounts for flyteagent | -| flyte.flyteagent.serviceAccount.annotations | object | `{}` | Annotations for ServiceAccount attached to flyteagent pods | -| flyte.flyteagent.serviceAccount.create | bool | `true` | Should a service account be created for flyteagent | -| flyte.flyteagent.serviceAccount.imagePullSecrets | list | `[]` | ImagePullSecrets to automatically assign to the service account | -| flyte.flyteagent.tolerations | list | `[]` | tolerations for flyteagent deployment | | flyte.flyteconsole.affinity | object | `{}` | affinity for Flyteconsole deployment | | flyte.flyteconsole.image.pullPolicy | string | `"IfNotPresent"` | Docker image pull policy | | flyte.flyteconsole.image.repository | string | `"cr.flyte.org/flyteorg/flyteconsole"` | Docker image for Flyteconsole deployment | @@ -219,6 +199,7 @@ helm upgrade -f values-sandbox.yaml flyte . | flyte.webhook.serviceAccount.imagePullSecrets | list | `[]` | ImagePullSecrets to automatically assign to the service account | | flyte.workflow_notifications | object | `{"config":{},"enabled":false}` | **Optional Component** Workflow notifications module is an optional dependency. Flyte uses cloud native pub-sub systems to notify users of various events in their workflows | | flyte.workflow_scheduler | object | `{"enabled":true,"type":"native"}` | **Optional Component** Flyte uses a cloud hosted Cron scheduler to run workflows on a schedule. The following module is optional. Without, this module, you will not have scheduled launchplans / workflows. Docs: https://docs.flyte.org/en/latest/howto/enable_and_use_schedules.html#setting-up-scheduled-workflows | +| flyteagent.enabled | bool | `true` | | | kubernetes-dashboard.enabled | bool | `true` | | | kubernetes-dashboard.extraArgs[0] | string | `"--enable-skip-login"` | | | kubernetes-dashboard.extraArgs[1] | string | `"--enable-insecure-login"` | | diff --git a/charts/flyte/values.yaml b/charts/flyte/values.yaml index 602bef6e44..f0b6083f84 100755 --- a/charts/flyte/values.yaml +++ b/charts/flyte/values.yaml @@ -212,66 +212,6 @@ flyte: # -- affinity for Flytepropeller deployment affinity: {} - # - # FLYTE_AGENT SETTINGS - # - - flyteagent: - enabled: true - # -- Replicas count for flyteagent deployment - replicaCount: 1 - image: - # -- Docker image for flyteagent deployment - repository: ghcr.io/flyteorg/flyteagent - # -- Docker image tag - tag: 1.6.2b1 - # -- Docker image pull policy - pullPolicy: IfNotPresent - # -- Default resources requests and limits for flyteagent deployment - resources: - limits: - cpu: 500m - ephemeral-storage: 100Mi - memory: 500Mi - requests: - cpu: 10m - ephemeral-storage: 50Mi - memory: 50Mi - # -- Default regex string for searching configuration files - configPath: /etc/flyteagent/config/*.yaml - # -- Service settings for flyteagent - service: - annotations: - projectcontour.io/upstream-protocol.h2c: grpc - type: ClusterIP - # -- Configuration for service accounts for flyteagent - serviceAccount: - # -- Should a service account be created for flyteagent - create: true - # -- Annotations for ServiceAccount attached to flyteagent pods - annotations: { } - # -- ImagePullSecrets to automatically assign to the service account - imagePullSecrets: [ ] - # -- Annotations for flyteagent pods - podAnnotations: { } - # -- nodeSelector for flyteagent deployment - nodeSelector: { } - # -- tolerations for flyteagent deployment - tolerations: [ ] - # -- affinity for flyteagent deployment - affinity: { } - # -- Appends additional volumes to the deployment spec. May include template values. - additionalVolumes: [ ] - # -- Appends additional volume mounts to the main container's spec. May include template values. - additionalVolumeMounts: [ ] - # -- Appends additional containers to the deployment spec. May include template values. - additionalContainers: [ ] - # -- Appends extra command line arguments to the main command - extraArgs: { } - # -- Sets priorityClassName for datacatalog pod(s). - priorityClassName: "" - - # # FLYTECONSOLE SETTINGS # @@ -608,7 +548,9 @@ flyte: - FLYTE_AWS_SECRET_ACCESS_KEY: miniostorage default-memory: 200Mi agent-service: - defaultGrpcEndpoint: flyteagent.flyte.svc.cluster.local:8000 + defaultAgent: + endpoint: dns:///flyteagent.flyte.svc.cluster.local:8000 + insecure: true supportedTaskTypes: - bigquery_query_job_task @@ -920,3 +862,6 @@ sparkoperator: daskoperator: # --- enable or disable the dask operator deployment installation enabled: false + +flyteagent: + enabled: true diff --git a/deployment/agent/flyte_agent_helm_generated.yaml b/deployment/agent/flyte_agent_helm_generated.yaml new file mode 100644 index 0000000000..8ea6ede511 --- /dev/null +++ b/deployment/agent/flyte_agent_helm_generated.yaml @@ -0,0 +1,100 @@ +--- +# Source: flyteagent/templates/agent/serviceaccount.yaml +apiVersion: v1 +kind: ServiceAccount +metadata: + name: flyteagent + namespace: flyte + labels: + app.kubernetes.io/name: flyteagent + app.kubernetes.io/instance: flyte + helm.sh/chart: flyteagent-v0.1.10 + app.kubernetes.io/managed-by: Helm +--- +# Source: flyteagent/templates/agent/secret.yaml +apiVersion: v1 +kind: Secret +metadata: + name: flyteagent + namespace: flyte +type: Opaque +data: + username: User +--- +# Source: flyteagent/templates/agent/service.yaml +apiVersion: v1 +kind: Service +metadata: + name: flyteagent + namespace: flyte + labels: + app.kubernetes.io/name: flyteagent + app.kubernetes.io/instance: flyte + helm.sh/chart: flyteagent-v0.1.10 + app.kubernetes.io/managed-by: Helm + annotations: + projectcontour.io/upstream-protocol.h2c: grpc +spec: + type: ClusterIP + ports: + - name: agent-grpc + port: 8000 + protocol: TCP + targetPort: agent-grpc + selector: + app.kubernetes.io/name: flyteagent + app.kubernetes.io/instance: flyte +--- +# Source: flyteagent/templates/agent/deployment.yaml +apiVersion: apps/v1 +kind: Deployment +metadata: + name: flyteagent + namespace: flyte + labels: + app.kubernetes.io/name: flyteagent + app.kubernetes.io/instance: flyte + helm.sh/chart: flyteagent-v0.1.10 + app.kubernetes.io/managed-by: Helm +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/name: flyteagent + app.kubernetes.io/instance: flyte + template: + metadata: + annotations: + labels: + app.kubernetes.io/name: flyteagent + app.kubernetes.io/instance: flyte + helm.sh/chart: flyteagent-v0.1.10 + app.kubernetes.io/managed-by: Helm + spec: + containers: + - command: + - pyflyte + - serve + image: "ghcr.io/flyteorg/flyteagent:1.8.3" + imagePullPolicy: "IfNotPresent" + name: flyteagent + volumeMounts: + - mountPath: /etc/secrets + name: flyteagent + ports: + - containerPort: 8000 + name: agent-grpc + resources: + limits: + cpu: 500m + ephemeral-storage: 200Mi + memory: 200Mi + requests: + cpu: 500m + ephemeral-storage: 200Mi + memory: 200Mi + serviceAccountName: flyteagent + volumes: + - name: flyteagent + secret: + secretName: flyteagent diff --git a/deployment/sandbox/flyte_helm_generated.yaml b/deployment/sandbox/flyte_helm_generated.yaml index ba20c28212..07760138e7 100644 --- a/deployment/sandbox/flyte_helm_generated.yaml +++ b/deployment/sandbox/flyte_helm_generated.yaml @@ -39,18 +39,6 @@ metadata: helm.sh/chart: flyte-v0.1.10 app.kubernetes.io/managed-by: Helm --- -# Source: flyte/charts/flyte/templates/agent/rbac.yaml -apiVersion: v1 -kind: ServiceAccount -metadata: - name: flyteagent - namespace: flyte - labels: - app.kubernetes.io/name: flyteagent - app.kubernetes.io/instance: flyte - helm.sh/chart: flyte-v0.1.10 - app.kubernetes.io/managed-by: Helm ---- # Source: flyte/charts/flyte/templates/datacatalog/rbac.yaml apiVersion: v1 kind: ServiceAccount @@ -657,7 +645,9 @@ data: k8s.yaml: | plugins: agent-service: - defaultGrpcEndpoint: flyteagent.flyte.svc.cluster.local:8000 + defaultAgent: + endpoint: dns:///flyteagent.flyte.svc.cluster.local:8000 + insecure: true supportedTaskTypes: - bigquery_query_job_task k8s: @@ -6168,30 +6158,6 @@ spec: app.kubernetes.io/name: flyteadmin app.kubernetes.io/instance: flyte --- -# Source: flyte/charts/flyte/templates/agent/service.yaml -apiVersion: v1 -kind: Service -metadata: - name: flyteagent - namespace: flyte - labels: - app.kubernetes.io/name: flyteagent - app.kubernetes.io/instance: flyte - helm.sh/chart: flyte-v0.1.10 - app.kubernetes.io/managed-by: Helm - annotations: - projectcontour.io/upstream-protocol.h2c: grpc -spec: - type: ClusterIP - ports: - - name: agent-grpc - port: 8000 - protocol: TCP - targetPort: agent-grpc - selector: - app.kubernetes.io/name: flyteagent - app.kubernetes.io/instance: flyte ---- # Source: flyte/charts/flyte/templates/console/service.yaml apiVersion: v1 kind: Service @@ -6867,53 +6833,6 @@ spec: secret: secretName: flyte-admin-secrets --- -# Source: flyte/charts/flyte/templates/agent/deployment.yaml -apiVersion: apps/v1 -kind: Deployment -metadata: - name: flyteagent - namespace: flyte - labels: - app.kubernetes.io/name: flyteagent - app.kubernetes.io/instance: flyte - helm.sh/chart: flyte-v0.1.10 - app.kubernetes.io/managed-by: Helm -spec: - replicas: 1 - selector: - matchLabels: - app.kubernetes.io/name: flyteagent - app.kubernetes.io/instance: flyte - template: - metadata: - annotations: - labels: - app.kubernetes.io/name: flyteagent - app.kubernetes.io/instance: flyte - helm.sh/chart: flyte-v0.1.10 - app.kubernetes.io/managed-by: Helm - spec: - containers: - - command: - - pyflyte - - serve - image: "ghcr.io/flyteorg/flyteagent:1.6.2b1" - imagePullPolicy: "IfNotPresent" - name: flyteagent - ports: - - containerPort: 8000 - name: agent-grpc - resources: - limits: - cpu: 500m - ephemeral-storage: 100Mi - memory: 500Mi - requests: - cpu: 10m - ephemeral-storage: 50Mi - memory: 50Mi - serviceAccountName: flyteagent ---- # Source: flyte/charts/flyte/templates/clusterresourcesync/deployment.yaml apiVersion: apps/v1 kind: Deployment @@ -7209,7 +7128,7 @@ spec: template: metadata: annotations: - configChecksum: "444f5d76e425ccbd75754da7b762b002bdef2ca8847f6a10041c9c3b1d9748a" + configChecksum: "0d5ef1ee78220826ca74691abb0808b12186cdd8b6f16b43cc7128eac3c7bf4" labels: app.kubernetes.io/name: flytepropeller app.kubernetes.io/instance: flyte @@ -7283,7 +7202,7 @@ spec: app.kubernetes.io/name: flyte-pod-webhook app.kubernetes.io/version: v1.1.116 annotations: - configChecksum: "444f5d76e425ccbd75754da7b762b002bdef2ca8847f6a10041c9c3b1d9748a" + configChecksum: "0d5ef1ee78220826ca74691abb0808b12186cdd8b6f16b43cc7128eac3c7bf4" spec: securityContext: fsGroup: 65534 diff --git a/docker/sandbox-bundled/manifests/complete.yaml b/docker/sandbox-bundled/manifests/complete.yaml index 3e38ad150b..d8a17beaa7 100644 --- a/docker/sandbox-bundled/manifests/complete.yaml +++ b/docker/sandbox-bundled/manifests/complete.yaml @@ -784,7 +784,7 @@ type: Opaque --- apiVersion: v1 data: - haSharedSecret: VWVseW5KSmVXU1YzVlNJTw== + haSharedSecret: eG45SEN5TVVWa0x6T1JWag== proxyPassword: "" proxyUsername: "" kind: Secret @@ -1345,7 +1345,7 @@ spec: metadata: annotations: checksum/config: 8f50e768255a87f078ba8b9879a0c174c3e045ffb46ac8723d2eedbe293c8d81 - checksum/secret: 4ce178c1f966129c50b6efd4e46d6574a7a653a479994ba35c434688aee93476 + checksum/secret: d88b59ccf4d3a3d572d09451cda92c24362f858e9d4a18db02c5e3ac00fa39bf labels: app: docker-registry release: flyte-sandbox diff --git a/docker/sandbox-bundled/manifests/dev.yaml b/docker/sandbox-bundled/manifests/dev.yaml index 76e5ed275d..055a70de41 100644 --- a/docker/sandbox-bundled/manifests/dev.yaml +++ b/docker/sandbox-bundled/manifests/dev.yaml @@ -499,7 +499,7 @@ metadata: --- apiVersion: v1 data: - haSharedSecret: dURHNWp6VnJvbnFtYm9QZA== + haSharedSecret: ajZKUE5Ddm5HRHhmcVpIYg== proxyPassword: "" proxyUsername: "" kind: Secret @@ -933,7 +933,7 @@ spec: metadata: annotations: checksum/config: 8f50e768255a87f078ba8b9879a0c174c3e045ffb46ac8723d2eedbe293c8d81 - checksum/secret: 2e8126d6988bdffe867b6f100279c5a27c81bb16d16e9c3b04dd322dbe6b3d61 + checksum/secret: 989c2369d62af38b41b73878e06ff95b0d60ed64d38c055bae4c5abd47e40dae labels: app: docker-registry release: flyte-sandbox diff --git a/script/generate_helm.sh b/script/generate_helm.sh index 14a60bf5d0..0ea1c85109 100755 --- a/script/generate_helm.sh +++ b/script/generate_helm.sh @@ -13,8 +13,11 @@ DEPLOYMENT_CORE=${1:-eks gcp} DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )" HELM_CAPABILITIES="-a rbac.authorization.k8s.io/v1 -a networking.k8s.io/v1/Ingress -a apiextensions.k8s.io/v1/CustomResourceDefinition" -helm dep update ${DIR}/../charts/flyte/ helm dep update ${DIR}/../charts/flyte-deps/ +helm dep update ${DIR}/../charts/flyte-core/ +helm dep update ${DIR}/../charts/flyte-binary/ +helm dep update ${DIR}/../charts/flyte-sandbox/ +helm dep update ${DIR}/../charts/flyte/ helm template flyte -n flyte ${DIR}/../charts/flyte/ -f ${DIR}/../charts/flyte/values.yaml ${HELM_CAPABILITIES} --debug > ${DIR}/../deployment/sandbox/flyte_helm_generated.yaml @@ -33,6 +36,9 @@ helm template flyte -n flyte ${DIR}/../charts/flyte-deps/ ${HELM_CAPABILITIES} - # Generate manifest single binary chart helm template flyte -n flyte ${DIR}/../charts/flyte-binary/ ${HELM_CAPABILITIES} --debug > ${DIR}/../deployment/sandbox-binary/flyte_sandbox_binary_helm_generated.yaml +# Generate manifest flyte agent +helm template flyte -n flyte ${DIR}/../charts/flyte-agent/ ${HELM_CAPABILITIES} --debug > ${DIR}/../deployment/agent/flyte_agent_helm_generated.yaml + echo "Generating helm docs" if command -v helm-docs &> /dev/null