This page explains you how to set up your development environment.
Before you start, install the following tools and packages:
- go (>= 1.13)
- golangci-lint
- kubectl (>= 1.14)
- kubebuilder (>= 2.0.0)
- docker
- Kubernetes distribution such as minikube or kind, or access to a hosted Kubernetes service such as GKE or AKS
git clone https://github.com/elastic/cloud-on-k8s.git
cd cloud-on-k8sRun make check-requisites to check that all dependencies are installed.
- Run
make dependenciesto download the Go libraries needed to compile the project. - Get a working development Kubernetes cluster. You can use:
-
make bootstrap-minikube
-
make bootstrap-kind
-
Cloud providers
Use deployer (note that some one time configuration is required):
- Deploy the operator.
make runto run the operator locally, ormake deployto deploy the operators into the configured k8s cluster.make samplesto apply a sample stack resource.
E2E tests will run in the e2e-mercury and e2e-venus namespaces.
Run make run to start the operator and then run make e2e-local in a separate shell to run the tests.