Skip to content

Latest commit

 

History

History
77 lines (56 loc) · 1.71 KB

contributor-guide.md

File metadata and controls

77 lines (56 loc) · 1.71 KB

Contributor Guide

Required Tools

Build and Run

Build descheduler.

cd $GOPATH/src/sigs.k8s.io
git clone https://github.com/kubernetes-sigs/descheduler.git
cd descheduler
make

Run descheduler.

./_output/bin/descheduler --client-connection-kubeconfig <path to kubeconfig> --policy-config-file <path-to-policy-file> --v 1

View all CLI options.

./_output/bin/descheduler --help

Run Tests

GOOS=linux make dev-image
make kind-multi-node
kind load docker-image <image name>
kind get kubeconfig > /tmp/admin.conf
export KUBECONFIG=/tmp/admin.conf
make test-unit
make test-e2e

Format Code

After making changes in the code base, ensure that the code is formatted correctly:

make fmt

Build Helm Package locally

If you made some changes in the chart, and just want to check if templating is ok, or if the chart is buildable, you can run this command to have a package built from the ./charts directory.

make build-helm

Lint Helm Chart locally

To check linting of your changes in the helm chart locally you can run:

make lint-chart

Test helm changes locally with kind and ct

You will need kind and docker (or equivalent) installed. We can use ct public image to avoid installing ct and all its dependencies.

make kind-multi-node
make ct-helm

Miscellaneous

See the hack directory for additional tools and scripts used for developing the descheduler.