Split kfctl_go_test.py into separate python functions for building and deploying kubeflow #36
Description
Right now we have a single python file
https://github.com/kubeflow/kubeflow/blob/master/testing/kfctl/kfctl_go_test.py
That does two things
- Builds kfctl
- Deploys kfctl
We will probably want to split those into two separate python functions to make it more composable.
One use case for composability is to create an E2E test for upgradability (#35). In that E2E test we will want to build kfctl once but invoke kfctl twice; once to deploy and once to do the upgrade.
Another use case is to create E2E tests for other platforms configurations. For example we want an E2E test for installing Kubeflow on an existing cluster (kubeflow/kubeflow#3496).
In that case we need to provision a Kubernetes cluster before deploying Kubeflow; e.g. using kops.
Related to: #35 E2E test for kfctl upgrade
/cc @yanniszark @Jeffwan