mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-21 10:51:29 +00:00
Update kube::util::ensure-cfssl
This commit is contained in:
parent
c14a9c7c2b
commit
7a10073e4a
@ -707,50 +707,15 @@ function kube::util::join {
|
|||||||
# CFSSLJSON_BIN: The path of the installed cfssljson binary
|
# CFSSLJSON_BIN: The path of the installed cfssljson binary
|
||||||
#
|
#
|
||||||
function kube::util::ensure-cfssl {
|
function kube::util::ensure-cfssl {
|
||||||
if command -v cfssl &>/dev/null && command -v cfssljson &>/dev/null; then
|
echo "Installing cfssl from vendor"
|
||||||
CFSSL_BIN=$(command -v cfssl)
|
GOBIN="${KUBE_OUTPUT_BINPATH:-}" go install k8s.io/kubernetes/vendor/github.com/cloudflare/cfssl/cmd/cfssl
|
||||||
CFSSLJSON_BIN=$(command -v cfssljson)
|
GOBIN="${KUBE_OUTPUT_BINPATH:-}" go install k8s.io/kubernetes/vendor/github.com/cloudflare/cfssl/cmd/cfssljson
|
||||||
return 0
|
CFSSL_BIN="$(PATH="${KUBE_OUTPUT_BINPATH:-}:${PATH}" command -v cfssl)"
|
||||||
|
CFSSLJSON_BIN="$(PATH="${KUBE_OUTPUT_BINPATH:-}:${PATH}" command -v cfssljson)"
|
||||||
|
if [[ ! -x ${CFSSL_BIN} || ! -x ${CFSSLJSON_BIN} ]]; then
|
||||||
|
echo "Failed to install cfssl." >&2
|
||||||
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Create a temp dir for cfssl if no directory was given
|
|
||||||
local cfssldir=${1:-}
|
|
||||||
if [[ -z "${cfssldir}" ]]; then
|
|
||||||
kube::util::ensure-temp-dir
|
|
||||||
cfssldir="${KUBE_TEMP}/cfssl"
|
|
||||||
fi
|
|
||||||
|
|
||||||
mkdir -p "${cfssldir}"
|
|
||||||
pushd "${cfssldir}" > /dev/null
|
|
||||||
|
|
||||||
echo "Unable to successfully run 'cfssl' from $PATH; downloading instead..."
|
|
||||||
kernel=$(uname -s)
|
|
||||||
case "${kernel}" in
|
|
||||||
Linux)
|
|
||||||
curl --retry 10 -L -o cfssl https://pkg.cfssl.org/R1.2/cfssl_linux-amd64
|
|
||||||
curl --retry 10 -L -o cfssljson https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64
|
|
||||||
;;
|
|
||||||
Darwin)
|
|
||||||
curl --retry 10 -L -o cfssl https://pkg.cfssl.org/R1.2/cfssl_darwin-amd64
|
|
||||||
curl --retry 10 -L -o cfssljson https://pkg.cfssl.org/R1.2/cfssljson_darwin-amd64
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Unknown, unsupported platform: ${kernel}." >&2
|
|
||||||
echo "Supported platforms: Linux, Darwin." >&2
|
|
||||||
exit 2
|
|
||||||
esac
|
|
||||||
|
|
||||||
chmod +x cfssl || true
|
|
||||||
chmod +x cfssljson || true
|
|
||||||
|
|
||||||
CFSSL_BIN="${cfssldir}/cfssl"
|
|
||||||
CFSSLJSON_BIN="${cfssldir}/cfssljson"
|
|
||||||
if [[ ! -x ${CFSSL_BIN} || ! -x ${CFSSLJSON_BIN} ]]; then
|
|
||||||
echo "Failed to download 'cfssl'. Please install cfssl and cfssljson and verify they are in \$PATH."
|
|
||||||
echo "Hint: export PATH=\$PATH:\$GOPATH/bin; go get -u github.com/cloudflare/cfssl/cmd/..."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
popd > /dev/null
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# kube::util::ensure_dockerized
|
# kube::util::ensure_dockerized
|
||||||
|
Loading…
Reference in New Issue
Block a user