mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-28 22:17:14 +00:00
Remove old::setup_env
This commit is contained in:
parent
f9ca58efe9
commit
bece9bc3f4
@ -548,74 +548,6 @@ EOF
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# kube::golang::old::setup_env will check that the `go` commands is available in
|
|
||||||
# ${PATH}. It will also check that the Go version is good enough for the
|
|
||||||
# Kubernetes build.
|
|
||||||
#
|
|
||||||
# Outputs:
|
|
||||||
# env-var GOPATH points to our local output dir
|
|
||||||
# env-var GOBIN is unset (we want binaries in a predictable place)
|
|
||||||
# env-var GO15VENDOREXPERIMENT=1
|
|
||||||
# current directory is within GOPATH
|
|
||||||
#FIXME: remove this when all callers are converted
|
|
||||||
kube::golang::old::setup_env() {
|
|
||||||
kube::golang::verify_go_version
|
|
||||||
|
|
||||||
# Even in module mode, we need to set GOPATH for `go build` and `go install`
|
|
||||||
# to work. We build various tools (usually via `go install`) from a lot of
|
|
||||||
# scripts.
|
|
||||||
# * We can't set GOBIN because that does not work on cross-compiles.
|
|
||||||
# * We could use `go build -o <something>`, but it's subtle when it comes
|
|
||||||
# to cross-compiles and whether the <something> is a file or a directory,
|
|
||||||
# and EVERY caller has to get it *just* right.
|
|
||||||
# * We could leave GOPATH alone and let `go install` write binaries
|
|
||||||
# wherever the user's GOPATH says (or doesn't say).
|
|
||||||
#
|
|
||||||
# Instead we set it to a phony local path and process the results ourselves.
|
|
||||||
# In particular, GOPATH[0]/bin will be used for `go install`, with
|
|
||||||
# cross-compiles adding an extra directory under that.
|
|
||||||
local go_pkg_dir="${KUBE_GOPATH}/src/${KUBE_GO_PACKAGE}"
|
|
||||||
local go_pkg_basedir
|
|
||||||
go_pkg_basedir=$(dirname "${go_pkg_dir}")
|
|
||||||
|
|
||||||
mkdir -p "${go_pkg_basedir}"
|
|
||||||
|
|
||||||
# TODO: This symlink should be relative.
|
|
||||||
if [[ ! -e "${go_pkg_dir}" || "$(readlink "${go_pkg_dir}")" != "${KUBE_ROOT}" ]]; then
|
|
||||||
ln -snf "${KUBE_ROOT}" "${go_pkg_dir}"
|
|
||||||
fi
|
|
||||||
export GOPATH="${KUBE_GOPATH}"
|
|
||||||
|
|
||||||
# If these are not set, set them now. This ensures that any subsequent
|
|
||||||
# scripts we run (which may call this function again) use the same values.
|
|
||||||
export GOCACHE="${GOCACHE:-"${KUBE_GOPATH}/cache/build"}"
|
|
||||||
export GOMODCACHE="${GOMODCACHE:-"${KUBE_GOPATH}/cache/mod"}"
|
|
||||||
|
|
||||||
# Make sure our own Go binaries are in PATH.
|
|
||||||
export PATH="${KUBE_GOPATH}/bin:${PATH}"
|
|
||||||
|
|
||||||
# Change directories so that we are within the GOPATH. Some tools get really
|
|
||||||
# upset if this is not true. We use a whole fake GOPATH here to collect the
|
|
||||||
# resultant binaries.
|
|
||||||
local subdir
|
|
||||||
subdir=$(kube::realpath . | sed "s|${KUBE_ROOT}||")
|
|
||||||
cd "${KUBE_GOPATH}/src/${KUBE_GO_PACKAGE}/${subdir}" || return 1
|
|
||||||
|
|
||||||
# Set GOROOT so binaries that parse code can work properly.
|
|
||||||
GOROOT=$(go env GOROOT)
|
|
||||||
export GOROOT
|
|
||||||
|
|
||||||
# Unset GOBIN in case it already exists in the current session.
|
|
||||||
# Cross-compiles will not work with it set.
|
|
||||||
unset GOBIN
|
|
||||||
|
|
||||||
# This seems to matter to some tools
|
|
||||||
export GO15VENDOREXPERIMENT=1
|
|
||||||
|
|
||||||
# Disable workspaces
|
|
||||||
export GOWORK=off
|
|
||||||
}
|
|
||||||
|
|
||||||
# kube::golang::new::setup_env will check that the `go` commands is available in
|
# kube::golang::new::setup_env will check that the `go` commands is available in
|
||||||
# ${PATH}. It will also check that the Go version is good enough for the
|
# ${PATH}. It will also check that the Go version is good enough for the
|
||||||
# Kubernetes build.
|
# Kubernetes build.
|
||||||
|
Loading…
Reference in New Issue
Block a user