All following providers allow a common workflow:
make cluster-upto create the environmentmake cluster-downto stop the environmentmake cluster-buildto buildmake cluster-deployto (re)deploy the code (no provider support needed)make cluster-syncto build and (re)deploy the codemake functeststo run the functional tests against KubeVirtcluster-up/kubectl.shto talk to the k8s installation
It is recommended to export the KUBEVIRT_PROVIDER variable as part of your .bashrc
file.
Allows provisioning k8s cluster based on kubeadm. Supports an arbitrary amount of nodes.
Requires:
- A working go installation
- Nested virtualization enabled
- A running docker daemon
Usage:
export KUBEVIRT_PROVIDER=k8s-1.13.3 # choose this provider
export KUBEVIRT_NUM_NODES=3 # master + two nodes
make cluster-upAllows provisioning a single-master k8s cluster based on latest upstream k8s code.
Requires:
- A working go installation
- A running docker daemon
Usage:
export KUBEVIRT_PROVIDER=local # choose this provider
make cluster-upUses an existing (external) Kubernetes cluster.
Requires:
- A working Kubernetes cluster with properly configured worker nodes.
- A running docker daemon
Usage:
export KUBEVIRT_PROVIDER=external # choose this provider
make cluster-upFirst add your provider in the kubevirtci repository. After this provider is merged, update our copy of this repository with the following command:
make bump-kubevirtci