To develop on this project, please fork the repo and clone into your $GOPATH
.
Dependencies are not checked in so please download those seperately.
Download the dependencies using glide
.
cd $GOPATH/src/github.com # Create this directory if it doesn't exist
git clone git@github.com:<YOUR_FORK>/k8s-spot-rescheduler pusher/k8s-spot-rescheduler
cd $GOPATH/src/github.com/pusher/k8s-spot-recheduler
./configure # Configure local tooling - install anything reported as missing
make vendor # Clone required project dependencies
The main package is within rescheduler.go
and an overview of it's operating logic is described in the Readme.
If you want to run the rescheduler locally you must have a valid kubeconfig
file somewhere on your machine and then run the program with the flag --running-in-cluster=false
.
We track bugs and issues using Github .
If you find a bug, please open an Issue.
If you want to fix a bug, please fork, fix the bug and open a PR back to this repo. Please mention the open bug issue number within your PR if applicable.
Unit tests are covering the decision making parts of this code and can be run using the built in Go test suite.
To run the tests: make test