feat(crd): scripts to help migrating to new CRDs (#73)

The CRDs have changed from being under openebs.io to zfs.openebs.io. 

The scripts in this commit and the following steps will help users migrate existing CRDs to new CRDs and clean up older CRDs. 

# upgrade to new CRD
1. apply the crd yaml
    `$ kubectl apply -f upgrade/crd.yaml`

2. run upgrade.sh
    `$ upgrade/upgrade.sh`

3. upgrade the driver to v0.6
    `$ kubectl apply -f https://github.com/openebs/zfs-localpv/blob/v0.6.x/deploy/zfs-operator.yaml`

4. if everything looks good run the cleanup.sh, it will clean old CRs and delete the CRD
    `$ upgrade/cleanup.sh`

Signed-off-by: Pawan <pawan@mayadata.io>
This commit is contained in:
Pawan Prakash Sharma 2020-04-01 13:53:13 +05:30 committed by GitHub
parent c4c2278d2f
commit 8a9ac43ab5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 124 additions and 0 deletions

28
upgrade/upgrade.sh Normal file
View file

@ -0,0 +1,28 @@
#!/bin/bash
set -e
# ZFSVolumes: create the new CR with apiVersion as zfs.openebs.io and kind as Volume
kubectl get zfsvolumes.openebs.io -n openebs -oyaml > volumes.yaml
# update the group name to zfs.openebs.io
sed -i "s/apiVersion: openebs.io/apiVersion: zfs.openebs.io/g" volumes.yaml
# create the new CR
kubectl apply -f volumes.yaml
rm volumes.yaml
# ZFSSnapshots: create the new CR with apiVersion as zfs.openebs.io and kind as Snapshot
kubectl get zfssnapshots.openebs.io -n openebs -oyaml > snapshots.yaml
# update the group name to zfs.openebs.io
sed -i "s/apiVersion: openebs.io/apiVersion: zfs.openebs.io/g" snapshots.yaml
# create the new CR
kubectl apply -f snapshots.yaml
rm snapshots.yaml