From bc5547b3039eb97390eb69f1e5ecddf80d4872aa Mon Sep 17 00:00:00 2001 From: Lucas Machado Date: Fri, 15 Mar 2024 14:47:36 -0300 Subject: [PATCH] [dev-v2.9] Forward ports harvester-csi-driver 102.0.2+up0.1.17 from release-v2.7 (#3647) --- .../harvester-csi-driver-102.0.2+up0.1.17.tgz | Bin 0 -> 3764 bytes .../102.0.2+up0.1.17/.helmignore | 23 +++ .../102.0.2+up0.1.17/Chart.yaml | 22 +++ .../102.0.2+up0.1.17/questions.yml | 11 ++ .../102.0.2+up0.1.17/templates/NOTES.txt | 1 + .../102.0.2+up0.1.17/templates/_helpers.tpl | 62 ++++++++ .../102.0.2+up0.1.17/templates/csidriver.yaml | 10 ++ .../102.0.2+up0.1.17/templates/daemonset.yaml | 149 ++++++++++++++++++ .../templates/deployment.yaml | 95 +++++++++++ .../102.0.2+up0.1.17/templates/rbac.yaml | 75 +++++++++ .../templates/storageclass.yaml | 10 ++ .../102.0.2+up0.1.17/values.yaml | 54 +++++++ index.yaml | 26 +++ release.yaml | 1 + 14 files changed, 539 insertions(+) create mode 100644 assets/harvester-csi-driver/harvester-csi-driver-102.0.2+up0.1.17.tgz create mode 100644 charts/harvester-csi-driver/102.0.2+up0.1.17/.helmignore create mode 100644 charts/harvester-csi-driver/102.0.2+up0.1.17/Chart.yaml create mode 100644 charts/harvester-csi-driver/102.0.2+up0.1.17/questions.yml create mode 100644 charts/harvester-csi-driver/102.0.2+up0.1.17/templates/NOTES.txt create mode 100644 charts/harvester-csi-driver/102.0.2+up0.1.17/templates/_helpers.tpl create mode 100644 charts/harvester-csi-driver/102.0.2+up0.1.17/templates/csidriver.yaml create mode 100644 charts/harvester-csi-driver/102.0.2+up0.1.17/templates/daemonset.yaml create mode 100644 charts/harvester-csi-driver/102.0.2+up0.1.17/templates/deployment.yaml create mode 100644 charts/harvester-csi-driver/102.0.2+up0.1.17/templates/rbac.yaml create mode 100644 charts/harvester-csi-driver/102.0.2+up0.1.17/templates/storageclass.yaml create mode 100644 charts/harvester-csi-driver/102.0.2+up0.1.17/values.yaml diff --git a/assets/harvester-csi-driver/harvester-csi-driver-102.0.2+up0.1.17.tgz b/assets/harvester-csi-driver/harvester-csi-driver-102.0.2+up0.1.17.tgz new file mode 100644 index 0000000000000000000000000000000000000000..0c47c03ba2ba67cf800850970cb25b3f9fe750f3 GIT binary patch literal 3764 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 literal 0 HcmV?d00001 diff --git a/charts/harvester-csi-driver/102.0.2+up0.1.17/.helmignore b/charts/harvester-csi-driver/102.0.2+up0.1.17/.helmignore new file mode 100644 index 000000000..0e8a0eb36 --- /dev/null +++ b/charts/harvester-csi-driver/102.0.2+up0.1.17/.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/harvester-csi-driver/102.0.2+up0.1.17/Chart.yaml b/charts/harvester-csi-driver/102.0.2+up0.1.17/Chart.yaml new file mode 100644 index 000000000..72be3e82a --- /dev/null +++ b/charts/harvester-csi-driver/102.0.2+up0.1.17/Chart.yaml @@ -0,0 +1,22 @@ +annotations: + catalog.cattle.io/certified: rancher + catalog.cattle.io/display-name: Harvester CSI Driver + catalog.cattle.io/kube-version: '>= 1.23.0-0 < 1.28.0-0' + catalog.cattle.io/namespace: kube-system + catalog.cattle.io/os: linux + catalog.cattle.io/permits-os: linux + catalog.cattle.io/rancher-version: '>= 2.7.0-0 < 2.8.0-0' + catalog.cattle.io/release-name: harvester-csi-driver + catalog.cattle.io/ui-component: harvester-csi-driver + catalog.cattle.io/upstream-version: 0.1.17 +apiVersion: v2 +appVersion: v0.1.6 +description: A Helm chart for Harvester CSI driver +keywords: +- infrastructure +- harvester +maintainers: +- name: harvester +name: harvester-csi-driver +type: application +version: 102.0.2+up0.1.17 diff --git a/charts/harvester-csi-driver/102.0.2+up0.1.17/questions.yml b/charts/harvester-csi-driver/102.0.2+up0.1.17/questions.yml new file mode 100644 index 000000000..0c703a0f2 --- /dev/null +++ b/charts/harvester-csi-driver/102.0.2+up0.1.17/questions.yml @@ -0,0 +1,11 @@ +categories: +- infrastructure +- harvester +namespace: kube-system +questions: +- variable: cloudConfig.hostPath + label: Cloud config file path + description: "Specify the path of the cloud config." + group: "Default" + type: string + default: "/etc/kubernetes/cloud-config" diff --git a/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/NOTES.txt b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/NOTES.txt new file mode 100644 index 000000000..ba09c6d51 --- /dev/null +++ b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/NOTES.txt @@ -0,0 +1 @@ +Successfully deployed Harvester CSI driver to the {{ .Release.Namespace }} namespace. diff --git a/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/_helpers.tpl b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/_helpers.tpl new file mode 100644 index 000000000..def471b21 --- /dev/null +++ b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/_helpers.tpl @@ -0,0 +1,62 @@ +{{/* vim: set filetype=mustache: */}} +{{/* +Expand the name of the chart. +*/}} +{{- define "harvester-csi-driver.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "harvester-csi-driver.fullname" -}} +{{- if .Values.fullnameOverride }} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- $name := default .Chart.Name .Values.nameOverride }} +{{- if contains $name .Release.Name }} +{{- .Release.Name | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} +{{- end }} +{{- end }} +{{- end }} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "harvester-csi-driver.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "harvester-csi-driver.labels" -}} +helm.sh/chart: {{ include "harvester-csi-driver.chart" . }} +{{ include "harvester-csi-driver.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "harvester-csi-driver.selectorLabels" -}} +app.kubernetes.io/name: {{ include "harvester-csi-driver.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + +{{/* +Global system default registry +*/}} +{{- define "system_default_registry" -}} +{{- if .Values.global.cattle.systemDefaultRegistry -}} +{{- printf "%s/" .Values.global.cattle.systemDefaultRegistry -}} +{{- else -}} +{{- "" -}} +{{- end -}} +{{- end -}} diff --git a/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/csidriver.yaml b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/csidriver.yaml new file mode 100644 index 000000000..5fc6ec84a --- /dev/null +++ b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/csidriver.yaml @@ -0,0 +1,10 @@ +apiVersion: storage.k8s.io/v1 +kind: CSIDriver +metadata: + name: driver.harvesterhci.io +spec: + attachRequired: true + fsGroupPolicy: ReadWriteOnceWithFSType + podInfoOnMount: true + volumeLifecycleModes: + - Persistent diff --git a/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/daemonset.yaml b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/daemonset.yaml new file mode 100644 index 000000000..e995ee65b --- /dev/null +++ b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/daemonset.yaml @@ -0,0 +1,149 @@ +apiVersion: apps/v1 +kind: DaemonSet +metadata: + name: {{ include "harvester-csi-driver.name" . }} + namespace: {{ .Release.Namespace }} + labels: + {{- include "harvester-csi-driver.labels" . | nindent 4 }} +spec: + selector: + matchLabels: + component: csi-driver + {{- include "harvester-csi-driver.selectorLabels" . | nindent 6 }} + template: + metadata: + labels: + component: csi-driver + {{- include "harvester-csi-driver.selectorLabels" . | nindent 8 }} + spec: + containers: + - args: + - --v=5 + - --csi-address=$(ADDRESS) + - --kubelet-registration-path={{ .Values.kubeletRootDir }}/harvester-plugins/driver.harvesterhci.io/csi.sock + env: + - name: ADDRESS + value: /csi/csi.sock + image: {{ template "system_default_registry" . }}{{ .Values.image.csi.nodeDriverRegistrar.repository }}:{{ .Values.image.csi.nodeDriverRegistrar.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + lifecycle: + preStop: + exec: + command: + - /bin/sh + - -c + - rm -rf /registration/driver.harvesterhci.io-reg.sock + /csi//* + name: node-driver-registrar + securityContext: + privileged: true + volumeMounts: + - mountPath: /csi/ + name: socket-dir + - mountPath: /registration + name: registration-dir + - args: + - --nodeid=$(NODE_ID) + - --endpoint=$(CSI_ENDPOINT) + - --kubeconfig=/var/lib/harvester/cloud-provider-config + env: + - name: NODE_ID + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: spec.nodeName + - name: CSI_ENDPOINT + value: unix:///csi/csi.sock + image: {{ template "system_default_registry" . }}{{ .Values.image.harvester.csiDriver.repository }}:{{ .Values.image.harvester.csiDriver.tag | default .Chart.AppVersion }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + lifecycle: + preStop: + exec: + command: + - /bin/sh + - -c + - rm -f /csi//* + name: harvester-csi-driver + securityContext: + allowPrivilegeEscalation: true + capabilities: + add: + - SYS_ADMIN + privileged: true + volumeMounts: + - name: cloud-config + readOnly: true + mountPath: /var/lib/harvester + - name: kubernetes + readOnly: true + mountPath: /etc/kubernetes + - mountPath: {{ .Values.kubeletRootDir }}/plugins/kubernetes.io/csi + mountPropagation: Bidirectional + name: kubernetes-csi-dir + - mountPath: /csi/ + name: socket-dir + - mountPath: {{ .Values.kubeletRootDir }}/pods + mountPropagation: Bidirectional + name: pods-mount-dir + - mountPath: /dev + name: host-dev + - mountPath: /sys + name: host-sys + - mountPath: /rootfs + mountPropagation: Bidirectional + name: host + - mountPath: /lib/modules + name: lib-modules + readOnly: true + hostPID: true + serviceAccountName: {{ include "harvester-csi-driver.name" . }} + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} + volumes: + - name: cloud-config + {{- if .Values.cloudConfig.secretName }} + secret: + secretName: {{ .Values.cloudConfig.secretName }} + {{- else }} + hostPath: + path: {{ .Values.cloudConfig.hostPath }} + type: DirectoryOrCreate + {{- end }} + - hostPath: + path: /etc/kubernetes + type: DirectoryOrCreate + name: kubernetes + - hostPath: + path: {{ .Values.kubeletRootDir }}/plugins/kubernetes.io/csi + type: DirectoryOrCreate + name: kubernetes-csi-dir + - hostPath: + path: {{ .Values.kubeletRootDir }}/plugins_registry + type: Directory + name: registration-dir + - hostPath: + path: {{ .Values.kubeletRootDir }}/harvester-plugins/driver.harvesterhci.io + type: DirectoryOrCreate + name: socket-dir + - hostPath: + path: {{ .Values.kubeletRootDir }}/pods + type: DirectoryOrCreate + name: pods-mount-dir + - hostPath: + path: /dev + name: host-dev + - hostPath: + path: /sys + name: host-sys + - hostPath: + path: / + name: host + - hostPath: + path: /lib/modules + name: lib-modules diff --git a/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/deployment.yaml b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/deployment.yaml new file mode 100644 index 000000000..bb511dfa7 --- /dev/null +++ b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/deployment.yaml @@ -0,0 +1,95 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "harvester-csi-driver.name" . }}-controllers + namespace: {{ .Release.Namespace }} + labels: + {{- include "harvester-csi-driver.labels" . | nindent 4 }} +spec: + replicas: {{ .Values.replicasCount }} + selector: + matchLabels: + component: csi-controllers + {{- include "harvester-csi-driver.selectorLabels" . | nindent 6 }} + template: + metadata: + labels: + component: csi-controllers + {{- include "harvester-csi-driver.selectorLabels" . | nindent 8 }} + spec: + containers: + - args: + - --v=5 + - --csi-address=$(ADDRESS) + - --timeout=1m50s + - --leader-election + - --leader-election-namespace=$(POD_NAMESPACE) + env: + - name: ADDRESS + value: /csi/csi.sock + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + image: {{ template "system_default_registry" . }}{{ .Values.image.csi.resizer.repository }}:{{ .Values.image.csi.resizer.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: csi-resizer + volumeMounts: + - mountPath: /csi/ + name: socket-dir + - args: + - --v=5 + - --csi-address=$(ADDRESS) + - --timeout=1m50s + - --leader-election + - --leader-election-namespace=$(POD_NAMESPACE) + - --default-fstype=ext4 + env: + - name: ADDRESS + value: /csi/csi.sock + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + image: {{ template "system_default_registry" . }}{{ .Values.image.csi.provisioner.repository }}:{{ .Values.image.csi.provisioner.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: csi-provisioner + volumeMounts: + - mountPath: /csi/ + name: socket-dir + - args: + - --v=5 + - --csi-address=$(ADDRESS) + - --timeout=1m50s + - --leader-election + - --leader-election-namespace=$(POD_NAMESPACE) + env: + - name: ADDRESS + value: /csi/csi.sock + - name: POD_NAMESPACE + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: metadata.namespace + image: {{ template "system_default_registry" . }}{{ .Values.image.csi.attacher.repository }}:{{ .Values.image.csi.attacher.tag }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + name: csi-attacher + volumeMounts: + - mountPath: /csi/ + name: socket-dir + serviceAccountName: {{ include "harvester-csi-driver.name" . }} + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} + volumes: + - hostPath: + path: {{ .Values.kubeletRootDir }}/harvester-plugins/driver.harvesterhci.io + type: DirectoryOrCreate + name: socket-dir diff --git a/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/rbac.yaml b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/rbac.yaml new file mode 100644 index 000000000..2ba042a26 --- /dev/null +++ b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/rbac.yaml @@ -0,0 +1,75 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "harvester-csi-driver.name" . }} + namespace: {{ .Release.Namespace }} + labels: + {{- include "harvester-csi-driver.labels" . | nindent 4 }} +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: {{ include "harvester-csi-driver.name" . }} + labels: + {{- include "harvester-csi-driver.labels" . | nindent 4 }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: {{ include "harvester-csi-driver.name" . }} +subjects: + - kind: ServiceAccount + name: {{ include "harvester-csi-driver.name" . }} + namespace: {{ .Release.Namespace }} +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: {{ include "harvester-csi-driver.name" . }} + labels: + {{- include "harvester-csi-driver.labels" . | nindent 4 }} +rules: + - apiGroups: [ "coordination.k8s.io" ] + resources: [ "leases" ] + verbs: [ "get", "watch", "list", "delete", "update", "create" ] + - apiGroups: [ "storage.k8s.io" ] + resources: [ "csistoragecapacities" ] + verbs: [ "get", "list", "watch", "create", "update", "patch", "delete" ] + - apiGroups: [""] + resources: ["persistentvolumes"] + verbs: [ "get", "list", "watch", "create","update", "patch", "delete" ] + - apiGroups: [""] + resources: ["persistentvolumeclaims"] + verbs: ["get", "list", "watch", "create","update", "patch", "delete" ] + - apiGroups: [""] + resources: ["persistentvolumeclaims/status"] + verbs: ["patch"] + - apiGroups: ["storage.k8s.io"] + resources: ["storageclasses"] + verbs: ["get", "list", "watch"] + - apiGroups: ["snapshot.storage.k8s.io"] + resources: ["volumesnapshots"] + verbs: ["get", "list"] + - apiGroups: ["snapshot.storage.k8s.io"] + resources: ["volumesnapshotcontents"] + verbs: ["get", "list"] + - apiGroups: [ "storage.k8s.io" ] + resources: [ "csinodes" ] + verbs: [ "get", "list", "watch" ] + - apiGroups: [ "" ] + resources: [ "events" ] + verbs: [ "list", "watch", "create", "update", "patch" ] + - apiGroups: [ "" ] + resources: [ "pods" ] + verbs: [ "get", "list", "watch" ] + - apiGroups: [ "apps" ] + resources: [ "replicasets" ] + verbs: [ "get" ] + - apiGroups: [""] + resources: ["nodes"] + verbs: ["get", "list", "watch"] + - apiGroups: ["storage.k8s.io"] + resources: ["volumeattachments"] + verbs: ["get", "list", "watch", "patch"] + - apiGroups: [ "storage.k8s.io" ] + resources: [ "volumeattachments/status" ] + verbs: [ "patch" ] diff --git a/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/storageclass.yaml b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/storageclass.yaml new file mode 100644 index 000000000..a29c9c7da --- /dev/null +++ b/charts/harvester-csi-driver/102.0.2+up0.1.17/templates/storageclass.yaml @@ -0,0 +1,10 @@ +apiVersion: storage.k8s.io/v1 +kind: StorageClass +metadata: + name: harvester + annotations: + storageclass.kubernetes.io/is-default-class: "true" +allowVolumeExpansion: true +provisioner: driver.harvesterhci.io +reclaimPolicy: Delete +volumeBindingMode: Immediate diff --git a/charts/harvester-csi-driver/102.0.2+up0.1.17/values.yaml b/charts/harvester-csi-driver/102.0.2+up0.1.17/values.yaml new file mode 100644 index 000000000..aadeb7663 --- /dev/null +++ b/charts/harvester-csi-driver/102.0.2+up0.1.17/values.yaml @@ -0,0 +1,54 @@ +# Default values for harvester-csi-driver. + +replicasCount: 3 + +image: + harvester: + csiDriver: + repository: rancher/harvester-csi-driver + # Overrides the image tag whose default is the chart appVersion. + tag: "v0.1.5" + csi: + nodeDriverRegistrar: + repository: rancher/mirrored-longhornio-csi-node-driver-registrar + tag: v2.3.0 + resizer: + repository: rancher/mirrored-longhornio-csi-resizer + tag: v1.2.0 + provisioner: + repository: rancher/mirrored-longhornio-csi-provisioner + tag: v2.1.2 + attacher: + repository: rancher/mirrored-longhornio-csi-attacher + tag: v3.2.1 + pullPolicy: IfNotPresent + +nameOverride: "" +fullnameOverride: "" + +kubeletRootDir: /var/lib/kubelet +cloudConfig: + secretName: "" + hostPath: "/var/lib/rancher/rke2/etc/config-files/" + +nodeSelector: + kubernetes.io/os: linux + +tolerations: + - effect: NoSchedule + key: kubevirt.io/drain + operator: Exists + - effect: NoSchedule + key: node-role.kubernetes.io/control-plane + operator: Equal + - effect: NoExecute + key: node-role.kubernetes.io/etcd + operator: Equal + - key: cattle.io/os + operator: Equal + value: "linux" + effect: NoSchedule + +global: + cattle: + systemDefaultRegistry: "" diff --git a/index.yaml b/index.yaml index cb5655687..0f2f63435 100755 --- a/index.yaml +++ b/index.yaml @@ -2579,6 +2579,32 @@ entries: urls: - assets/harvester-csi-driver/harvester-csi-driver-103.0.0+up0.1.16.tgz version: 103.0.0+up0.1.16 + - annotations: + catalog.cattle.io/certified: rancher + catalog.cattle.io/display-name: Harvester CSI Driver + catalog.cattle.io/kube-version: '>= 1.23.0-0 < 1.28.0-0' + catalog.cattle.io/namespace: kube-system + catalog.cattle.io/os: linux + catalog.cattle.io/permits-os: linux + catalog.cattle.io/rancher-version: '>= 2.7.0-0 < 2.8.0-0' + catalog.cattle.io/release-name: harvester-csi-driver + catalog.cattle.io/ui-component: harvester-csi-driver + catalog.cattle.io/upstream-version: 0.1.17 + apiVersion: v2 + appVersion: v0.1.6 + created: "2024-03-14T17:59:53.012351-03:00" + description: A Helm chart for Harvester CSI driver + digest: 7e6926c85f4c8e8123e550dd178e29f9573afecbe65a8f4e5824bc2e7a0c5c82 + keywords: + - infrastructure + - harvester + maintainers: + - name: harvester + name: harvester-csi-driver + type: application + urls: + - assets/harvester-csi-driver/harvester-csi-driver-102.0.2+up0.1.17.tgz + version: 102.0.2+up0.1.17 - annotations: catalog.cattle.io/certified: rancher catalog.cattle.io/display-name: Harvester CSI Driver diff --git a/release.yaml b/release.yaml index 65f4f6640..0cee4c161 100644 --- a/release.yaml +++ b/release.yaml @@ -128,6 +128,7 @@ ui-plugin-operator-crd: - 102.0.3+up0.2.1 harvester-csi-driver: - 104.0.0+up0.1.17 + - 102.0.2+up0.1.17 sriov: - 102.2.0+up0.1.0 sriov-crd: