#!/usr/bin/env bash # # Run from files directory # #git clone https://github.com/linode/linode-blockstorage-csi-driver.git #mv linode{,.old} #mv linode-blockstorage-csi-driver/pkg/linode-bs/deploy/kubernetes linode #rm -fr linode-blockstorage-csi-driver linode.old # https://raw.githubusercontent.com/linode/linode-blockstorage-csi-driver/master/pkg/linode-bs/deploy/releases/linode-blockstorage-csi-driver-v0.1.4.yaml wget https://raw.githubusercontent.com/linode/linode-blockstorage-csi-driver/master/pkg/linode-bs/deploy/releases/linode-blockstorage-csi-driver.yaml kubernetes-split-yaml linode-blockstorage-csi-driver.yaml > generated.log mv files/linode{,.old} mv generated files/linode echo -e "---\nstorage_linode_files_list:" > vars/linode.yaml cat generated.log | while read LIGNE; do if [ $(echo "${LIGNE}" | grep -c ^File) -eq 1 ]; then echo -n "${LIGNE} "; else echo "${LIGNE}"; fi; done | grep ^File | sort -V | sed 's|.*\(generated/\)\(.*\.yaml\)| - "linode/\2"|' >> vars/linode.yaml sed -e /is-default-class/d -e /annotations/d -i files/linode/linode-block-storage-StorageClass.yaml sed -e /is-default-class/d -e /annotations/d -i files/linode/linode-block-storage-retain-StorageClass.yaml rm -fr files/linode.old generated.log linode-blockstorage-csi-driver.yaml DO_CSI_VERSION=2.0.0 mv files/digitalocean{,.old} mkdir files/digitalocean echo -e "---\nstorage_linode_files_list:" > vars/digitalocean.yaml for FICHIER in crds.yaml driver.yaml snapshot-controller.yaml; do wget https://github.com/digitalocean/csi-digitalocean/raw/master/deploy/kubernetes/releases/csi-digitalocean-v${DO_CSI_VERSION}/$FICHIER kubernetes-split-yaml $FICHIER >> generated.log mv generated/* files/digitalocean/ cat generated.log | while read LIGNE; do if [ $(echo "${LIGNE}" | grep -c ^File) -eq 1 ]; then echo -n "${LIGNE} "; else echo "${LIGNE}"; fi; done | grep ^File | sort -V | sed 's|.*\(generated/\)\(.*\.yaml\)| - "digitalocean/\2"|' >> vars/digitalocean.yaml rm -f $FICHIER generated.log done for i in do-block-storage-StorageClass.yaml do-block-storage-VolumeSnapshotClass.yaml; do sed -e /is-default-class/d -e /annotations/d -i files/digitalocean/"$i" done rm -fr files/digitalocean.old #https://github.com/scaleway/scaleway-csi #https://github.com/kubernetes-sigs/alibaba-cloud-csi-driver #https://github.com/hetznercloud/csi-driver #https://github.com/packethost/csi-packet #https://github.com/kubernetes-sigs/azuredisk-csi-driver #https://github.com/kubernetes-sigs/azurefile-csi-driver #https://github.com/TencentCloud/kubernetes-csi-tencentcloud #https://github.com/flant/yandex-csi-driver #https://github.com/ceph/ceph-csi #https://github.com/jparklab/synology-csi #https://github.com/woohhan/dropbox-csi #https://github.com/chr-fritz/csi-sshfs #https://github.com/ctrox/csi-s3 ? #https://github.com/wavezhang/k8s-csi-lvm ? #https://github.com/juicedata/juicefs-csi-driver ? SECRETS_STORE_FILE=vars/secrets_store_files_list.yml echo -e "---\nsecrets_store_files:" > "${SECRETS_STORE_FILE}" git clone https://github.com/kubernetes-sigs/secrets-store-csi-driver.git kubernetes-split-yaml secrets-store-csi-driver/deploy/rbac-secretproviderclass.yaml > generated.log kubernetes-split-yaml secrets-store-csi-driver/deploy/csidriver.yaml >> generated.log kubernetes-split-yaml secrets-store-csi-driver/deploy/secrets-store.csi.x-k8s.io_secretproviderclasses.yaml >> generated.log kubernetes-split-yaml secrets-store-csi-driver/deploy/secrets-store-csi-driver.yaml >> generated.log cat generated.log | while read LIGNE; do if [ $(echo "${LIGNE}" | grep -c ^File) -eq 1 ]; then echo -n "${LIGNE} "; else echo "${LIGNE}"; fi; done | grep ^File | sed 's|.*\(generated/\)\(.*\.yaml\)| - "secrets-store/\2"|' >> "${SECRETS_STORE_FILE}" mv files/secrets-store{,.old} mv generated files/secrets-store sed "/^metadata:$/a \ namespace: csi-secrets-store" -i files/secrets-store/csi-secrets-store-DaemonSet.yaml rm -fr files/secrets-store.old generated.log secrets-store-csi-driver curl -s -o files/secrets-store/provider-vault-installer.yaml https://raw.githubusercontent.com/hashicorp/secrets-store-csi-driver-provider-vault/master/deployment/provider-vault-installer.yaml sed "/^metadata:$/a \ namespace: csi-secrets-store" -i files/secrets-store/provider-vault-installer.yaml echo ' - "secrets-store/provider-vault-installer.yaml"' >> "${SECRETS_STORE_FILE}" #https://github.com/Azure/secrets-store-csi-driver-provider-azure #https://github.com/hashicorp/secrets-store-csi-driver-provider-vault