Make e2e compatible with Go 1.3 and OS X.

Go 1.4 added the -o flag to the "go test" command as well as support for
the TestMain() function, so we must work around these not existing in
Go 1.3.

The version of readlink on OS X does not have the -f flag - so we'll
just skip canonicalizing the path.
This commit is contained in:
Jeff Grafton
2015-05-18 12:11:33 -07:00
parent b79fae5d71
commit 35c4b92e92
3 changed files with 20 additions and 26 deletions

View File

@@ -361,10 +361,14 @@ kube::golang::build_binaries_for_platform() {
for test in "${tests[@]:+${tests[@]}}"; do
local outfile=$(kube::golang::output_filename_for_binary "${test}" \
"${platform}")
go test -c -o "${outfile}" \
# Go 1.4 added -o to control where the binary is saved, but Go 1.3 doesn't
# have this flag. Whenever we deprecate go 1.3, update to use -o instead of
# calling mv.
go test -c \
"${goflags[@]:+${goflags[@]}}" \
-ldflags "${version_ldflags}" \
"$(dirname ${test})"
mv -f "$(basename ${outfile})" "${outfile}"
done
}