Files
qt5/coin/provisioning/common/unix/install-golang.sh
Tatiana Borisova 493a11caee Update Golang provisioning
- replace the linux/install-golang.sh to the unix/install-golang.sh
  for macos and linux provisioning configurations.

NOTE:
The Golang version is updated from 1.22.4 to 1.25.2.

Task-number: QTBUG-140130
Change-Id: Ic5e7a93bcad4d82210bcd5c7f4144153c938a603
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-10-16 09:04:27 +00:00

63 lines
1.9 KiB
Bash
Executable File

#!/usr/bin/env bash
# Copyright (C) 2025 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
set -ex
os="$1"
# shellcheck source=./DownloadURL.sh
source "${BASH_SOURCE%/*}/DownloadURL.sh"
# shellcheck source=./SetEnvVar.sh
source "${BASH_SOURCE%/*}/SetEnvVar.sh"
# This script will install go 1.25.2
version="1.25.2"
if [[ "$os" == "linux" ]]; then
uname_m="$(uname -m)"
case "$uname_m" in
x86_64|amd64)
sha256="a08c8c36946c86890ca46185765da34442ce64aa"
pkgname="go$version.linux-amd64.tar.gz"
dirname="go$version.linux-amd64"
;;
arm64|aarch64)
sha256="13690a4ecac03e6cca6988a6d2ce80bfa938eb7b"
pkgname="go$version.linux-arm64.tar.gz"
dirname="go$version.linux-arm64"
;;
*) fatal "Unknown architecture in uname: $uname_m" ;;
esac
elif [ "$os" == "macos" ]; then
uname_m="$(uname -m)"
case "$uname_m" in
x86_64|amd64)
sha256="eda89df8fd85a49e4046f85340236248a5d2a7cd"
pkgname="go$version.darwin-amd64.tar.gz"
dirname="go$version.darwin-amd64"
;;
arm64|aarch64)
sha256="1745a71d18f9946f7aac9f9528e3227c8132cc08"
pkgname="go$version.darwin-arm64.tar.gz"
dirname="go$version.darwin-arm64"
;;
*) fatal "Unknown architecture in uname: $uname_m" ;;
esac
fi
internalUrl="http://ci-files01-hki.ci.qt.io/input/qtopenapi/go/$pkgname"
externalUrl="https://go.dev/dl/$pkgname"
targetFile="$HOME/$pkgname"
DownloadURL "$internalUrl" "$externalUrl" "$sha256" "$targetFile"
echo "Installing Go"
tar -xzf "$targetFile" -C "$HOME"
rm "$targetFile"
sudo mkdir -p "/opt/golang/"
installPrefix="/opt/golang/$dirname"
sudo mv "$HOME/go" "$installPrefix"
SetEnvVar "PATH" "$installPrefix/bin:$PATH"
echo "Go = $version" >> ~/versions.txt