Skip to content

Commit

Permalink
Update argo instructions for test/README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Bobgy committed Aug 2, 2019
1 parent e8a6feb commit 9b95e29
Showing 1 changed file with 6 additions and 10 deletions.
16 changes: 6 additions & 10 deletions test/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,13 @@ This folder contains the integration/e2e tests for ML pipeline. We use Argo work
At a high level, a typical test workflow will

- build docker images for all components
- create a dedicate test namespace in the cluster
- create a dedicate test namespace in the cluster
- deploy ml pipeline using the newly built components
- run the test
- delete the namespace
- delete the images

All these steps will be taking place in the same Kubernetes cluster.
All these steps will be taking place in the same Kubernetes cluster.
You can use GKE to test against the code in a Github Branch. The image will be temporarily stored in the GCR repository in the same project.

Tests are run automatically on each commit in a Kubernetes cluster using
Expand All @@ -28,14 +28,10 @@ Here are the one-time steps to prepare for your GKE testing cluster:
- Follow the [main page](https://github.com/kubeflow/pipelines#setup-gke) to
create a GKE cluster.
- Install [Argo](https://github.com/argoproj/argo/blob/master/demo.md#argo-v20-getting-started)
in the cluster. If you have Argo CLI installed locally, just run
```
argo install
```
in the cluster.
- Create cluster role binding.
```
kubectl create clusterrolebinding default-as-admin
--clusterrole=cluster-admin --serviceaccount default:default
kubectl create clusterrolebinding default-as-admin --clusterrole=cluster-admin --serviceaccount=default:default
```
- Follow the
[guideline](https://developer.github.com/v3/guides/managing-deploy-keys/) to
Expand Down Expand Up @@ -64,7 +60,7 @@ The workflow will create a temporary namespace with the same name as the Argo
workflow. All the images will be stored in
**gcr.io/project_id/workflow_name/branch_name/***. By default when the test is
*finished, the namespace and images will be deleted.
However you can keep them by providing additional parameter.
However you can keep them by providing additional parameter.
```
argo submit integration_test_gke.yaml -p branch="my-branch" -p cleanup="false"
```
Expand All @@ -75,4 +71,4 @@ argo submit integration_test_gke.yaml -p branch="my-branch" -p cleanup="false"

The cluster downloads a bunch of images during the first time the test runs. It will be faster the second time since the images are cached.
The image building steps are running in parallel and usually takes 2~3 minutes in total. If you are experiencing high latency, it might due to the resource constrains
on your GKE cluster. In that case you need to deploy a larger cluster.
on your GKE cluster. In that case you need to deploy a larger cluster.

0 comments on commit 9b95e29

Please sign in to comment.