Fix directory handling in Go toolchain handling script. (#16828)
Austin S. Hemmelgarn committed
Jan 24, 2024 at 08:21 UTC
5b8355117adbf10d9c16e89137e4ac326b512a08
1 file changed
+7
-2
packaging/check-for-go-toolchain.sh
+7
-2
@@ -17,6 +17,8 @@ GOLANG_MIN_MAJOR_VERSION='1'
17
GOLANG_MIN_MINOR_VERSION='21'
18
GOLANG_MIN_PATCH_VERSION='0'
19
20
+GOLANG_TEMP_PATH="${TMPDIR}/go-toolchain"
21
+
22
check_go_version() {
23
version="$("${go}" version | awk '{ print $3 }' | sed 's/^go//')"
24
version_major="$(echo "${version}" | cut -f 1 -d '.')"
@@ -43,7 +45,6 @@ check_go_version() {
45
}
46
47
install_go_toolchain() {
46
- GOLANG_TEMP_PATH="${TMPDIR}/go-toolchain"
48
GOLANG_ARCHIVE_NAME="${GOLANG_TEMP_PATH}/golang.tar.gz"
49
GOLANG_CHECKSUM_FILE="${GOLANG_TEMP_PATH}/golang.sha256sums"
50
@@ -92,7 +93,9 @@ install_go_toolchain() {
93
return 1
94
fi
95
95
- if ! curl --fail -q -sSL --connect-timeout 10 --retry 3 --output "/tmp/${GOLANG_ARCHIVE_NAME}" "${GOLANG_ARCHIVE_URL}"; then
96
+ mkdir -p "${GOLANG_TEMP_PATH}"
97
+
98
+ if ! curl --fail -q -sSL --connect-timeout 10 --retry 3 --output "${GOLANG_ARCHIVE_NAME}" "${GOLANG_ARCHIVE_URL}"; then
99
GOLANG_FAILURE_REASON="Failed to download Go toolchain."
100
return 1
101
fi
@@ -127,6 +130,8 @@ ensure_go_toolchain() {
130
if ! install_go_toolchain; then
131
return 1
132
fi
133
+
134
+ rm -rf "${GOLANG_TEMP_PATH}" || true
135
fi
136
137
return 0