mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-06-23 22:17:19 +00:00
ci: Move install_go.sh as it was
Let's move `.ci/install_go.sh` file from the tests repo to this one. The file has been moved as it is, it's not used, and in the following commits we'll clean it up before actually using it. Signed-off-by: Fabiano Fidêncio <fabiano.fidencio@intel.com>
This commit is contained in:
parent
8653be71b2
commit
6123d0db2c
98
tests/install_go.sh
Executable file
98
tests/install_go.sh
Executable file
@ -0,0 +1,98 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Copyright (c) 2018 Intel Corporation
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
set -o pipefail
|
||||
|
||||
tmp_dir=$(mktemp -d -t install-go-tmp.XXXXXXXXXX)
|
||||
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
script_name="$(basename "${BASH_SOURCE[0]}")"
|
||||
force=""
|
||||
USE_VERSIONS_FILE=""
|
||||
PROJECT="Kata Containers"
|
||||
|
||||
source "${script_dir}/lib.sh"
|
||||
|
||||
install_dest="/usr/local/"
|
||||
|
||||
finish() {
|
||||
rm -rf "$tmp_dir"
|
||||
}
|
||||
|
||||
usage(){
|
||||
exit_code="$1"
|
||||
cat <<EOF
|
||||
Usage:
|
||||
|
||||
${script_name} [options] <args>
|
||||
|
||||
Args:
|
||||
<go-version> : Install a specific go version.
|
||||
|
||||
Example:
|
||||
${script_name} 1.10
|
||||
|
||||
Options
|
||||
-d <path> : destination path, path where go will be installed.
|
||||
-f : Force remove old go version and install the specified one.
|
||||
-h : Show this help
|
||||
-p : Install go defined in ${PROJECT} versions file.
|
||||
|
||||
EOF
|
||||
|
||||
exit "$exit_code"
|
||||
}
|
||||
|
||||
trap finish EXIT
|
||||
|
||||
pushd "${tmp_dir}"
|
||||
|
||||
while getopts "d:fhp" opt
|
||||
do
|
||||
case $opt in
|
||||
d) install_dest="${OPTARG}" ;;
|
||||
f) force="true" ;;
|
||||
h) usage 0 ;;
|
||||
p) USE_VERSIONS_FILE="true" ;;
|
||||
esac
|
||||
done
|
||||
|
||||
shift $(( $OPTIND - 1 ))
|
||||
|
||||
go_version="${1:-""}"
|
||||
|
||||
if [ -z "$go_version" ] && [ "${USE_VERSIONS_FILE}" = "true" ] ;then
|
||||
go_version=$(get_from_kata_deps "languages.golang.meta.newest-version")
|
||||
fi
|
||||
|
||||
if [ -z "$go_version" ];then
|
||||
echo "Missing go version or -p option"
|
||||
usage 0
|
||||
fi
|
||||
|
||||
if command -v go; then
|
||||
[[ "$(go version)" == *"go${go_version}"* ]] && \
|
||||
info "Go ${go_version} already installed" && \
|
||||
exit
|
||||
if [ "${force}" = "true" ]; then
|
||||
info "removing $(go version)"
|
||||
sudo rm -rf "${install_dest}/go"
|
||||
else
|
||||
die "$(go version) is installed, use -f or remove it before install go ${go_version}"
|
||||
fi
|
||||
fi
|
||||
|
||||
goarch=$("${script_dir}/kata-arch.sh" --golang)
|
||||
|
||||
info "Download go version ${go_version}"
|
||||
kernel_name=$(uname -s)
|
||||
curl -OL "https://storage.googleapis.com/golang/go${go_version}.${kernel_name,,}-${goarch}.tar.gz"
|
||||
info "Install go"
|
||||
mkdir -p "${install_dest}"
|
||||
sudo tar -C "${install_dest}" -xzf "go${go_version}.${kernel_name,,}-${goarch}.tar.gz"
|
||||
popd
|
Loading…
Reference in New Issue
Block a user