diff --git a/charts/clearml/Chart.yaml b/charts/clearml/Chart.yaml index fa7e38b..eb9dc69 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: "5.4.2" +version: "5.5.0" appVersion: "1.9.2" kubeVersion: ">= 1.21.0-0 < 1.27.0-0" home: https://clear.ml @@ -33,6 +33,4 @@ dependencies: annotations: artifacthub.io/changes: | - kind: added - description: support for kubernetes 1.26 - - kind: fixed - description: wrong override display url for Enterprise + description: support for fileserver static PVC diff --git a/charts/clearml/README.md b/charts/clearml/README.md index 1670252..d81f5e8 100644 --- a/charts/clearml/README.md +++ b/charts/clearml/README.md @@ -1,6 +1,6 @@ # ClearML Ecosystem for Kubernetes -![Version: 5.4.2](https://img.shields.io/badge/Version-5.4.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.9.2](https://img.shields.io/badge/AppVersion-1.9.2-informational?style=flat-square) +![Version: 5.5.0](https://img.shields.io/badge/Version-5.5.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.9.2](https://img.shields.io/badge/AppVersion-1.9.2-informational?style=flat-square) MLOps platform @@ -223,7 +223,7 @@ Kubernetes: `>= 1.21.0-0 < 1.27.0-0` | externalServices.mongodbConnectionStringBackend | string | `""` | Existing MongoDB connection string for AUTH to use if mongodb.enabled is false | | externalServices.redisHost | string | `""` | Existing Redis Hostname to use if redis.enabled is false | | externalServices.redisPort | int | `6379` | Existing Redis Port to use if redis.enabled is false | -| fileserver | object | `{"affinity":{},"enabled":true,"extraEnvs":[],"image":{"pullPolicy":"IfNotPresent","repository":"allegroai/clearml","tag":"1.9.2-317"},"ingress":{"annotations":{},"enabled":false,"hostName":"files.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""},"nodeSelector":{},"podAnnotations":{},"replicaCount":1,"resources":{"limits":{"cpu":"2000m","memory":"1Gi"},"requests":{"cpu":"100m","memory":"256Mi"}},"securityContext":{},"service":{"nodePort":30081,"port":8081,"type":"NodePort"},"storage":{"data":{"accessMode":"ReadWriteOnce","class":"","size":"50Gi"}},"tolerations":[]}` | File Server configurations | +| fileserver | object | `{"affinity":{},"enabled":true,"extraEnvs":[],"image":{"pullPolicy":"IfNotPresent","repository":"allegroai/clearml","tag":"1.9.2-317"},"ingress":{"annotations":{},"enabled":false,"hostName":"files.clearml.127-0-0-1.nip.io","ingressClassName":"","path":"/","tlsSecretName":""},"nodeSelector":{},"podAnnotations":{},"replicaCount":1,"resources":{"limits":{"cpu":"2000m","memory":"1Gi"},"requests":{"cpu":"100m","memory":"256Mi"}},"securityContext":{},"service":{"nodePort":30081,"port":8081,"type":"NodePort"},"storage":{"data":{"accessMode":"ReadWriteOnce","class":"","existingPVC":"","size":"50Gi"}},"tolerations":[]}` | File Server configurations | | fileserver.affinity | object | `{}` | File Server affinity setup | | fileserver.enabled | bool | `true` | Enable/Disable component deployment | | fileserver.extraEnvs | list | `[]` | File Server extra envrinoment variables | @@ -242,9 +242,10 @@ Kubernetes: `>= 1.21.0-0 < 1.27.0-0` | fileserver.securityContext | object | `{}` | File Server pod security context | | fileserver.service | object | `{"nodePort":30081,"port":8081,"type":"NodePort"}` | File Server internal service configuration | | fileserver.service.nodePort | int | `30081` | If service.type set to NodePort, this will be set to service's nodePort field. If service.type is set to others, this field will be ignored | -| fileserver.storage | object | `{"data":{"accessMode":"ReadWriteOnce","class":"","size":"50Gi"}}` | File server persistence settings | +| fileserver.storage | object | `{"data":{"accessMode":"ReadWriteOnce","class":"","existingPVC":"","size":"50Gi"}}` | File server persistence settings | | fileserver.storage.data.accessMode | string | `"ReadWriteOnce"` | Access mode (must be ReadWriteMany if fileserver replica > 1) | | fileserver.storage.data.class | string | `""` | Storage class (use default if empty) | +| fileserver.storage.data.existingPVC | string | `""` | If set, it uses an already existing PVC instead of dynamic provisioning | | fileserver.tolerations | list | `[]` | File Server tolerations setup | | imageCredentials | object | `{"email":"someone@host.com","enabled":false,"existingSecret":"","password":"pwd","registry":"docker.io","username":"someone"}` | Container registry configuration | | imageCredentials.email | string | `"someone@host.com"` | Email | diff --git a/charts/clearml/templates/fileserver-deployment.yaml b/charts/clearml/templates/fileserver-deployment.yaml index b957b75..e378f58 100644 --- a/charts/clearml/templates/fileserver-deployment.yaml +++ b/charts/clearml/templates/fileserver-deployment.yaml @@ -28,9 +28,15 @@ spec: {{- end }} {{- end }} volumes: + {{- if .Values.fileserver.storage.data.existingPVC }} + - name: fileserver-data + persistentVolumeClaim: + claimName: {{ .Values.fileserver.storage.data.existingPVC | quote }} + {{- else }} - name: fileserver-data persistentVolumeClaim: claimName: {{ include "fileserver.referenceName" . }}-data + {{- end }} securityContext: {{ toYaml .Values.fileserver.podSecurityContext | nindent 8 }} initContainers: - name: init-fileserver diff --git a/charts/clearml/templates/fileserver-pvc.yaml b/charts/clearml/templates/fileserver-pvc.yaml index 63a9bd1..0e9d415 100644 --- a/charts/clearml/templates/fileserver-pvc.yaml +++ b/charts/clearml/templates/fileserver-pvc.yaml @@ -1,4 +1,5 @@ {{- if .Values.fileserver.enabled }} +{{- if not .Values.fileserver.storage.data.existingPVC }} kind: PersistentVolumeClaim apiVersion: v1 metadata: @@ -15,3 +16,4 @@ spec: storageClassName: {{ .Values.fileserver.storage.data.class | quote }} {{- end -}} {{- end }} +{{- end }} diff --git a/charts/clearml/values.yaml b/charts/clearml/values.yaml index c8a8627..b172a29 100644 --- a/charts/clearml/values.yaml +++ b/charts/clearml/values.yaml @@ -208,6 +208,8 @@ fileserver: # -- File server persistence settings storage: data: + # -- If set, it uses an already existing PVC instead of dynamic provisioning + existingPVC: "" # -- Storage class (use default if empty) class: "" # -- Access mode (must be ReadWriteMany if fileserver replica > 1)