This doc describes how to set up your development environment for Config Sync.
You must have the following tools:
The first step is to check out the code for Config Sync to your local development environment. We recommend that you create your own fork, but we will keep things simple here.
git clone [email protected]:GoogleContainerTools/kpt-config-sync.git
cd kpt-config-sync
Unit tests are small focused test that runs quickly. Run them with:
make test
Config Sync also has e2e tests. These run on kind and can take a long time to finish. Run them with:
make test-e2e-go-ephemeral-multi-repo
The project can be built from source with a single command:
make build-oss
This will build all the docker images needed for Config Sync and generate the manifests needed to run it. The images will by default be uploaded to Google Container Registry under your current gcloud project and the manifests will be created in .output/oss/manifests under the Config Sync directory.
Running Config Sync is as simple as applying the generated manifests to your cluster (from the Config Sync directory):
kubectl apply -f .output/oss/manifests
The following make target builds Config Sync and installs it into your cluster:
make run-oss