k3s/release
Filipe Brandenburger bf9113ea2e Grab complete version information from git
This replaces the gitcommit() shell function with kube::version_ldflags()
which prepares a string suitable for Go's -ldflags parameter that fills
in the git version fields in pkg/version/base.go.

The gitCommit is now a full 40-character SHA1, the gitVersion will be
filled from `git describe` output (which will only be available once we
have annotated git tags) and gitTreeState will be filled with either
"clean" or "dirty" depending on the tree status at the time of the
build.

Use a kube:: "namespace" (there's really no such a thing in shell, but
the illusion still makes it nice) in order to make this nice to import
into existing shell scripts or on a shell session. (In the future, I'm
planning to introduce more functions and convert some of the top-level
commands into other kube::* shell functions.)

There's a difference now that -version will report a full SHA1, this
will be improved in a follow up change which will improve the Go code
for -version handling to give a more meaningful string that should be
enough to identify the origin of the binary in git.

Tested:
- Built it and checked output of -version:
  $ hack/build-go.sh
  $ output/go/bin/kubelet -version
  Kubernetes version 0.1+, build 3ff7ee4b8c843c7767cd856fbf7d3027cd5410e6

- Ran the release script and checked output of the common.sls file:
  $ release/build-release.sh TESTINSTANCE
  $ cat output/release/master-release/src/saltbase/pillar/common.sls
  instance_prefix: TESTINSTANCE-minion
  go_opt: -ldflags '-X github.com/GoogleCloudPlatform/kubernetes/pkg/version.gitCommit 3ff7ee4b8c843c7767cd856fbf7d3027cd5410e6 -X github.com/GoogleCloudPlatform/kubernetes/pkg/version.gitTreeState clean'

- Successful run of hack/e2e-test.sh end-to-end tests.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-08-27 17:36:04 -07:00
..
azure Refactor Azure deploy scripts. 2014-08-22 15:48:06 -07:00
build-release.sh Grab complete version information from git 2014-08-27 17:36:04 -07:00
config.sh Silence some noise. 2014-07-10 14:21:23 -07:00
launch-kubernetes-base.sh Switch from `gcloud compute` to `gcutil`. 2014-06-12 15:43:00 -07:00
make-public-gcs-acl.py Move everything out of src and reorganize scripts. 2014-06-06 21:41:19 -07:00
master-release-install.sh add salt files to make scheduler run 2014-08-20 15:32:49 -07:00
release.sh Solve issue with realpath on Mac OS X. 2014-07-26 18:15:44 -07:00