This component of kubetest2 is responsible for test cluster lifecycles for clusters deployed to GCE VMs.
The original design proposal has a great deal of detail about the motivations for the deployer and detailed evaluations of the original (kubetest) deployer it replaces.
Currently, the GCE deployer must be running on a system with a version of k/k or the cloud-provider-gcp repository cloned (necessary because of the reliance on scripts, see Implementation). A simple run without running tests looks as follows:
kubetest2 gce --gcp-project $TARGETPROJECT --repo-root $CLONEDREPOPATH --build --up --down
If targeting k/k instead of cloud-provider-gcp, you must add --legacy-mode
so the deployer knows how to build the code.
The deployer supports Boskos, so --gcp-project
can be skipped if there is an available Boskos instance running.
See the usage (--help
) for more options.
The deployer is essentially a Golang wrapper for kube-up.sh
and kube-down.sh
located here in k/k and here in cloud-provider-gcp. It replaces bash scripts located here. See the design proposal for a deeper explanation.