From 9d499cd0057f1a9b94da67e07ac902c6bd64ca3a Mon Sep 17 00:00:00 2001 From: Katharine Berry Date: Thu, 30 Aug 2018 16:57:10 -0700 Subject: [PATCH] Be sure we delete the dummy tests. --- hack/lib/golang.sh | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/hack/lib/golang.sh b/hack/lib/golang.sh index 8d74afc047c..a691194c9a3 100755 --- a/hack/lib/golang.sh +++ b/hack/lib/golang.sh @@ -496,9 +496,10 @@ EOF # Argument: the name of a Kubernetes package (e.g. k8s.io/kubernetes/cmd/kube-scheduler). # Deletes a test generated by kube::golang::create_coverage_dummy_test. +# It is not an error to call this for a nonexistent test. kube::golang::delete_coverage_dummy_test() { local package="$1" - rm $(kube::golang::path_for_coverage_dummy_test "${package}") + rm -f $(kube::golang::path_for_coverage_dummy_test "${package}") } # Arguments: a list of kubernetes packages to build. @@ -515,14 +516,16 @@ kube::golang::build_some_binaries() { for package in "$@"; do if kube::golang::is_covered_binary "${package}"; then V=2 kube::log::info "Building ${package} with coverage..." + kube::golang::create_coverage_dummy_test "${package}" + kube::util::trap_add "kube::golang::delete_coverage_dummy_test \"${package}\"" EXIT + go test -c -o "$(kube::golang::outfile_for_binary "${package}" "${platform}")" \ -covermode count \ -coverpkg k8s.io/... \ "${build_args[@]}" \ -tags coverage \ "${package}" - kube::golang::delete_coverage_dummy_test "${package}" else uncovered+=("${package}") fi