diff --git a/charts/clearml/Chart.yaml b/charts/clearml/Chart.yaml index a9f3a8e..53d5f64 100644 --- a/charts/clearml/Chart.yaml +++ b/charts/clearml/Chart.yaml @@ -2,7 +2,7 @@ apiVersion: v2 name: clearml description: MLOps platform type: application -version: "2.2.2" +version: "2.3.0" appVersion: "1.1.1" home: https://clear.ml icon: https://raw.githubusercontent.com/allegroai/clearml/master/docs/clearml-logo.svg diff --git a/charts/clearml/README.md b/charts/clearml/README.md index 08124a7..c3f75eb 100644 --- a/charts/clearml/README.md +++ b/charts/clearml/README.md @@ -1,6 +1,6 @@ # ClearML Ecosystem for Kubernetes -![Version: 2.2.2](https://img.shields.io/badge/Version-2.2.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.1.1](https://img.shields.io/badge/AppVersion-1.1.1-informational?style=flat-square) +![Version: 2.3.0](https://img.shields.io/badge/Version-2.3.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.1.1](https://img.shields.io/badge/AppVersion-1.1.1-informational?style=flat-square) MLOps platform @@ -180,6 +180,7 @@ For detailed instructions, see the [Optional Configuration](https://github.com/a | agentservices.storage.data.class | string | `"standard"` | | | agentservices.storage.data.size | string | `"50Gi"` | | | agentservices.tolerations | list | `[]` | | +| apiserver.additionalConfigs | object | `{}` | | | apiserver.affinity | object | `{}` | | | apiserver.configDir | string | `"/opt/clearml/config"` | | | apiserver.extraEnvs | list | `[]` | | @@ -197,9 +198,6 @@ For detailed instructions, see the [Optional Configuration](https://github.com/a | apiserver.resources | object | `{}` | | | apiserver.service.port | int | `8008` | | | apiserver.service.type | string | `"NodePort"` | | -| apiserver.storage.config.class | string | `"standard"` | | -| apiserver.storage.config.size | string | `"1Gi"` | | -| apiserver.storage.enableConfigVolume | bool | `false` | | | apiserver.tolerations | list | `[]` | | | clearml.defaultCompany | string | `"d1bd92a3b039400cbafc60a7a5b1e52b"` | | | elasticsearch.clusterHealthCheckParams | string | `"wait_for_status=yellow&timeout=1s"` | | diff --git a/charts/clearml/templates/_helpers.tpl b/charts/clearml/templates/_helpers.tpl index 35dbe7c..6bf3977 100644 --- a/charts/clearml/templates/_helpers.tpl +++ b/charts/clearml/templates/_helpers.tpl @@ -107,7 +107,7 @@ Create the name of the App service to use {{- printf "%s%s%s" "http://" .Values.ingress.hostPrefixApp .Values.ingress.host }} {{- end }} {{- else }} -{{- printf "%s%s%s%s" "http://" (include "clearml.fullname" .) "-webserver:" (.Values.webserver.service.port | quote) }} +{{- printf "%s%s%s%s" "http://" (include "clearml.fullname" .) "-webserver:" (.Values.webserver.service.port | toString) }} {{- end }} {{- end }} @@ -122,7 +122,7 @@ Create the name of the Api service to use {{- printf "%s%s%s" "http://" .Values.ingress.hostPrefixApi .Values.ingress.host }} {{- end }} {{- else }} -{{- printf "%s%s%s%s" "http://" (include "clearml.fullname" .) "-apiserver:" (.Values.apiserver.service.port | quote) }} +{{- printf "%s%s%s%s" "http://" (include "clearml.fullname" .) "-apiserver:" (.Values.apiserver.service.port | toString) }} {{- end }} {{- end }} @@ -137,6 +137,6 @@ Create the name of the Files service to use {{- printf "%s%s%s" "http://" .Values.ingress.hostPrefixFiles .Values.ingress.host }} {{- end }} {{- else }} -{{- printf "%s%s%s%s" "http://" (include "clearml.fullname" .) "-fileserver:" (.Values.fileserver.service.port | quote) }} +{{- printf "%s%s%s%s" "http://" (include "clearml.fullname" .) "-fileserver:" (.Values.fileserver.service.port | toString) }} {{- end }} {{- end }} diff --git a/charts/clearml/templates/configmap-apiserver.yaml b/charts/clearml/templates/configmap-apiserver.yaml new file mode 100644 index 0000000..966bcf2 --- /dev/null +++ b/charts/clearml/templates/configmap-apiserver.yaml @@ -0,0 +1,13 @@ +{{- if .Values.apiserver.additionalConfigs -}} +apiVersion: v1 +kind: ConfigMap +metadata: + name: "{{ include "clearml.fullname" . }}-apiserver-configmap" + labels: + {{- include "clearml.labels" . | nindent 4 }} +data: + {{- range $key, $val := .Values.apiserver.additionalConfigs }} + {{ $key }}: | + {{- $val | nindent 4 }} + {{- end }} +{{- end -}} diff --git a/charts/clearml/templates/deployment-apiserver.yaml b/charts/clearml/templates/deployment-apiserver.yaml index 655ffb4..be4e450 100644 --- a/charts/clearml/templates/deployment-apiserver.yaml +++ b/charts/clearml/templates/deployment-apiserver.yaml @@ -18,12 +18,6 @@ spec: labels: {{- include "clearml.selectorLabelsApiServer" . | nindent 8 }} spec: - {{- if .Values.apiserver.storage.enableConfigVolume }} - volumes: - - name: apiserver-config - persistentVolumeClaim: - claimName: {{ include "clearml.fullname" . }}-apiserver-config - {{- end }} containers: - name: {{ .Chart.Name }} image: "{{ .Values.apiserver.image.repository }}:{{ .Values.apiserver.image.tag | default .Chart.AppVersion }}" @@ -101,13 +95,19 @@ spec: httpGet: path: /debug.ping port: 8008 - {{- if .Values.apiserver.storage.enableConfigVolume }} + {{- if .Values.apiserver.additionalConfigs }} volumeMounts: - name: apiserver-config mountPath: /opt/clearml/config {{- end }} resources: {{- toYaml .Values.apiserver.resources | nindent 12 }} + {{- if .Values.apiserver.additionalConfigs }} + volumes: + - name: apiserver-config + configMap: + name: "{{ include "clearml.fullname" . }}-apiserver-configmap" + {{- end }} {{- with .Values.apiserver.nodeSelector }} nodeSelector: {{- toYaml . | nindent 8 }} diff --git a/charts/clearml/templates/ingress-api.yaml b/charts/clearml/templates/ingress-api.yaml index 5fbb9f4..237af7a 100644 --- a/charts/clearml/templates/ingress-api.yaml +++ b/charts/clearml/templates/ingress-api.yaml @@ -1,13 +1,15 @@ {{- if .Values.ingress.enabled -}} {{- $fullName := include "clearml.fullname" . -}} -{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1 +{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} apiVersion: networking.k8s.io/v1beta1 {{- else -}} apiVersion: extensions/v1beta1 {{- end }} kind: Ingress metadata: - name: {{ $fullName }}-api + name: {{ include "clearml.fullname" . }}-api labels: {{- include "clearml.labels" . | nindent 4 }} {{- with .Values.ingress.annotations }} diff --git a/charts/clearml/templates/ingress-app.yaml b/charts/clearml/templates/ingress-app.yaml index e9dc9c8..54a003c 100644 --- a/charts/clearml/templates/ingress-app.yaml +++ b/charts/clearml/templates/ingress-app.yaml @@ -1,13 +1,15 @@ {{- if .Values.ingress.enabled -}} {{- $fullName := include "clearml.fullname" . -}} -{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1 +{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} apiVersion: networking.k8s.io/v1beta1 {{- else -}} apiVersion: extensions/v1beta1 {{- end }} kind: Ingress metadata: - name: {{ $fullName }}-app + name: {{ include "clearml.fullname" . }}-app labels: {{- include "clearml.labels" . | nindent 4 }} {{- with .Values.ingress.annotations }} diff --git a/charts/clearml/templates/ingress-files.yaml b/charts/clearml/templates/ingress-files.yaml index 5ee1b75..31b42a2 100644 --- a/charts/clearml/templates/ingress-files.yaml +++ b/charts/clearml/templates/ingress-files.yaml @@ -1,13 +1,15 @@ {{- if .Values.ingress.enabled -}} {{- $fullName := include "clearml.fullname" . -}} -{{- if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} +{{- if semverCompare ">=1.19-0" .Capabilities.KubeVersion.GitVersion -}} +apiVersion: networking.k8s.io/v1 +{{- else if semverCompare ">=1.14-0" .Capabilities.KubeVersion.GitVersion -}} apiVersion: networking.k8s.io/v1beta1 {{- else -}} apiVersion: extensions/v1beta1 {{- end }} kind: Ingress metadata: - name: {{ $fullName }}-files + name: {{ include "clearml.fullname" . }}-files labels: {{- include "clearml.labels" . | nindent 4 }} {{- with .Values.ingress.annotations }} diff --git a/charts/clearml/templates/pvc-apiserver.yaml b/charts/clearml/templates/pvc-apiserver.yaml deleted file mode 100644 index 80f226b..0000000 --- a/charts/clearml/templates/pvc-apiserver.yaml +++ /dev/null @@ -1,15 +0,0 @@ -{{- if .Values.apiserver.storage.enableConfigVolume }} -kind: PersistentVolumeClaim -apiVersion: v1 -metadata: - name: {{ include "clearml.fullname" . }}-apiserver-config - labels: - {{- include "clearml.labels" . | nindent 4 }} -spec: - accessModes: - - ReadWriteOnce - resources: - requests: - storage: {{ .Values.apiserver.storage.config.size | quote }} - storageClassName: {{ .Values.apiserver.storage.config.class | quote }} -{{- end }} diff --git a/charts/clearml/values.yaml b/charts/clearml/values.yaml index e7e6068..87c989f 100644 --- a/charts/clearml/values.yaml +++ b/charts/clearml/values.yaml @@ -53,12 +53,16 @@ apiserver: affinity: {} - # Optional: used in pvc-apiserver containing optional server configuration files - storage: - enableConfigVolume: false - config: - class: "standard" - size: 1Gi + additionalConfigs: {} + # services.conf: | + # tasks { + # non_responsive_tasks_watchdog { + # # In-progress tasks that haven't been updated for at least 'value' seconds will be stopped by the watchdog + # threshold_sec: 21000 + # # Watchdog will sleep for this number of seconds after each cycle + # watch_interval_sec: 900 + # } + # } fileserver: service: