From aade7b93eea9eaef8eb5f6b590a18b801b60827f Mon Sep 17 00:00:00 2001 From: Casey Callendrello Date: Thu, 12 Apr 2018 14:01:10 +0200 Subject: [PATCH] build: some small improvements; bump to go1.10 - bump to go 1.10 - Add a linker tag with the build version - Remove fastbuild, go builds are cached now - Use better ginkgo suite names --- .gitignore | 2 ++ build.sh | 12 +++--------- integration/integration_suite_test.go | 2 +- pkg/ip/ip_suite_test.go | 2 +- pkg/ipam/ipam_suite_test.go | 2 +- pkg/ns/ns_suite_test.go | 2 +- pkg/testutils/echosvr/init_test.go | 2 +- pkg/utils/hwaddr/hwaddr_suite_test.go | 2 +- pkg/utils/utils_suite_test.go | 2 +- plugins/ipam/dhcp/dhcp_suite_test.go | 2 +- .../backend/allocator/allocator_suite_test.go | 2 +- .../ipam/host-local/backend/disk/disk_suite_test.go | 2 +- plugins/ipam/host-local/host_local_suite_test.go | 2 +- plugins/main/bridge/bridge_suite_test.go | 2 +- plugins/main/host-device/host-device_suite_test.go | 2 +- plugins/main/ipvlan/ipvlan_suite_test.go | 2 +- plugins/main/loopback/loopback_suite_test.go | 2 +- plugins/main/macvlan/macvlan_suite_test.go | 2 +- plugins/main/ptp/ptp_suite_test.go | 2 +- plugins/main/vlan/vlan_suite_test.go | 2 +- plugins/meta/bandwidth/bandwidth_suite_test.go | 2 +- plugins/meta/flannel/flannel_suite_test.go | 2 +- plugins/meta/portmap/portmap_suite_test.go | 2 +- plugins/meta/tuning/tuning_suite_test.go | 2 +- plugins/sample/sample_suite_test.go | 2 +- scripts/release.sh | 10 ++++------ test.sh | 11 +++-------- 27 files changed, 35 insertions(+), 46 deletions(-) diff --git a/.gitignore b/.gitignore index b72c2de0..b3364116 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,5 @@ _testmain.go bin/ gopath/ .vagrant + +/release-* diff --git a/build.sh b/build.sh index 69c97f7b..f55eb117 100755 --- a/build.sh +++ b/build.sh @@ -1,8 +1,9 @@ #!/usr/bin/env bash set -e +cd $(dirname "$0") if [ "$(uname)" == "Darwin" ]; then - export GOOS=linux + export GOOS="${GOOS:-linux}" fi ORG_PATH="github.com/containernetworking" @@ -13,7 +14,6 @@ if [ ! -h gopath/src/${REPO_PATH} ]; then ln -s ../../../.. gopath/src/${REPO_PATH} || exit 255 fi -export GO15VENDOREXPERIMENT=1 export GOPATH=${PWD}/gopath export GO="${GO:-go}" @@ -25,12 +25,6 @@ for d in $PLUGINS; do if [ -d "$d" ]; then plugin="$(basename "$d")" echo " $plugin" - # use go install so we don't duplicate work - if [ -n "$FASTBUILD" ] - then - GOBIN=${PWD}/bin $GO install -pkgdir $GOPATH/pkg "$@" $REPO_PATH/$d - else - $GO build -o "${PWD}/bin/$plugin" -pkgdir "$GOPATH/pkg" "$@" "$REPO_PATH/$d" - fi + $GO build -o "${PWD}/bin/$plugin" "$@" "$REPO_PATH"/$d fi done diff --git a/integration/integration_suite_test.go b/integration/integration_suite_test.go index d30ea5b3..4cff6e28 100644 --- a/integration/integration_suite_test.go +++ b/integration/integration_suite_test.go @@ -25,7 +25,7 @@ import ( func TestIntegration(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "Integration Suite") + RunSpecs(t, "integration") } var echoServerBinaryPath string diff --git a/pkg/ip/ip_suite_test.go b/pkg/ip/ip_suite_test.go index 3fdd57e4..3dbd7a24 100644 --- a/pkg/ip/ip_suite_test.go +++ b/pkg/ip/ip_suite_test.go @@ -23,5 +23,5 @@ import ( func TestIp(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "Ip Suite") + RunSpecs(t, "pkg/ip") } diff --git a/pkg/ipam/ipam_suite_test.go b/pkg/ipam/ipam_suite_test.go index e80c8675..641bc026 100644 --- a/pkg/ipam/ipam_suite_test.go +++ b/pkg/ipam/ipam_suite_test.go @@ -23,5 +23,5 @@ import ( func TestIpam(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "Ipam Suite") + RunSpecs(t, "pkg/ipam") } diff --git a/pkg/ns/ns_suite_test.go b/pkg/ns/ns_suite_test.go index e2adaa4e..e969958e 100644 --- a/pkg/ns/ns_suite_test.go +++ b/pkg/ns/ns_suite_test.go @@ -30,5 +30,5 @@ func TestNs(t *testing.T) { runtime.LockOSThread() RegisterFailHandler(Fail) - RunSpecs(t, "pkg/ns Suite") + RunSpecs(t, "pkg/ns") } diff --git a/pkg/testutils/echosvr/init_test.go b/pkg/testutils/echosvr/init_test.go index a858acc9..e273d702 100644 --- a/pkg/testutils/echosvr/init_test.go +++ b/pkg/testutils/echosvr/init_test.go @@ -9,5 +9,5 @@ import ( func TestEchosvr(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "Testutils Echosvr Suite") + RunSpecs(t, "pkg/testutils/echosvr") } diff --git a/pkg/utils/hwaddr/hwaddr_suite_test.go b/pkg/utils/hwaddr/hwaddr_suite_test.go index e3bbfe97..d5e7f169 100644 --- a/pkg/utils/hwaddr/hwaddr_suite_test.go +++ b/pkg/utils/hwaddr/hwaddr_suite_test.go @@ -23,5 +23,5 @@ import ( func TestHwaddr(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "Hwaddr Suite") + RunSpecs(t, "pkg/utils/hwaddr") } diff --git a/pkg/utils/utils_suite_test.go b/pkg/utils/utils_suite_test.go index ee614a70..c00ba667 100644 --- a/pkg/utils/utils_suite_test.go +++ b/pkg/utils/utils_suite_test.go @@ -23,5 +23,5 @@ import ( func TestUtils(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "Utils Suite") + RunSpecs(t, "pkg/utils") } diff --git a/plugins/ipam/dhcp/dhcp_suite_test.go b/plugins/ipam/dhcp/dhcp_suite_test.go index 761354b4..ba2a6fce 100644 --- a/plugins/ipam/dhcp/dhcp_suite_test.go +++ b/plugins/ipam/dhcp/dhcp_suite_test.go @@ -23,5 +23,5 @@ import ( func TestDHCP(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "DHCP Suite") + RunSpecs(t, "plugins/ipam/dhcp") } diff --git a/plugins/ipam/host-local/backend/allocator/allocator_suite_test.go b/plugins/ipam/host-local/backend/allocator/allocator_suite_test.go index d98d856d..3ba02d47 100644 --- a/plugins/ipam/host-local/backend/allocator/allocator_suite_test.go +++ b/plugins/ipam/host-local/backend/allocator/allocator_suite_test.go @@ -23,5 +23,5 @@ import ( func TestAllocator(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "Allocator Suite") + RunSpecs(t, "plugins/ipam/host-local/backend/allocator") } diff --git a/plugins/ipam/host-local/backend/disk/disk_suite_test.go b/plugins/ipam/host-local/backend/disk/disk_suite_test.go index ffdd2f22..814ac0fa 100644 --- a/plugins/ipam/host-local/backend/disk/disk_suite_test.go +++ b/plugins/ipam/host-local/backend/disk/disk_suite_test.go @@ -23,5 +23,5 @@ import ( func TestLock(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "Disk Suite") + RunSpecs(t, "plugins/ipam/host-local/backend/disk") } diff --git a/plugins/ipam/host-local/host_local_suite_test.go b/plugins/ipam/host-local/host_local_suite_test.go index 1867ef77..d458f6bd 100644 --- a/plugins/ipam/host-local/host_local_suite_test.go +++ b/plugins/ipam/host-local/host_local_suite_test.go @@ -23,5 +23,5 @@ import ( func TestHostLocal(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "HostLocal Suite") + RunSpecs(t, "plugins/ipam/host-local") } diff --git a/plugins/main/bridge/bridge_suite_test.go b/plugins/main/bridge/bridge_suite_test.go index 9aa214e4..3e48736b 100644 --- a/plugins/main/bridge/bridge_suite_test.go +++ b/plugins/main/bridge/bridge_suite_test.go @@ -23,5 +23,5 @@ import ( func TestBridge(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "bridge Suite") + RunSpecs(t, "plugins/main/bridge") } diff --git a/plugins/main/host-device/host-device_suite_test.go b/plugins/main/host-device/host-device_suite_test.go index 9a1702c7..08cc1f91 100644 --- a/plugins/main/host-device/host-device_suite_test.go +++ b/plugins/main/host-device/host-device_suite_test.go @@ -23,5 +23,5 @@ import ( func TestVlan(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "host-device Suite") + RunSpecs(t, "plugins/main/host-device") } diff --git a/plugins/main/ipvlan/ipvlan_suite_test.go b/plugins/main/ipvlan/ipvlan_suite_test.go index 6ed98ddd..3cfb71d7 100644 --- a/plugins/main/ipvlan/ipvlan_suite_test.go +++ b/plugins/main/ipvlan/ipvlan_suite_test.go @@ -23,5 +23,5 @@ import ( func TestIpvlan(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "ipvlan Suite") + RunSpecs(t, "plugins/main/ipvlan") } diff --git a/plugins/main/loopback/loopback_suite_test.go b/plugins/main/loopback/loopback_suite_test.go index 212bf601..d252d12b 100644 --- a/plugins/main/loopback/loopback_suite_test.go +++ b/plugins/main/loopback/loopback_suite_test.go @@ -27,7 +27,7 @@ var pathToLoPlugin string func TestLoopback(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "Loopback Suite") + RunSpecs(t, "plugins/main/loopback") } var _ = BeforeSuite(func() { diff --git a/plugins/main/macvlan/macvlan_suite_test.go b/plugins/main/macvlan/macvlan_suite_test.go index 844e567f..566735f8 100644 --- a/plugins/main/macvlan/macvlan_suite_test.go +++ b/plugins/main/macvlan/macvlan_suite_test.go @@ -23,5 +23,5 @@ import ( func TestMacvlan(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "macvlan Suite") + RunSpecs(t, "plugins/main/macvlan") } diff --git a/plugins/main/ptp/ptp_suite_test.go b/plugins/main/ptp/ptp_suite_test.go index 05486618..547aa0d9 100644 --- a/plugins/main/ptp/ptp_suite_test.go +++ b/plugins/main/ptp/ptp_suite_test.go @@ -23,5 +23,5 @@ import ( func TestPtp(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "ptp Suite") + RunSpecs(t, "plugins/main/ptp") } diff --git a/plugins/main/vlan/vlan_suite_test.go b/plugins/main/vlan/vlan_suite_test.go index 1445e573..b1ddb6e4 100644 --- a/plugins/main/vlan/vlan_suite_test.go +++ b/plugins/main/vlan/vlan_suite_test.go @@ -23,5 +23,5 @@ import ( func TestVlan(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "vlan Suite") + RunSpecs(t, "plugins/main/vlan") } diff --git a/plugins/meta/bandwidth/bandwidth_suite_test.go b/plugins/meta/bandwidth/bandwidth_suite_test.go index 3af44271..5aea8763 100644 --- a/plugins/meta/bandwidth/bandwidth_suite_test.go +++ b/plugins/meta/bandwidth/bandwidth_suite_test.go @@ -36,7 +36,7 @@ import ( func TestTBF(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "bandwidth suite") + RunSpecs(t, "plugins/meta/bandwidth") } var echoServerBinaryPath string diff --git a/plugins/meta/flannel/flannel_suite_test.go b/plugins/meta/flannel/flannel_suite_test.go index ccdffde5..d604dbcb 100644 --- a/plugins/meta/flannel/flannel_suite_test.go +++ b/plugins/meta/flannel/flannel_suite_test.go @@ -22,5 +22,5 @@ import ( func TestFlannel(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "Flannel Suite") + RunSpecs(t, "plugins/meta/flannel") } diff --git a/plugins/meta/portmap/portmap_suite_test.go b/plugins/meta/portmap/portmap_suite_test.go index ac09a0d6..5826cfce 100644 --- a/plugins/meta/portmap/portmap_suite_test.go +++ b/plugins/meta/portmap/portmap_suite_test.go @@ -37,7 +37,7 @@ func TestPortmap(t *testing.T) { rand.Seed(config.GinkgoConfig.RandomSeed) RegisterFailHandler(Fail) - RunSpecs(t, "portmap Suite") + RunSpecs(t, "plugins/meta/portmap") } var echoServerBinaryPath string diff --git a/plugins/meta/tuning/tuning_suite_test.go b/plugins/meta/tuning/tuning_suite_test.go index cdd7b12a..8b9a75d0 100644 --- a/plugins/meta/tuning/tuning_suite_test.go +++ b/plugins/meta/tuning/tuning_suite_test.go @@ -23,5 +23,5 @@ import ( func TestTuning(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "tuning Suite") + RunSpecs(t, "plugins/meta/tuning") } diff --git a/plugins/sample/sample_suite_test.go b/plugins/sample/sample_suite_test.go index f792c1ed..cd79feee 100644 --- a/plugins/sample/sample_suite_test.go +++ b/plugins/sample/sample_suite_test.go @@ -11,5 +11,5 @@ import ( func TestSample(t *testing.T) { RegisterFailHandler(Fail) - RunSpecs(t, "sample suite") + RunSpecs(t, "plugins/sample") } diff --git a/scripts/release.sh b/scripts/release.sh index 9d129a6f..b01b27f8 100755 --- a/scripts/release.sh +++ b/scripts/release.sh @@ -2,11 +2,12 @@ set -xe SRC_DIR="${SRC_DIR:-$PWD}" -BUILDFLAGS="-a --ldflags '-extldflags \"-static\"'" TAG=$(git describe --tags --dirty) RELEASE_DIR=release-${TAG} +BUILDFLAGS="-ldflags '-extldflags -static -X main._buildVersion=${TAG}'" + OUTPUT_DIR=bin # Always clean first @@ -14,10 +15,10 @@ rm -Rf ${SRC_DIR}/${RELEASE_DIR} mkdir -p ${SRC_DIR}/${RELEASE_DIR} mkdir -p ${OUTPUT_DIR} -docker run -i -v ${SRC_DIR}:/opt/src --rm golang:1.9-alpine \ +docker run -ti -v ${SRC_DIR}:/go/src/github.com/containernetworking/plugins --rm golang:1.10-alpine \ /bin/sh -xe -c "\ apk --no-cache add bash tar; - cd /opt/src; umask 0022; + cd /go/src/github.com/containernetworking/plugins; umask 0022; for arch in amd64 arm arm64 ppc64le s390x; do \ rm -f ${OUTPUT_DIR}/*; \ CGO_ENABLED=0 GOARCH=\$arch ./build.sh ${BUILDFLAGS}; \ @@ -25,9 +26,6 @@ docker run -i -v ${SRC_DIR}:/opt/src --rm golang:1.9-alpine \ FILENAME=cni-plugins-\$arch-${TAG}.\$format; \ FILEPATH=${RELEASE_DIR}/\$FILENAME; \ tar -C ${OUTPUT_DIR} --owner=0 --group=0 -caf \$FILEPATH .; \ - if [ \"\$arch\" == \"amd64\" ]; then \ - cp \$FILEPATH ${RELEASE_DIR}/cni-${TAG}.\$format; \ - fi; \ done; \ done; cd ${RELEASE_DIR}; diff --git a/test.sh b/test.sh index a5500e71..0c48852d 100755 --- a/test.sh +++ b/test.sh @@ -10,17 +10,12 @@ source ./build.sh echo "Running tests" -# test everything that's not in vendor -pushd "$GOPATH/src/$REPO_PATH" >/dev/null - ALL_PKGS="$(go list ./... | grep -v vendor | xargs echo)" -popd >/dev/null - GINKGO_FLAGS="-p --randomizeAllSpecs --randomizeSuites --failOnPending --progress" # user has not provided PKG override if [ -z "$PKG" ]; then GINKGO_FLAGS="$GINKGO_FLAGS -r ." - LINT_TARGETS="$ALL_PKGS" + LINT_TARGETS="./..." # user has provided PKG override else @@ -28,9 +23,9 @@ else LINT_TARGETS="$PKG" fi -cd "$GOPATH/src/$REPO_PATH" -sudo -E bash -c "umask 0; PATH=${GOROOT}/bin:$(pwd)/bin:${PATH} ginkgo ${GINKGO_FLAGS}" +sudo -E bash -c "umask 0; cd ${GOPATH}/src/${REPO_PATH}; PATH=${GOROOT}/bin:$(pwd)/bin:${PATH} ginkgo ${GINKGO_FLAGS}" +cd ${GOPATH}/src/${REPO_PATH}; echo "Checking gofmt..." fmtRes=$(go fmt $LINT_TARGETS) if [ -n "${fmtRes}" ]; then