Skip to content

Commit

Permalink
control-service: Expose supported python versions in helm
Browse files Browse the repository at this point in the history
As part of the initiative to support multiple python versions in data job deployments,
new configurations were introduced in the form of `datajobs.deployment.supportedPythonVersions`
and `datajobs.deployment.defaultPythonVersion` configuration properties.

To facilitate proper production setup of the Control Service with the new functionality, the
configuration needs to be exposed in the helm chart.

This change updates the values.yaml and deployment.yaml files of the Control Service helm chart
to expose the supportedPythonVersions and defaultPythonVersion configurations and set them as
environment variables.

Testing Done: None

Signed-off-by: Andon Andonov <[email protected]>
  • Loading branch information
doks5 committed Apr 24, 2023
1 parent f887636 commit 7f7161b
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -275,6 +275,14 @@ spec:
value: "{{ .Values.dataJob.deployment.initContainer.resources.limits.memory }}"
- name: DATAJOBS_DEPLOYMENT_INITCONTAINER_RESOURCES_LIMITS_CPU
value: "{{ .Values.dataJob.deployment.initContainer.resources.limits.cpu }}"
{{- if .Values.deploymentSupportedPythonVersions }}
- name: DATAJOBS_DEPLOYMENT_SUPPORTED_PYTHON_VERSIONS
value: "{{ toJson .Values.deploymentSupportedPythonVersions }}"
{{- end }}
{{- if .Values.deploymentDefaultPythonVersion }}
- name: DATAJOBS_DEPLOYMENT_DEFAULT_PYTHON_VERSION
value: "{{ .Values.deploymentDefaultPythonVersion }}"
{{- end }}


{{- if .Values.extraVars }}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -284,6 +284,31 @@ deploymentDataJobBaseImage:
username:
password:


## The map of python versions for data job deployments supported by the Control Service.
## All values should be strings, and follow the format
## {"pythonVersion": {"baseImage": "<repository>:<tag>", "vdkImage": "<registry>/<repository>:<tag>"}}
##
## The value of baseImage will be used to create the image, where data job would be run.
## On top of it the job source and its dependencies are installed for each job.
## It can be customized further by installing other native dependencies necessary to run different kinds of libraries
##
## The value of vdkImage is the image name of VDK, which will be used to run the data jobs.
## It is recommended to use image with same tag (e.g., release or latest),
## as it will be pulled before any execution, thus making sure all jobs use the same and latest version of VDK.
## The image should contain installation of VDK (vdk), which will be used to run the data jobs (vdk run command)
## Only the installed python modules (vdk and its dependencies) will be used from the image.
## Everything else is effectively discarded since another image is used as base during execution.
##
## Example: {"3.9": {"baseImage": "python:3.9-latest", "vdkImage": "example-registry.com/some-user/vdk:3.9-release"}}
deploymentSupportedPythonVersions: {}


## Default python version to be used for data job deployments. The value should be a string and would be
## used when a user has not provided a specific python_version for their data job's deployment.
## Example: "3.9"
deploymentDefaultPythonVersion: ""

## ini formatted options that provides default and per-job VDK options.
## Allows to provide VDK configuration via environment variables.
## They will be set as environment variables during execution of Data Job
Expand Down

0 comments on commit 7f7161b

Please sign in to comment.