@@ -24,9 +24,15 @@ GOLANG_DOWNLOAD_SHA256_ARM=$(curl -s -L https://golang.org/dl/\?mode\=json | jq
24
24
GOLANG_DOWNLOAD_SHA256_AMD=$( curl -s -L https://golang.org/dl/\? mode\= json | jq -r " .[] | select( .version | contains(\" go${GO_RELEASE_VERSION} \" )) | .files[] | select (.filename | contains(\" go${GO_RELEASE_VERSION} .linux-amd64.tar.gz\" )) | .sha256" )
25
25
26
26
# Gather microsoft/go sha256 values
27
- MSFT_DOWNLOAD_METADATA=$( curl -s -L https://aka.ms/golang/release/latest/go${GO_RELEASE_VERSION} .assets.json)
28
- MSFT_DOWNLOAD_SHA256_ARM=$( echo $MSFT_DOWNLOAD_METADATA | jq -r " .arches[] | select( .env.GOOS == \" linux\" ) | select( .env.GOARCH == \" arm64\" ) | .sha256" )
29
- MSFT_DOWNLOAD_SHA256_AMD=$( echo $MSFT_DOWNLOAD_METADATA | jq -r " .arches[] | select( .env.GOOS == \" linux\" ) | select( .env.GOARCH == \" amd64\" ) | .sha256" )
27
+ URL=https://aka.ms/golang/release/latest/go${GO_RELEASE_VERSION} .assets.json
28
+ if curl -s -L " $URL " > /dev/null ; then
29
+ MSFT_DOWNLOAD_METADATA=$( curl -s -L " $URL " )
30
+ MSFT_DOWNLOAD_SHA256_ARM=$( echo $MSFT_DOWNLOAD_METADATA | jq -r " .arches[] | select( .env.GOOS == \" linux\" ) | select( .env.GOARCH == \" arm64\" ) | .sha256" )
31
+ MSFT_DOWNLOAD_SHA256_AMD=$( echo $MSFT_DOWNLOAD_METADATA | jq -r " .arches[] | select( .env.GOOS == \" linux\" ) | select( .env.GOARCH == \" amd64\" ) | .sha256" )
32
+ # when a new minor then we use `-1`
33
+ # then nex security versions will be `-2`, `-3`, etc, see bump-microsoft.yml
34
+ SECURITY_VERSION=-1
35
+ fi
30
36
31
37
# # As long as https://golang.org/dl/?mode=json supports only 2 major versions
32
38
# # and there is a new major release, then it's required to parse https://golang.org/dl
@@ -46,9 +52,16 @@ find "go" -type f -name Dockerfile.tmpl -print0 |
46
52
${SED} -E -e " s#(ARG GOLANG_VERSION)=[0-9]+\.[0-9]+(\.[0-9]+)?#\1=${GO_RELEASE_VERSION} #g" " $line "
47
53
if echo " $line " | grep -q ' arm' ; then
48
54
${SED} -E -e " s#(ARG GOLANG_DOWNLOAD_SHA256)=.+#\1=${GOLANG_DOWNLOAD_SHA256_ARM} #g" " $line "
49
- ${SED} -E -e " s#(ARG MSFT_DOWNLOAD_SHA256)=.+#\1=${MSFT_DOWNLOAD_SHA256_ARM} #g" " $line "
55
+ if [ -n " $MSFT_DOWNLOAD_SHA256_ARM " ]; then
56
+ ${SED} -E -e " s#(ARG MSFT_DOWNLOAD_SHA256)=.+#\1=${MSFT_DOWNLOAD_SHA256_ARM} #g" " $line "
57
+ fi
50
58
else
51
59
${SED} -E -e " s#(ARG GOLANG_DOWNLOAD_SHA256)=.+#\1=${GOLANG_DOWNLOAD_SHA256_AMD} #g" " $line "
52
- ${SED} -E -e " s#(ARG MSFT_DOWNLOAD_SHA256)=.+#\1=${MSFT_DOWNLOAD_SHA256_AMD} #g" " $line "
60
+ if [ -n " $MSFT_DOWNLOAD_SHA256_AMD " ]; then
61
+ ${SED} -E -e " s#(ARG MSFT_DOWNLOAD_SHA256)=.+#\1=${MSFT_DOWNLOAD_SHA256_AMD} #g" " $line "
62
+ fi
63
+ fi
64
+ if [ -n " $SECURITY_VERSION " ]; then
65
+ ${SED} -E -e " s#(ARG SECURITY_VERSION)=.*#\1=${SECURITY_VERSION} #g" " $line "
53
66
fi
54
67
done
0 commit comments