From 9275f68f47748e6b7d887bd6475a7053aa66a5ab Mon Sep 17 00:00:00 2001 From: andyzhangx Date: Tue, 24 Aug 2021 13:21:36 +0000 Subject: [PATCH] feat: add base repo in chart fix script fix Makefile fix chart fix chart fix chart fix chart fix chart fix chart --- charts/README.md | 21 ++++++------- charts/latest/azuredisk-csi-driver-v1.7.0.tgz | Bin 12892 -> 13066 bytes .../templates/csi-azuredisk-controller.yaml | 28 ++++++++++++++++++ .../templates/csi-azuredisk-node-windows.yaml | 12 ++++++++ .../templates/csi-azuredisk-node.yaml | 12 ++++++++ .../templates/csi-snapshot-controller.yaml | 8 +++++ .../latest/azuredisk-csi-driver/values.yaml | 21 ++++++------- hack/verify-helm-chart.sh | 2 +- 8 files changed, 83 insertions(+), 21 deletions(-) diff --git a/charts/README.md b/charts/README.md index f8ee0f0b31..bf4e03bc36 100644 --- a/charts/README.md +++ b/charts/README.md @@ -64,22 +64,23 @@ The following table lists the configurable parameters of the latest Azure Disk C | `driver.userAgentSuffix` | userAgent suffix | `OSS-helm` | | `driver.volumeAttachLimit` | maximum number of attachable volumes per node maximum number is defined according to node instance type by default(`-1`) | `-1` | | `feature.enableFSGroupPolicy` | enable `fsGroupPolicy` on a k8s 1.20+ cluster | `false` | -| `image.azuredisk.repository` | azuredisk-csi-driver docker image | `mcr.microsoft.com/k8s/csi/azuredisk-csi` | +| `image.baseRepo` | base repository of driver images | `mcr.microsoft.com` | +| `image.azuredisk.repository` | azuredisk-csi-driver docker image | `/k8s/csi/azuredisk-csi` | | `image.azuredisk.tag` | azuredisk-csi-driver docker image tag | `latest` | | `image.azuredisk.pullPolicy` | azuredisk-csi-driver image pull policy | `IfNotPresent` | -| `image.csiProvisioner.repository` | csi-provisioner docker image | `mcr.microsoft.com/oss/kubernetes-csi/csi-provisioner` | +| `image.csiProvisioner.repository` | csi-provisioner docker image | `/oss/kubernetes-csi/csi-provisioner` | | `image.csiProvisioner.tag` | csi-provisioner docker image tag | `v1.5.0` | | `image.csiProvisioner.pullPolicy` | csi-provisioner image pull policy | `IfNotPresent` | -| `image.csiAttacher.repository` | csi-attacher docker image | `mcr.microsoft.com/oss/kubernetes-csi/csi-attacher` | +| `image.csiAttacher.repository` | csi-attacher docker image | `/oss/kubernetes-csi/csi-attacher` | | `image.csiAttacher.tag` | csi-attacher docker image tag | `v2.2.0` | | `image.csiAttacher.pullPolicy` | csi-attacher image pull policy | `IfNotPresent` | -| `image.csiResizer.repository` | csi-resizer docker image | `mcr.microsoft.com/oss/kubernetes-csi/csi-resizer` | +| `image.csiResizer.repository` | csi-resizer docker image | `/oss/kubernetes-csi/csi-resizer` | | `image.csiResizer.tag` | csi-resizer docker image tag | `v0.5.0` | | `image.csiResizer.pullPolicy` | csi-resizer image pull policy | `IfNotPresent` | -| `image.livenessProbe.repository` | liveness-probe docker image | `mcr.microsoft.com/oss/kubernetes-csi/livenessprobe` | +| `image.livenessProbe.repository` | liveness-probe docker image | `/oss/kubernetes-csi/livenessprobe` | | `image.livenessProbe.tag` | liveness-probe docker image tag | `v2.3.0` | | `image.livenessProbe.pullPolicy` | liveness-probe image pull policy | `IfNotPresent` | -| `image.nodeDriverRegistrar.repository` | csi-node-driver-registrar docker image | `mcr.microsoft.com/oss/kubernetes-csi/csi-node-driver-registrar` | +| `image.nodeDriverRegistrar.repository` | csi-node-driver-registrar docker image | `/oss/kubernetes-csi/csi-node-driver-registrar` | | `image.nodeDriverRegistrar.tag` | csi-node-driver-registrar docker image tag | `v2.2.0` | | `image.nodeDriverRegistrar.pullPolicy` | csi-node-driver-registrar image pull policy | `IfNotPresent` | | `imagePullSecrets` | Specify docker-registry secret names as an array | [] (does not add image pull secrets to deployed pods) | | @@ -107,10 +108,10 @@ The following table lists the configurable parameters of the latest Azure Disk C | `node.logLevel` | node driver log level |`5` | | `snapshot.apiVersion` | when using Snapshot, specify `ga` for K8s >= 1.20 | `beta` | | `snapshot.enabled` | whether enable snapshot feature | `false` | -| `snapshot.image.csiSnapshotter.repository` | csi-snapshotter docker image | `mcr.microsoft.com/oss/kubernetes-csi/csi-snapshotter` | +| `snapshot.image.csiSnapshotter.repository` | csi-snapshotter docker image | `/oss/kubernetes-csi/csi-snapshotter` | | `snapshot.image.csiSnapshotter.tag` | csi-snapshotter docker image tag | `v3.0.3` | | `snapshot.image.csiSnapshotter.pullPolicy` | csi-snapshotter image pull policy | `IfNotPresent` | -| `snapshot.image.csiSnapshotController.repository` | snapshot-controller docker image | `mcr.microsoft.com/oss/kubernetes-csi/snapshot-controller` | +| `snapshot.image.csiSnapshotController.repository` | snapshot-controller docker image | `/oss/kubernetes-csi/snapshot-controller` | | `snapshot.image.csiSnapshotController.tag` | snapshot-controller docker image tag | `v3.0.3` | | `snapshot.image.csiSnapshotController.pullPolicy` | snapshot-controller image pull policy | `IfNotPresent` | | `snapshot.snapshotController.name` | snapshot controller name | `csi-snapshot-controller` | @@ -124,10 +125,10 @@ The following table lists the configurable parameters of the latest Azure Disk C | `windows.enabled` | whether enable windows feature | `true` | | `windows.dsName` | name of driver daemonset on windows |`csi-azuredisk-node-win` | | `windows.kubelet` | configure kubelet directory path on Windows agent node | `'C:\var\lib\kubelet'` | -| `windows.image.livenessProbe.repository` | windows liveness-probe docker image | `mcr.microsoft.com/oss/kubernetes-csi/livenessprobe` | +| `windows.image.livenessProbe.repository` | windows liveness-probe docker image | `/oss/kubernetes-csi/livenessprobe` | | `windows.image.livenessProbe.tag` | windows liveness-probe docker image tag | `v2.3.0` | | `windows.image.livenessProbe.pullPolicy` | windows liveness-probe image pull policy | `IfNotPresent` | -| `windows.image.nodeDriverRegistrar.repository` | windows csi-node-driver-registrar docker image | `mcr.microsoft.com/oss/kubernetes-csi/csi-node-driver-registrar` | +| `windows.image.nodeDriverRegistrar.repository` | windows csi-node-driver-registrar docker image | `/oss/kubernetes-csi/csi-node-driver-registrar` | | `windows.image.nodeDriverRegistrar.tag` | windows csi-node-driver-registrar docker image tag | `v2.3.0` | | `windows.image.nodeDriverRegistrar.pullPolicy` | windows csi-node-driver-registrar image pull policy | `IfNotPresent` | | `windows.tolerations` | windows node driver tolerations | | diff --git a/charts/latest/azuredisk-csi-driver-v1.7.0.tgz b/charts/latest/azuredisk-csi-driver-v1.7.0.tgz index 1d61d3d579d40ba0284ebd78fe9681ec64c344ee..75f82905de8c8dba7242bdad805eee66c5748590 100644 GIT binary patch delta 12621 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