Currently, the the deployment workflow of an operator is:
- Build the image:
operator-sdk build $Image
- Push the image to a public registry:
docker push $Image
- Create the operator deployment:
kubectl create -f deploy/operator.yaml
- Then test out the operator image via
kubectl
Development cycle can be faster if we can avoid building/pushing the image. A workflow like the following maybe better (idea learned from kubebuilder):
- Build the operator binary
bin/operator that knows kubeconfig so that the client can access the kubernetes cluster that's associated with kubeconfig.
- Execute
./bin/operator
- Then test out the operator via
kubectl
The proposed approach saves developer time from building and pushing Image to a registry and operator deployment.
Action Items:
Currently, the the deployment workflow of an operator is:
operator-sdk build $Imagedocker push $Imagekubectl create -f deploy/operator.yamlkubectlDevelopment cycle can be faster if we can avoid building/pushing the image. A workflow like the following maybe better (idea learned from kubebuilder):
bin/operatorthat knows kubeconfig so that the client can access the kubernetes cluster that's associated with kubeconfig../bin/operatorkubectlThe proposed approach saves developer time from building and pushing Image to a registry and operator deployment.
Action Items:
operator-sdk upcommand ref: operator-sdk/cmd: add up command #219operator-sdk upref: doc: modify user_guide with watched namespace fixed #279