mirror of
https://github.com/TECHNOFAB11/zfs-localpv.git
synced 2025-12-12 06:20:11 +01:00
3.8 KiB
3.8 KiB
kubernetes and os setup examples
This documents contains several examples to show working setups for a development environment
tested on ubuntu 18.04.4 with minikube 1.9.2 and zfs 0.7 and 0.8
Prerequisites
- You have a zfs pool created on localhost, with pool name
zfspv-pool; that is you have installed zfs-dkms (or zfs-fuse), zfs-zed and zfsutils-linux .deb packages. And then created the pool withzpool createcommand - You have followed the prerequisites stated in Development Workflow
wget https://github.com/kubernetes/minikube/releases/download/v1.9.2/minikube_1.9.2-0_amd64.deb
sudo dpkg -i minikube_1.9.2-0_amd64.deb
sudo minikube start --driver=none
sudo chown -R $USER $HOME/.kube $HOME/.minikube
kubectl apply -f https://raw.githubusercontent.com/openebs/zfs-localpv/master/deploy/zfs-operator.yaml
kubectl get pods -n kube-system -l role=openebs-zfs
export OPENEBS_NAMESPACE=openebs
export KUBECONFIG=$HOME/.kube/config
cd ~/path/to/directory/openebs/zfs-localpv/tests
ginkgo -v
All the tests should pass now.
Example output of a successful integration test on development environment
Running Suite: Test ZFSPV volume provisioning
=============================================
Random Seed: 1586718777
Will run 1 of 1 specs
[zfspv] TEST VOLUME PROVISIONING App is deployed with zfs driver
Running zfs volume Creation Test
/home/filippo/go/src/github.com/openebs/zfs-localpv/tests/provision_test.go:25
STEP: Running dataset creation test
STEP: Creating zfs storage class
STEP: building a zfs storage class
STEP: creating and verifying PVC bound status
STEP: building a pvc
STEP: creating above pvc
STEP: verifying pvc status as bound
STEP: Creating and deploying app pod
STEP: creating and deploying app pod
STEP: building a busybox app pod deployment using above zfs volume
STEP: verifying app pod is running
STEP: verifying ZFSVolume object
STEP: fetching zfs volume
STEP: verifying zfs volume
STEP: Resizing the PVC
STEP: updating the pvc with new size
STEP: verifying pvc size to be updated
STEP: verifying ZFSVolume property change
STEP: verifying compression property update
STEP: fetching zfs volume for setting compression=on
STEP: fetching zfs volume for setting compression=off
STEP: verifying dedup property update
STEP: fetching zfs volume for setting dedup=on
STEP: fetching zfs volume for setting dedup=off
STEP: verifying recordsize property update
STEP: fetching zfs volume for setting the recordsize
STEP: Deleting application deployment
STEP: Deleting pvc
STEP: verifying deleted pvc
STEP: Deleting storage class
STEP: Running zvol creation test
STEP: Creating ext4 storage class
STEP: building a ext4 storage class
STEP: creating and verifying PVC bound status
STEP: building a pvc
STEP: creating above pvc
STEP: verifying pvc status as bound
STEP: verifying ZFSVolume object
STEP: fetching zfs volume
STEP: verifying zfs volume
STEP: verifying ZFSVolume property change
STEP: verifying compression property update
STEP: fetching zfs volume for setting compression=on
STEP: fetching zfs volume for setting compression=off
STEP: verifying dedup property update
STEP: fetching zfs volume for setting dedup=on
STEP: fetching zfs volume for setting dedup=off
STEP: verifying blocksize property update
STEP: fetching zfs volume for setting the blocksize
STEP: Deleting pvc
STEP: verifying deleted pvc
STEP: Deleting storage class
• [SLOW TEST:210.965 seconds]
[zfspv] TEST VOLUME PROVISIONING
/home/filippo/go/src/github.com/openebs/zfs-localpv/tests/provision_test.go:23
App is deployed with zfs driver
/home/filippo/go/src/github.com/openebs/zfs-localpv/tests/provision_test.go:24
Running zfs volume Creation Test
/home/filippo/go/src/github.com/openebs/zfs-localpv/tests/provision_test.go:25
------------------------------
Ran 1 of 1 Specs in 210.966 seconds
SUCCESS! -- 1 Passed | 0 Failed | 0 Pending | 0 Skipped
PASS