From 22a7dea1fb65b948e93549b4b9212067a8f7848c Mon Sep 17 00:00:00 2001 From: Jan Wytze Zuidema Date: Thu, 8 Jun 2023 15:32:21 +0200 Subject: [PATCH] Add the ability to define custom environment variables for inference (#221) (#222) Co-authored-by: Jan Wytze Zuidema --- charts/clearml-serving/Chart.yaml | 2 +- charts/clearml-serving/README.md | 5 +++-- .../templates/clearml-serving-inference-deployment.yaml | 3 +++ charts/clearml-serving/values.yaml | 2 ++ 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/charts/clearml-serving/Chart.yaml b/charts/clearml-serving/Chart.yaml index 4147c33..320af8e 100644 --- a/charts/clearml-serving/Chart.yaml +++ b/charts/clearml-serving/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: clearml-serving description: ClearML Serving Helm Chart type: application -version: "1.0.3" +version: "1.1.0" appVersion: "1.2.0" kubeVersion: ">= 1.21.0-0 < 1.28.0-0" home: https://clear.ml diff --git a/charts/clearml-serving/README.md b/charts/clearml-serving/README.md index 3c3c665..00fb721 100644 --- a/charts/clearml-serving/README.md +++ b/charts/clearml-serving/README.md @@ -1,6 +1,6 @@ # ClearML Kubernetes Serving -![Version: 1.0.3](https://img.shields.io/badge/Version-1.0.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.2.0](https://img.shields.io/badge/AppVersion-1.2.0-informational?style=flat-square) +![Version: 1.1.0](https://img.shields.io/badge/Version-1.1.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.2.0](https://img.shields.io/badge/AppVersion-1.2.0-informational?style=flat-square) ClearML Serving Helm Chart @@ -54,9 +54,10 @@ Kubernetes: `>= 1.21.0-0 < 1.28.0-0` | Key | Type | Default | Description | |-----|------|---------|-------------| | clearml | object | `{"apiAccessKey":"ClearML API Access Key","apiHost":"http://clearml-server-apiserver:8008","apiSecretKey":"ClearML API Secret Key","defaultBaseServeUrl":"http://127.0.0.1:8080/serve","filesHost":"http://clearml-server-fileserver:8081","servingTaskId":"ClearML Serving Task ID","webHost":"http://clearml-server-webserver:80"}` | ClearMl generic configurations | -| clearml_serving_inference | object | `{"affinity":{},"autoscaling":{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50},"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-inference","tag":"1.2.0"},"ingress":{"annotations":{},"enabled":false,"hostName":"serving.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""},"nodeSelector":{},"resources":{},"tolerations":[]}` | ClearML serving inference configurations | +| clearml_serving_inference | object | `{"affinity":{},"autoscaling":{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50},"extraEnvironment":[],"extraPythonPackages":[],"image":{"repository":"allegroai/clearml-serving-inference","tag":"1.2.0"},"ingress":{"annotations":{},"enabled":false,"hostName":"serving.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""},"nodeSelector":{},"resources":{},"tolerations":[]}` | ClearML serving inference configurations | | clearml_serving_inference.affinity | object | `{}` | Affinity configuration | | clearml_serving_inference.autoscaling | object | `{"enabled":false,"maxReplicas":11,"minReplicas":1,"targetCPU":50,"targetMemory":50}` | Autoscaling configuration | +| clearml_serving_inference.extraEnvironment | list | `[]` | Extra environment variables | | clearml_serving_inference.extraPythonPackages | list | `[]` | Extra Python Packages to be installed in running pods | | clearml_serving_inference.image | object | `{"repository":"allegroai/clearml-serving-inference","tag":"1.2.0"}` | Container Image | | clearml_serving_inference.ingress | object | `{"annotations":{},"enabled":false,"hostName":"serving.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""}` | Ingress exposing configurations | diff --git a/charts/clearml-serving/templates/clearml-serving-inference-deployment.yaml b/charts/clearml-serving/templates/clearml-serving-inference-deployment.yaml index c6510d0..2936aff 100644 --- a/charts/clearml-serving/templates/clearml-serving-inference-deployment.yaml +++ b/charts/clearml-serving/templates/clearml-serving-inference-deployment.yaml @@ -54,6 +54,9 @@ spec: - name: CLEARML_EXTRA_PYTHON_PACKAGES value: '{{ join " " .Values.clearml_serving_inference.extraPythonPackages }}' {{- end }} + {{- with .Values.clearml_serving_inference.extraEnvironment }} + {{- toYaml . | nindent 12 }} + {{- end }} image: "{{ .Values.clearml_serving_inference.image.repository }}:{{ .Values.clearml_serving_inference.image.tag }}" name: {{ include "clearmlServing.fullname" . }}-inference ports: diff --git a/charts/clearml-serving/values.yaml b/charts/clearml-serving/values.yaml index 451b827..390343b 100644 --- a/charts/clearml-serving/values.yaml +++ b/charts/clearml-serving/values.yaml @@ -41,6 +41,8 @@ clearml_serving_inference: affinity: {} # -- Pod resources definition resources: {} + # -- Extra environment variables + extraEnvironment: [] # -- Extra Python Packages to be installed in running pods extraPythonPackages: [] # - numpy==1.22.4