@@ -82,6 +82,46 @@ some bugs or smaller features. We have a [feature development
8282process] ( https://github.com/kubernetes/features/blob/master/README.md ) , but
8383navigating the Kubernetes system as a newcomer can be very challenging.
8484
85+ ### Downloading the project
86+
87+ There are a few ways you can download this code. You must download it into a
88+ GOPATH - see [ golang.org] ( https://golang.org/doc/code.html ) for more info on
89+ how Go works with code. This project expects to be found at the Go package
90+ ` k8s.io/kubernetes ` .
91+
92+ 1 . You can ` git clone ` the repo. If you do this, you MUST make sure it is in
93+ the GOPATH as ` k8s.io/kubernetes ` or it may not build. E.g.: `git clone
94+ https://github.com/kubernetes/kubernetes $GOPATH/src/k8s.io/kubernetes`
95+ 1 . You can use ` go get ` to fetch the repo. This will automatically put it into
96+ your GOPATH in the right place. E.g.: ` go get -d k8s.io/kubernetes `
97+ 1 . You can download an archive of the source. If you do this, you MUST make
98+ sure it is unpacked into the GOPATH as ` k8s.io/kubernetes ` or it may not
99+ build. See [ rel.k8s.io] ( http://rel.k8s.io ) for a list of available releases.
100+
101+ ### Building the project
102+
103+ There are a few things you need to build and test this project:
104+
105+ 1 . ` make ` - the human interface to the Kubernetes build is ` make ` , so you must
106+ have this tool installed on your machine. We try not to use too many crazy
107+ features of ` Makefile ` s and other tools, so most commonly available versions
108+ should work.
109+ 1 . ` docker ` - some parts of the build/test system depend on ` docker ` . You
110+ need a relatively recent version of Docker installed, and available to you.
111+ 1 . ` go ` - Kubernetes is written in Go (aka golang), so you need a relatively
112+ recent version of the [ Go toolchain] ( https://golang.org/dl/ ) installed.
113+ While Linux is the primary platform for Kubernetes, it should compile on a
114+ Mac, too. Windows is in progress.
115+
116+ To build Kubernetes, simply type ` make ` . This should figure out what it needs
117+ to do and not need any input from you. If you want to just build a subset of
118+ code, you can pass the ` WHAT ` variable to ` make ` : e.g. `make
119+ WHAT="cmd/kubelet"`.
120+
121+ To run basic tests, simply type ` make test ` . This will run all of the unit
122+ tests in the project. If you want to just test a subset of the project, you
123+ can pass the ` WHAT ` variable to ` make ` : e.g. ` make test WHAT=pkg/kubelet ` .
124+
85125### Protocols for Collaborative Development
86126
87127Please read [ this doc] ( docs/devel/collab.md ) for information on how we're
0 commit comments