Add initial docs for flake hunting.
Remove build dependency on `godep`

Instead of using `godep path`, we can simply set the GOPATH directly to
point to the Godeps/_workspace. We can still use `godep` to manage the
dependencies on the Godeps/ tree, but we don't need to have it available
for straight builds from git.

v2: Rebased and moved to inside kube::setup_go_environment() function.

Tested:
- Built it without godep in $PATH:
  $ hack/build-go.sh
- Ran unit tests without godep in $PATH:
  $ hack/test-go.sh
- Retested after rebase.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
Revert "change travis.yml to install godep"

This reverts commit 453c328fc9585a67f3524a84ce996f86a06ab80d.

Having `godep` installed is not necessarily for build & test, only to
manage the dependencies under the Godeps/ tree.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
Add plugin/ to build dir
Merge pull request #1050 from brendandburns/docs

Add initial docs for flake hunting.
s/install/get

"install" didn't work for me, but "get" did.
Fix `line 55: ldflags[*]: unbound variable`

This is caused by bash thinking that an empty array is the same as an
undefined variable and `set -o nounset` treating that as an error.

Fix that by using an empty string as the default for the expansion.

Fixes PR #1069 (6e25f602882196d22340a31fb05b24384e907d71).

Tested:
- Before this patch:
  $ mv .git .gitbackup
  $ hack/build-go.sh
  /home/filbranden/devel/kubernetes/hack/config-go.sh: line 55: ldflags[*]: unbound variable

- After this patch:
  $ mv .git .gitbackup
  $ rm -rf output/
  $ hack/build-go.sh
  $ output/go/bin/kubelet -version
  Kubernetes version 0.1+, build (unknown)

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
Merge pull request #1073 from filbranden/vagrant_empty_array1

Fix `line 55: ldflags[*]: unbound variable`
Merge pull request #1070 from bcwaldon/fix-make-binaries

Add plugin/ to build dir
Update for godep.
Document public KUBE_* environment variables and export them

Add a section for environment variables in config-go.sh. Document the
three public environment variables defined by this script. Make sure the
variables get exported so that they can be used by commands spawned by a
shell that sourced the config script.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
Use `cd` and `pwd` in a subshell to define ${KUBE_REPO_ROOT}

The old method (using `readlink`) was convoluted and not portable. We
can achieve the same result using only bash builtins.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
Do not leak undocumented variables from config-go.sh

Run the snippet that creates the output/go/ tree in a subshell.

Tested:
- Built it with hack/build-go.sh
- Ran release/build-release.sh successfully.
- Moved away the git tree to confirm no regression in PR #1073.
- Sourced hack/config-go.sh in the shell, confirmed no variable or
  function other than the expected ones leaked into the environment.
- Used `git grep` to confirm the no longer exported variables were
  not in use by any script other than config-go.sh.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
Merge pull request #1076 from filbranden/config_environment1

More config-go.sh cleanup
Merge pull request #1075 from jbeda/tweak-contrib

Update CONTRIBUTING.md for godep.
Add the ability to multiple test iterations without rebuilding.

Address comments.
Fix `which salt-master` warning in Vagrant startup

The `which` command in Fedora 20 (differently from the one in Debian)
prints to stderr when the binary is not found. Redirect both stdout and
stderr to /dev/null to prevent messages from being printed by `which`.

Check whether the binary exists or not by the exit status of `which`
(non-zero means the binary does not exist) instead of checking for empty
output.

Tested:
- Started a Vagrant cluster with `vagrant up` and confirmed these
  messages were gone. Checked master and minions for Kubernetes
  components using the systemd status commands.
- Confirmed that the same error message for salt-minion is also
  suppressed from the output with this patch.

Fixes: Issue #1079

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
Fix typos in pkg docs

Signed-off-by: Vojtech Vitek (V-Teq) <vvitek@redhat.com>
Incorrect validation error for container image
Delete all keys prior to running integration test