Skip to content

Latest commit

 

History

History
43 lines (30 loc) · 1.02 KB

HACKING.md

File metadata and controls

43 lines (30 loc) · 1.02 KB

Hacking

Development workflow

Often it's easiest to develop the operator locally connected to a remote cluster.

In this case, you might want to install with the development Kustomize profile which uses 0 replicas for the operator deployment by default. This makes it easy to iterate on the non-deployment manifests in conjunction with the operator binary itself.

Starting from clean management cluster, run the following to get started:

$ make build

$ make install PROFILE=development

$ make run-local

Or you might want to run your own image in the cluster to do integration testing, in which case you may want to use the default (production) profile and use kubectl set image (for example) to update the deployment.

Testing

To run the e2e tests, install HyperShift (using whatever profile you want) and then run:

$ make test-e2e

Visualizing dependencies

MacOS

brew install graphviz
go get golang.org/x/exp/cmd/modgraphviz
go mod graph | modgraphviz | dot -T pdf | open -a Preview.app -f