github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/helm/templates/storageprovider/minio.yaml (about) 1 apiVersion: storage.kubeblocks.io/v1alpha1 2 kind: StorageProvider 3 metadata: 4 name: minio 5 labels: 6 {{- include "kubeblocks.labels" . | nindent 4 }} 7 spec: 8 csiDriverName: ru.yandex.s3.csi 9 csiDriverSecretTemplate: | 10 accessKeyID: {{ `{{ index .Parameters "accessKeyId" }}` }} 11 secretAccessKey: {{ `{{ index .Parameters "secretAccessKey" }}` }} 12 endpoint: {{ `{{ index .Parameters "endpoint" }}` }} 13 14 storageClassTemplate: | 15 provisioner: ru.yandex.s3.csi 16 parameters: 17 mounter: geesefs 18 # you can set mount options here, for example limit memory cache size (recommended) 19 options: {{ `{{ printf "--memory-limit 1000 --dir-mode 0777 --file-mode 0666 %s" (index .Parameters "mountOptions") }}` }} 20 bucket: {{ `{{ index .Parameters "bucket" }}` }} 21 csi.storage.k8s.io/provisioner-secret-name: {{ `{{ .CSIDriverSecretRef.Name }}` }} 22 csi.storage.k8s.io/provisioner-secret-namespace: {{ `{{ .CSIDriverSecretRef.Namespace }}` }} 23 csi.storage.k8s.io/controller-publish-secret-name: {{ `{{ .CSIDriverSecretRef.Name }}` }} 24 csi.storage.k8s.io/controller-publish-secret-namespace: {{ `{{ .CSIDriverSecretRef.Namespace }}` }} 25 csi.storage.k8s.io/node-stage-secret-name: {{ `{{ .CSIDriverSecretRef.Name }}` }} 26 csi.storage.k8s.io/node-stage-secret-namespace: {{ `{{ .CSIDriverSecretRef.Namespace }}` }} 27 csi.storage.k8s.io/node-publish-secret-name: {{ `{{ .CSIDriverSecretRef.Name }}` }} 28 csi.storage.k8s.io/node-publish-secret-namespace: {{ `{{ .CSIDriverSecretRef.Namespace }}` }} 29 30 datasafedConfigTemplate: | 31 [storage] 32 type = s3 33 provider = Minio 34 env_auth = false 35 access_key_id = {{ `{{ index .Parameters "accessKeyId" }}` }} 36 secret_access_key = {{ `{{ index .Parameters "secretAccessKey" }}` }} 37 endpoint = {{ `{{ index .Parameters "endpoint" }}` }} 38 root = {{ `{{ index .Parameters "bucket" }}` }} 39 chunk_size = 50Mi 40 41 parametersSchema: 42 openAPIV3Schema: 43 type: "object" 44 properties: 45 bucket: 46 type: string 47 description: "MinIO bucket" 48 endpoint: 49 type: string 50 description: "MinIO endpoint" 51 mountOptions: 52 type: string 53 description: "mount options for geesefs" 54 accessKeyId: 55 type: string 56 description: "MinIO access key" 57 secretAccessKey: 58 type: string 59 description: "MinIO secret key" 60 61 required: 62 - bucket 63 - endpoint 64 - accessKeyId 65 - secretAccessKey 66 67 credentialFields: 68 - accessKeyId 69 - secretAccessKey