Developer¶
We welcome new contributors. Please read the code of conduct and the contributing guidelines.
Operator Development¶
The Operator which manages the SeldonDeployment CRD is contained within the /operator
folder. It is created using kubebuilder
For local development we use kind, create a kind cluster
kind create cluster
Install cert-manager
make install-cert-manager
To build and load the current controller image into the Kind cluster:
make kind-image-install
To install the Operator run:
make deploy
If you wish to install the Operator and prepare the controller to be run outside the cluster, for example inside an IDE (we use GoLand) then run the following. This has only been tested on a local Kind cluster:
make deploy-local
When the everything is running delete the seldon-controller-manager deployment from the seldon-system namespace as we will run locally.
Next, download the webhook certificate (created by cert-manager) locally:
make tls-extract
You can now run the manager locally. You will need to set the webhook-port on startup e.g.,
go run ./main.go --webhook-port=9000
If running inside an IDE and you are using Kind then make sure you set the KUBECONFIG env as well.