Commit 8f41fe1a authored by Brad Davidson's avatar Brad Davidson Committed by Brad Davidson

Add validation check to confirm correct golang version for Kubernetes

Also reorder validations to perform the short checks first so that things fail faster if there's a problem. Signed-off-by: 's avatarBrad Davidson <brad.davidson@rancher.com>
parent 05475a79
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
set -e set -e
cd $(dirname $0)/.. cd $(dirname $0)/..
. ./scripts/version.sh
echo Running: go mod tidy echo Running: go mod tidy
go mod tidy go mod tidy
...@@ -13,13 +14,16 @@ if [ -n "$SKIP_VALIDATE" ]; then ...@@ -13,13 +14,16 @@ if [ -n "$SKIP_VALIDATE" ]; then
echo Skipping validation echo Skipping validation
exit exit
fi fi
echo Running validation
if ! command -v golangci-lint; then echo Running: go version
echo Skipping validation: no golangci-lint available DEPENDENCIES_URL="https://raw.githubusercontent.com/kubernetes/kubernetes/${VERSION_K8S}/build/dependencies.yaml"
exit GOLANG_VERSION=$(curl -sL "${DEPENDENCIES_URL}" | yq e '.dependencies[] | select(.name == "golang: upstream version").version' -)
if ! go version | grep -s "go version go${GOLANG_VERSION} "; then
echo "Unexpected $(go version) - Kubernetes ${VERSION_K8S} should be built with go version go${GOLANG_VERSION}"
exit 1
fi fi
echo Running validation
echo Running: go mod verify echo Running: go mod verify
go mod verify go mod verify
...@@ -27,14 +31,17 @@ if [ ! -e build/data ];then ...@@ -27,14 +31,17 @@ if [ ! -e build/data ];then
mkdir -p build/data mkdir -p build/data
fi fi
echo Running: golangci-lint
golangci-lint run -v
. ./scripts/version.sh
if [ -n "$DIRTY" ]; then if [ -n "$DIRTY" ]; then
echo Source dir is dirty echo Source dir is dirty
git status --porcelain --untracked-files=no git status --porcelain --untracked-files=no
git diff git diff
exit 1 exit 1
fi fi
if ! command -v golangci-lint; then
echo Skipping validation: no golangci-lint available
exit
fi
echo Running: golangci-lint
golangci-lint run -v
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment