Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update golang #10739

Merged
merged 1 commit into from Aug 17, 2021
Merged

Update golang #10739

merged 1 commit into from Aug 17, 2021

Conversation

tianon
Copy link
Member

@tianon tianon commented Aug 16, 2021

Changes:

Changes:

- docker-library/golang@0760c29: Merge pull request docker-library/golang#381 from infosiftr/1.17
- docker-library/golang@48a7371: Add bullseye variants
- docker-library/golang@2cd4dab: Update to 1.17 (GA)
@github-actions
Copy link

Diff for 5e4bff1:
diff --git a/_bashbrew-cat b/_bashbrew-cat
index 7846e06..16752f9 100644
--- a/_bashbrew-cat
+++ b/_bashbrew-cat
@@ -1,128 +1,96 @@
 Maintainers: Tianon Gravi <admwiggin@gmail.com> (@tianon), Joseph Ferguson <yosifkit@gmail.com> (@yosifkit), Johan Euphrosine <proppy@google.com> (@proppy)
 GitRepo: https://github.com/docker-library/golang.git
 
-Tags: 1.15.15-alpine3.13, 1.15-alpine3.13
-Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 0fc9e498c9c5aeb39f7d1f58d50eb00e8a1f10f4
-Directory: 1.15/alpine3.13
-
-Tags: 1.15.15-alpine3.14, 1.15-alpine3.14, 1.15.15-alpine, 1.15-alpine
-Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 0fc9e498c9c5aeb39f7d1f58d50eb00e8a1f10f4
-Directory: 1.15/alpine3.14
-
-Tags: 1.15.15-buster, 1.15-buster
-SharedTags: 1.15.15, 1.15
-Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
-GitCommit: 0fc9e498c9c5aeb39f7d1f58d50eb00e8a1f10f4
-Directory: 1.15/buster
-
-Tags: 1.15.15-nanoserver-1809, 1.15-nanoserver-1809
-SharedTags: 1.15.15-nanoserver, 1.15-nanoserver
-Architectures: windows-amd64
-GitCommit: 0fc9e498c9c5aeb39f7d1f58d50eb00e8a1f10f4
-Directory: 1.15/windows/nanoserver-1809
-Constraints: nanoserver-1809, windowsservercore-1809
-
-Tags: 1.15.15-stretch, 1.15-stretch
-Architectures: amd64, arm32v7, arm64v8, i386
-GitCommit: 0fc9e498c9c5aeb39f7d1f58d50eb00e8a1f10f4
-Directory: 1.15/stretch
-
-Tags: 1.15.15-windowsservercore-1809, 1.15-windowsservercore-1809
-SharedTags: 1.15.15-windowsservercore, 1.15-windowsservercore, 1.15.15, 1.15
-Architectures: windows-amd64
-GitCommit: 0fc9e498c9c5aeb39f7d1f58d50eb00e8a1f10f4
-Directory: 1.15/windows/windowsservercore-1809
-Constraints: windowsservercore-1809
-
-Tags: 1.15.15-windowsservercore-ltsc2016, 1.15-windowsservercore-ltsc2016
-SharedTags: 1.15.15-windowsservercore, 1.15-windowsservercore, 1.15.15, 1.15
-Architectures: windows-amd64
-GitCommit: 0fc9e498c9c5aeb39f7d1f58d50eb00e8a1f10f4
-Directory: 1.15/windows/windowsservercore-ltsc2016
-Constraints: windowsservercore-ltsc2016
-
-Tags: 1.16.7-alpine3.13, 1.16-alpine3.13, 1-alpine3.13, alpine3.13
+Tags: 1.16.7-alpine3.13, 1.16-alpine3.13
 Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
 GitCommit: 4c1da70f967b2b38b254e166e787d017cc9ca351
 Directory: 1.16/alpine3.13
 
-Tags: 1.16.7-alpine3.14, 1.16-alpine3.14, 1-alpine3.14, alpine3.14, 1.16.7-alpine, 1.16-alpine, 1-alpine, alpine
+Tags: 1.16.7-alpine3.14, 1.16-alpine3.14, 1.16.7-alpine, 1.16-alpine
 Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
 GitCommit: 4c1da70f967b2b38b254e166e787d017cc9ca351
 Directory: 1.16/alpine3.14
 
-Tags: 1.16.7-buster, 1.16-buster, 1-buster, buster
-SharedTags: 1.16.7, 1.16, 1, latest
+Tags: 1.16.7-bullseye, 1.16-bullseye
+SharedTags: 1.16.7, 1.16
+Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
+GitCommit: 48a7371ed6055a97a10adb0b75756192ad5f1c97
+Directory: 1.16/bullseye
+
+Tags: 1.16.7-buster, 1.16-buster
 Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
 GitCommit: 4c1da70f967b2b38b254e166e787d017cc9ca351
 Directory: 1.16/buster
 
-Tags: 1.16.7-nanoserver-1809, 1.16-nanoserver-1809, 1-nanoserver-1809, nanoserver-1809
-SharedTags: 1.16.7-nanoserver, 1.16-nanoserver, 1-nanoserver, nanoserver
+Tags: 1.16.7-nanoserver-1809, 1.16-nanoserver-1809
+SharedTags: 1.16.7-nanoserver, 1.16-nanoserver
 Architectures: windows-amd64
 GitCommit: 4c1da70f967b2b38b254e166e787d017cc9ca351
 Directory: 1.16/windows/nanoserver-1809
 Constraints: nanoserver-1809, windowsservercore-1809
 
-Tags: 1.16.7-stretch, 1.16-stretch, 1-stretch, stretch
+Tags: 1.16.7-stretch, 1.16-stretch
 Architectures: amd64, arm32v7, arm64v8, i386
 GitCommit: 4c1da70f967b2b38b254e166e787d017cc9ca351
 Directory: 1.16/stretch
 
-Tags: 1.16.7-windowsservercore-1809, 1.16-windowsservercore-1809, 1-windowsservercore-1809, windowsservercore-1809
-SharedTags: 1.16.7-windowsservercore, 1.16-windowsservercore, 1-windowsservercore, windowsservercore, 1.16.7, 1.16, 1, latest
+Tags: 1.16.7-windowsservercore-1809, 1.16-windowsservercore-1809
+SharedTags: 1.16.7-windowsservercore, 1.16-windowsservercore, 1.16.7, 1.16
 Architectures: windows-amd64
 GitCommit: 4c1da70f967b2b38b254e166e787d017cc9ca351
 Directory: 1.16/windows/windowsservercore-1809
 Constraints: windowsservercore-1809
 
-Tags: 1.16.7-windowsservercore-ltsc2016, 1.16-windowsservercore-ltsc2016, 1-windowsservercore-ltsc2016, windowsservercore-ltsc2016
-SharedTags: 1.16.7-windowsservercore, 1.16-windowsservercore, 1-windowsservercore, windowsservercore, 1.16.7, 1.16, 1, latest
+Tags: 1.16.7-windowsservercore-ltsc2016, 1.16-windowsservercore-ltsc2016
+SharedTags: 1.16.7-windowsservercore, 1.16-windowsservercore, 1.16.7, 1.16
 Architectures: windows-amd64
 GitCommit: 4c1da70f967b2b38b254e166e787d017cc9ca351
 Directory: 1.16/windows/windowsservercore-ltsc2016
 Constraints: windowsservercore-ltsc2016
 
-Tags: 1.17rc2-alpine3.13, 1.17-rc-alpine3.13, rc-alpine3.13
+Tags: 1.17.0-alpine3.13, 1.17-alpine3.13, 1-alpine3.13, alpine3.13
 Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 88c510c850185f6d6cfc454e5ac7970293dafaee
-Directory: 1.17-rc/alpine3.13
+GitCommit: 2cd4dab7bd702c7315864c428ba286827d50cda3
+Directory: 1.17/alpine3.13
 
-Tags: 1.17rc2-alpine3.14, 1.17-rc-alpine3.14, rc-alpine3.14, 1.17rc2-alpine, 1.17-rc-alpine, rc-alpine
+Tags: 1.17.0-alpine3.14, 1.17-alpine3.14, 1-alpine3.14, alpine3.14, 1.17.0-alpine, 1.17-alpine, 1-alpine, alpine
 Architectures: amd64, arm32v6, arm32v7, arm64v8, i386, ppc64le, s390x
-GitCommit: 88c510c850185f6d6cfc454e5ac7970293dafaee
-Directory: 1.17-rc/alpine3.14
+GitCommit: 2cd4dab7bd702c7315864c428ba286827d50cda3
+Directory: 1.17/alpine3.14
+
+Tags: 1.17.0-bullseye, 1.17-bullseye, 1-bullseye, bullseye
+SharedTags: 1.17.0, 1.17, 1, latest
+Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
+GitCommit: 48a7371ed6055a97a10adb0b75756192ad5f1c97
+Directory: 1.17/bullseye
 
-Tags: 1.17rc2-buster, 1.17-rc-buster, rc-buster
-SharedTags: 1.17rc2, 1.17-rc, rc
+Tags: 1.17.0-buster, 1.17-buster, 1-buster, buster
 Architectures: amd64, arm32v5, arm32v7, arm64v8, i386, mips64le, ppc64le, s390x
-GitCommit: 88c510c850185f6d6cfc454e5ac7970293dafaee
-Directory: 1.17-rc/buster
+GitCommit: 2cd4dab7bd702c7315864c428ba286827d50cda3
+Directory: 1.17/buster
 
-Tags: 1.17rc2-nanoserver-1809, 1.17-rc-nanoserver-1809, rc-nanoserver-1809
-SharedTags: 1.17rc2-nanoserver, 1.17-rc-nanoserver, rc-nanoserver
+Tags: 1.17.0-nanoserver-1809, 1.17-nanoserver-1809, 1-nanoserver-1809, nanoserver-1809
+SharedTags: 1.17.0-nanoserver, 1.17-nanoserver, 1-nanoserver, nanoserver
 Architectures: windows-amd64
-GitCommit: 88c510c850185f6d6cfc454e5ac7970293dafaee
-Directory: 1.17-rc/windows/nanoserver-1809
+GitCommit: 2cd4dab7bd702c7315864c428ba286827d50cda3
+Directory: 1.17/windows/nanoserver-1809
 Constraints: nanoserver-1809, windowsservercore-1809
 
-Tags: 1.17rc2-stretch, 1.17-rc-stretch, rc-stretch
+Tags: 1.17.0-stretch, 1.17-stretch, 1-stretch, stretch
 Architectures: amd64, arm32v7, arm64v8, i386
-GitCommit: 88c510c850185f6d6cfc454e5ac7970293dafaee
-Directory: 1.17-rc/stretch
+GitCommit: 2cd4dab7bd702c7315864c428ba286827d50cda3
+Directory: 1.17/stretch
 
-Tags: 1.17rc2-windowsservercore-1809, 1.17-rc-windowsservercore-1809, rc-windowsservercore-1809
-SharedTags: 1.17rc2-windowsservercore, 1.17-rc-windowsservercore, rc-windowsservercore, 1.17rc2, 1.17-rc, rc
+Tags: 1.17.0-windowsservercore-1809, 1.17-windowsservercore-1809, 1-windowsservercore-1809, windowsservercore-1809
+SharedTags: 1.17.0-windowsservercore, 1.17-windowsservercore, 1-windowsservercore, windowsservercore, 1.17.0, 1.17, 1, latest
 Architectures: windows-amd64
-GitCommit: 88c510c850185f6d6cfc454e5ac7970293dafaee
-Directory: 1.17-rc/windows/windowsservercore-1809
+GitCommit: 2cd4dab7bd702c7315864c428ba286827d50cda3
+Directory: 1.17/windows/windowsservercore-1809
 Constraints: windowsservercore-1809
 
-Tags: 1.17rc2-windowsservercore-ltsc2016, 1.17-rc-windowsservercore-ltsc2016, rc-windowsservercore-ltsc2016
-SharedTags: 1.17rc2-windowsservercore, 1.17-rc-windowsservercore, rc-windowsservercore, 1.17rc2, 1.17-rc, rc
+Tags: 1.17.0-windowsservercore-ltsc2016, 1.17-windowsservercore-ltsc2016, 1-windowsservercore-ltsc2016, windowsservercore-ltsc2016
+SharedTags: 1.17.0-windowsservercore, 1.17-windowsservercore, 1-windowsservercore, windowsservercore, 1.17.0, 1.17, 1, latest
 Architectures: windows-amd64
-GitCommit: 88c510c850185f6d6cfc454e5ac7970293dafaee
-Directory: 1.17-rc/windows/windowsservercore-ltsc2016
+GitCommit: 2cd4dab7bd702c7315864c428ba286827d50cda3
+Directory: 1.17/windows/windowsservercore-ltsc2016
 Constraints: windowsservercore-ltsc2016
diff --git a/_bashbrew-list b/_bashbrew-list
index 25bbacc..d736084 100644
--- a/_bashbrew-list
+++ b/_bashbrew-list
@@ -2,6 +2,7 @@ golang:1
 golang:1-alpine
 golang:1-alpine3.13
 golang:1-alpine3.14
+golang:1-bullseye
 golang:1-buster
 golang:1-nanoserver
 golang:1-nanoserver-1809
@@ -9,32 +10,11 @@ golang:1-stretch
 golang:1-windowsservercore
 golang:1-windowsservercore-1809
 golang:1-windowsservercore-ltsc2016
-golang:1.15
-golang:1.15-alpine
-golang:1.15-alpine3.13
-golang:1.15-alpine3.14
-golang:1.15-buster
-golang:1.15-nanoserver
-golang:1.15-nanoserver-1809
-golang:1.15-stretch
-golang:1.15-windowsservercore
-golang:1.15-windowsservercore-1809
-golang:1.15-windowsservercore-ltsc2016
-golang:1.15.15
-golang:1.15.15-alpine
-golang:1.15.15-alpine3.13
-golang:1.15.15-alpine3.14
-golang:1.15.15-buster
-golang:1.15.15-nanoserver
-golang:1.15.15-nanoserver-1809
-golang:1.15.15-stretch
-golang:1.15.15-windowsservercore
-golang:1.15.15-windowsservercore-1809
-golang:1.15.15-windowsservercore-ltsc2016
 golang:1.16
 golang:1.16-alpine
 golang:1.16-alpine3.13
 golang:1.16-alpine3.14
+golang:1.16-bullseye
 golang:1.16-buster
 golang:1.16-nanoserver
 golang:1.16-nanoserver-1809
@@ -46,6 +26,7 @@ golang:1.16.7
 golang:1.16.7-alpine
 golang:1.16.7-alpine3.13
 golang:1.16.7-alpine3.14
+golang:1.16.7-bullseye
 golang:1.16.7-buster
 golang:1.16.7-nanoserver
 golang:1.16.7-nanoserver-1809
@@ -53,46 +34,38 @@ golang:1.16.7-stretch
 golang:1.16.7-windowsservercore
 golang:1.16.7-windowsservercore-1809
 golang:1.16.7-windowsservercore-ltsc2016
-golang:1.17rc2
-golang:1.17rc2-alpine
-golang:1.17rc2-alpine3.13
-golang:1.17rc2-alpine3.14
-golang:1.17rc2-buster
-golang:1.17rc2-nanoserver
-golang:1.17rc2-nanoserver-1809
-golang:1.17rc2-stretch
-golang:1.17rc2-windowsservercore
-golang:1.17rc2-windowsservercore-1809
-golang:1.17rc2-windowsservercore-ltsc2016
-golang:1.17-rc
-golang:1.17-rc-alpine
-golang:1.17-rc-alpine3.13
-golang:1.17-rc-alpine3.14
-golang:1.17-rc-buster
-golang:1.17-rc-nanoserver
-golang:1.17-rc-nanoserver-1809
-golang:1.17-rc-stretch
-golang:1.17-rc-windowsservercore
-golang:1.17-rc-windowsservercore-1809
-golang:1.17-rc-windowsservercore-ltsc2016
+golang:1.17
+golang:1.17-alpine
+golang:1.17-alpine3.13
+golang:1.17-alpine3.14
+golang:1.17-bullseye
+golang:1.17-buster
+golang:1.17-nanoserver
+golang:1.17-nanoserver-1809
+golang:1.17-stretch
+golang:1.17-windowsservercore
+golang:1.17-windowsservercore-1809
+golang:1.17-windowsservercore-ltsc2016
+golang:1.17.0
+golang:1.17.0-alpine
+golang:1.17.0-alpine3.13
+golang:1.17.0-alpine3.14
+golang:1.17.0-bullseye
+golang:1.17.0-buster
+golang:1.17.0-nanoserver
+golang:1.17.0-nanoserver-1809
+golang:1.17.0-stretch
+golang:1.17.0-windowsservercore
+golang:1.17.0-windowsservercore-1809
+golang:1.17.0-windowsservercore-ltsc2016
 golang:alpine
 golang:alpine3.13
 golang:alpine3.14
+golang:bullseye
 golang:buster
 golang:latest
 golang:nanoserver
 golang:nanoserver-1809
-golang:rc
-golang:rc-alpine
-golang:rc-alpine3.13
-golang:rc-alpine3.14
-golang:rc-buster
-golang:rc-nanoserver
-golang:rc-nanoserver-1809
-golang:rc-stretch
-golang:rc-windowsservercore
-golang:rc-windowsservercore-1809
-golang:rc-windowsservercore-ltsc2016
 golang:stretch
 golang:windowsservercore
 golang:windowsservercore-1809
diff --git a/golang_1.15-alpine/Dockerfile b/golang_1.15-alpine/Dockerfile
deleted file mode 100644
index 6aeffbb..0000000
diff --git a/golang_1.15-alpine3.13/Dockerfile b/golang_1.15-alpine3.13/Dockerfile
deleted file mode 100644
index 1195472..0000000
diff --git a/golang_1.15-nanoserver-1809/Dockerfile b/golang_1.15-nanoserver-1809/Dockerfile
deleted file mode 100644
index 2b41bfd..0000000
diff --git a/golang_1.15-stretch/Dockerfile b/golang_1.15-stretch/Dockerfile
deleted file mode 100644
index 7f48ec7..0000000
diff --git a/golang_1.15-windowsservercore-1809/Dockerfile b/golang_1.15-windowsservercore-1809/Dockerfile
deleted file mode 100644
index 7e7c5a6..0000000
diff --git a/golang_1.15-windowsservercore-ltsc2016/Dockerfile b/golang_1.15-windowsservercore-ltsc2016/Dockerfile
deleted file mode 100644
index 41b0be3..0000000
diff --git a/golang_alpine/Dockerfile b/golang_1.16-alpine/Dockerfile
similarity index 100%
copy from golang_alpine/Dockerfile
copy to golang_1.16-alpine/Dockerfile
diff --git a/golang_alpine3.13/Dockerfile b/golang_1.16-alpine3.13/Dockerfile
similarity index 100%
copy from golang_alpine3.13/Dockerfile
copy to golang_1.16-alpine3.13/Dockerfile
diff --git a/golang_1.15-buster/Dockerfile b/golang_1.16-bullseye/Dockerfile
similarity index 73%
rename from golang_1.15-buster/Dockerfile
rename to golang_1.16-bullseye/Dockerfile
index 1622c88..e80e81e 100644
--- a/golang_1.15-buster/Dockerfile
+++ b/golang_1.16-bullseye/Dockerfile
@@ -4,7 +4,7 @@
 # PLEASE DO NOT EDIT IT DIRECTLY.
 #
 
-FROM buildpack-deps:buster-scm
+FROM buildpack-deps:bullseye-scm
 
 # gcc for cgo
 RUN apt-get update && apt-get install -y --no-install-recommends \
@@ -17,7 +17,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
 
 ENV PATH /usr/local/go/bin:$PATH
 
-ENV GOLANG_VERSION 1.15.15
+ENV GOLANG_VERSION 1.16.7
 
 RUN set -eux; \
 	\
@@ -25,34 +25,34 @@ RUN set -eux; \
 	url=; \
 	case "${dpkgArch##*-}" in \
 		'amd64') \
-			url='https://dl.google.com/go/go1.15.15.linux-amd64.tar.gz'; \
-			sha256='0885cf046a9f099e260d98d9ec5d19ea9328f34c8dc4956e1d3cd87daaddb345'; \
+			url='https://dl.google.com/go/go1.16.7.linux-amd64.tar.gz'; \
+			sha256='7fe7a73f55ba3e2285da36f8b085e5c0159e9564ef5f63ee0ed6b818ade8ef04'; \
 			;; \
 		'armel') \
 			export GOARCH='arm' GOARM='5' GOOS='linux'; \
 			;; \
 		'armhf') \
-			url='https://dl.google.com/go/go1.15.15.linux-armv6l.tar.gz'; \
-			sha256='7192603af50afb23c9d8cd14d2b2c19e0985a34d3eca685fa098df7893000d19'; \
+			url='https://dl.google.com/go/go1.16.7.linux-armv6l.tar.gz'; \
+			sha256='b2973ceeae234866368baf9469fb7b9444857e50dc785ba879d98a0aa208a12b'; \
 			;; \
 		'arm64') \
-			url='https://dl.google.com/go/go1.15.15.linux-arm64.tar.gz'; \
-			sha256='714abb01af210473dd6af331094ad6847162eff81a7fc7241d24f5a85496c9fa'; \
+			url='https://dl.google.com/go/go1.16.7.linux-arm64.tar.gz'; \
+			sha256='63d6b53ecbd2b05c1f0e9903c92042663f2f68afdbb67f4d0d12700156869bac'; \
 			;; \
 		'i386') \
-			url='https://dl.google.com/go/go1.15.15.linux-386.tar.gz'; \
-			sha256='3310fb0e48b0907bb520f6e3c6dcff63cc0913b92a76456f12980d0eb13b77d4'; \
+			url='https://dl.google.com/go/go1.16.7.linux-386.tar.gz'; \
+			sha256='5c0c8891fa88993f2193fbc9dd5cca6c250c89aa8c12bbaa382b6ff38139bcc3'; \
 			;; \
 		'mips64el') \
 			export GOARCH='mips64le' GOOS='linux'; \
 			;; \
 		'ppc64el') \
-			url='https://dl.google.com/go/go1.15.15.linux-ppc64le.tar.gz'; \
-			sha256='37f3b99e21d0324a6583159e14e42e57e56561abbf7bf68bef3d8f57b29e39c0'; \
+			url='https://dl.google.com/go/go1.16.7.linux-ppc64le.tar.gz'; \
+			sha256='03e02b2ac6dc1601203f335385b9bbe15a55677066d9a1a1280b5fcfa6ec4738'; \
 			;; \
 		's390x') \
-			url='https://dl.google.com/go/go1.15.15.linux-s390x.tar.gz'; \
-			sha256='eae39d97df6b758636d5427be0b083dbf9d49007b302825ac6c8645de039aaab'; \
+			url='https://dl.google.com/go/go1.16.7.linux-s390x.tar.gz'; \
+			sha256='5f691c9551710ebb17bbda04389944aa7332f42ab28f92516a69fbd7860e7e9f'; \
 			;; \
 		*) echo >&2 "error: unsupported architecture '$dpkgArch' (likely packaging update needed)"; exit 1 ;; \
 	esac; \
@@ -60,8 +60,8 @@ RUN set -eux; \
 	if [ -z "$url" ]; then \
 # https://github.com/golang/go/issues/38536#issuecomment-616897960
 		build=1; \
-		url='https://dl.google.com/go/go1.15.15.src.tar.gz'; \
-		sha256='0662ae3813330280d5f1a97a2ee23bbdbe3a5a7cfa6001b24a9873a19a0dc7ec'; \
+		url='https://dl.google.com/go/go1.16.7.src.tar.gz'; \
+		sha256='1a9f2894d3d878729f7045072f30becebe243524cf2fce4e0a7b248b1e0654ac'; \
 		echo >&2; \
 		echo >&2 "warning: current architecture ($dpkgArch) does not have a corresponding Go binary release; will be building from source"; \
 		echo >&2; \
diff --git a/golang_buster/Dockerfile b/golang_1.16-buster/Dockerfile
similarity index 100%
copy from golang_buster/Dockerfile
copy to golang_1.16-buster/Dockerfile
diff --git a/golang_nanoserver-1809/Dockerfile b/golang_1.16-nanoserver-1809/Dockerfile
similarity index 100%
copy from golang_nanoserver-1809/Dockerfile
copy to golang_1.16-nanoserver-1809/Dockerfile
diff --git a/golang_stretch/Dockerfile b/golang_1.16-stretch/Dockerfile
similarity index 100%
copy from golang_stretch/Dockerfile
copy to golang_1.16-stretch/Dockerfile
diff --git a/golang_windowsservercore-1809/Dockerfile b/golang_1.16-windowsservercore-1809/Dockerfile
similarity index 100%
copy from golang_windowsservercore-1809/Dockerfile
copy to golang_1.16-windowsservercore-1809/Dockerfile
diff --git a/golang_windowsservercore-ltsc2016/Dockerfile b/golang_1.16-windowsservercore-ltsc2016/Dockerfile
similarity index 100%
copy from golang_windowsservercore-ltsc2016/Dockerfile
copy to golang_1.16-windowsservercore-ltsc2016/Dockerfile
diff --git a/golang_alpine/Dockerfile b/golang_alpine/Dockerfile
index 45cf368..92da153 100644
--- a/golang_alpine/Dockerfile
+++ b/golang_alpine/Dockerfile
@@ -16,7 +16,7 @@ RUN [ ! -e /etc/nsswitch.conf ] && echo 'hosts: files dns' > /etc/nsswitch.conf
 
 ENV PATH /usr/local/go/bin:$PATH
 
-ENV GOLANG_VERSION 1.16.7
+ENV GOLANG_VERSION 1.17
 
 RUN set -eux; \
 	apk add --no-cache --virtual .build-deps \
@@ -54,8 +54,8 @@ RUN set -eux; \
 	esac; \
 	\
 # https://github.com/golang/go/issues/38536#issuecomment-616897960
-	url='https://dl.google.com/go/go1.16.7.src.tar.gz'; \
-	sha256='1a9f2894d3d878729f7045072f30becebe243524cf2fce4e0a7b248b1e0654ac'; \
+	url='https://dl.google.com/go/go1.17.src.tar.gz'; \
+	sha256='3a70e5055509f347c0fb831ca07a2bf3b531068f349b14a3c652e9b5b67beb5d'; \
 	\
 	wget -O go.tgz.asc "$url.asc"; \
 	wget -O go.tgz "$url"; \
diff --git a/golang_alpine3.13/Dockerfile b/golang_alpine3.13/Dockerfile
index 38b47d1..d7134c3 100644
--- a/golang_alpine3.13/Dockerfile
+++ b/golang_alpine3.13/Dockerfile
@@ -16,7 +16,7 @@ RUN [ ! -e /etc/nsswitch.conf ] && echo 'hosts: files dns' > /etc/nsswitch.conf
 
 ENV PATH /usr/local/go/bin:$PATH
 
-ENV GOLANG_VERSION 1.16.7
+ENV GOLANG_VERSION 1.17
 
 RUN set -eux; \
 	apk add --no-cache --virtual .build-deps \
@@ -54,8 +54,8 @@ RUN set -eux; \
 	esac; \
 	\
 # https://github.com/golang/go/issues/38536#issuecomment-616897960
-	url='https://dl.google.com/go/go1.16.7.src.tar.gz'; \
-	sha256='1a9f2894d3d878729f7045072f30becebe243524cf2fce4e0a7b248b1e0654ac'; \
+	url='https://dl.google.com/go/go1.17.src.tar.gz'; \
+	sha256='3a70e5055509f347c0fb831ca07a2bf3b531068f349b14a3c652e9b5b67beb5d'; \
 	\
 	wget -O go.tgz.asc "$url.asc"; \
 	wget -O go.tgz "$url"; \
diff --git a/golang_rc-buster/Dockerfile b/golang_bullseye/Dockerfile
similarity index 73%
rename from golang_rc-buster/Dockerfile
rename to golang_bullseye/Dockerfile
index 281b7c8..ef0e425 100644
--- a/golang_rc-buster/Dockerfile
+++ b/golang_bullseye/Dockerfile
@@ -4,7 +4,7 @@
 # PLEASE DO NOT EDIT IT DIRECTLY.
 #
 
-FROM buildpack-deps:buster-scm
+FROM buildpack-deps:bullseye-scm
 
 # gcc for cgo
 RUN apt-get update && apt-get install -y --no-install-recommends \
@@ -17,7 +17,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
 
 ENV PATH /usr/local/go/bin:$PATH
 
-ENV GOLANG_VERSION 1.17rc2
+ENV GOLANG_VERSION 1.17
 
 RUN set -eux; \
 	\
@@ -25,34 +25,34 @@ RUN set -eux; \
 	url=; \
 	case "${dpkgArch##*-}" in \
 		'amd64') \
-			url='https://dl.google.com/go/go1.17rc2.linux-amd64.tar.gz'; \
-			sha256='328235edc7c7d2a51d6c6cb4d7ff97e97357654ef9e1098b9a4603a9d278ad04'; \
+			url='https://dl.google.com/go/go1.17.linux-amd64.tar.gz'; \
+			sha256='6bf89fc4f5ad763871cf7eac80a2d594492de7a818303283f1366a7f6a30372d'; \
 			;; \
 		'armel') \
 			export GOARCH='arm' GOARM='5' GOOS='linux'; \
 			;; \
 		'armhf') \
-			url='https://dl.google.com/go/go1.17rc2.linux-armv6l.tar.gz'; \
-			sha256='4820fcd80b47e7d7dc1f15343c4fb59e66183cef9dadb3d3ac10f82615ad2141'; \
+			url='https://dl.google.com/go/go1.17.linux-armv6l.tar.gz'; \
+			sha256='ae89d33f4e4acc222bdb04331933d5ece4ae71039812f6ccd7493cb3e8ddfb4e'; \
 			;; \
 		'arm64') \
-			url='https://dl.google.com/go/go1.17rc2.linux-arm64.tar.gz'; \
-			sha256='4e1b335c53bf28cd20c5f7f2f7e79187b93e71c1d027448e313097785efb673d'; \
+			url='https://dl.google.com/go/go1.17.linux-arm64.tar.gz'; \
+			sha256='01a9af009ada22122d3fcb9816049c1d21842524b38ef5d5a0e2ee4b26d7c3e7'; \
 			;; \
 		'i386') \
-			url='https://dl.google.com/go/go1.17rc2.linux-386.tar.gz'; \
-			sha256='273fd4647d2311e3044d3d937eedbee91477317d867b6c81636fdc0a9ba7f947'; \
+			url='https://dl.google.com/go/go1.17.linux-386.tar.gz'; \
+			sha256='c19e3227a6ac6329db91d1af77bbf239ccd760a259c16e6b9c932d527ff14848'; \
 			;; \
 		'mips64el') \
 			export GOARCH='mips64le' GOOS='linux'; \
 			;; \
 		'ppc64el') \
-			url='https://dl.google.com/go/go1.17rc2.linux-ppc64le.tar.gz'; \
-			sha256='57fd15f97e4fccc3227d07423baca2b3e44fb2c1b12a35f8cda8a453867ca1b6'; \
+			url='https://dl.google.com/go/go1.17.linux-ppc64le.tar.gz'; \
+			sha256='ee84350114d532bf15f096198c675aafae9ff091dc4cc69eb49e1817ff94dbd7'; \
 			;; \
 		's390x') \
-			url='https://dl.google.com/go/go1.17rc2.linux-s390x.tar.gz'; \
-			sha256='be3a78ae162eac193fc66b0ed50f56c75c5a1506c6b631a1f2af3d4e700816fe'; \
+			url='https://dl.google.com/go/go1.17.linux-s390x.tar.gz'; \
+			sha256='a50aaecf054f393575f969a9105d5c6864dd91afc5287d772449033fbafcf7e3'; \
 			;; \
 		*) echo >&2 "error: unsupported architecture '$dpkgArch' (likely packaging update needed)"; exit 1 ;; \
 	esac; \
@@ -60,8 +60,8 @@ RUN set -eux; \
 	if [ -z "$url" ]; then \
 # https://github.com/golang/go/issues/38536#issuecomment-616897960
 		build=1; \
-		url='https://dl.google.com/go/go1.17rc2.src.tar.gz'; \
-		sha256='5ab21d75552390c63087518e4eba2972fb009aea97ff2bcc42dff264c5f46fe9'; \
+		url='https://dl.google.com/go/go1.17.src.tar.gz'; \
+		sha256='3a70e5055509f347c0fb831ca07a2bf3b531068f349b14a3c652e9b5b67beb5d'; \
 		echo >&2; \
 		echo >&2 "warning: current architecture ($dpkgArch) does not have a corresponding Go binary release; will be building from source"; \
 		echo >&2; \
diff --git a/golang_buster/Dockerfile b/golang_buster/Dockerfile
index 7ee404f..298872b 100644
--- a/golang_buster/Dockerfile
+++ b/golang_buster/Dockerfile
@@ -17,7 +17,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
 
 ENV PATH /usr/local/go/bin:$PATH
 
-ENV GOLANG_VERSION 1.16.7
+ENV GOLANG_VERSION 1.17
 
 RUN set -eux; \
 	\
@@ -25,34 +25,34 @@ RUN set -eux; \
 	url=; \
 	case "${dpkgArch##*-}" in \
 		'amd64') \
-			url='https://dl.google.com/go/go1.16.7.linux-amd64.tar.gz'; \
-			sha256='7fe7a73f55ba3e2285da36f8b085e5c0159e9564ef5f63ee0ed6b818ade8ef04'; \
+			url='https://dl.google.com/go/go1.17.linux-amd64.tar.gz'; \
+			sha256='6bf89fc4f5ad763871cf7eac80a2d594492de7a818303283f1366a7f6a30372d'; \
 			;; \
 		'armel') \
 			export GOARCH='arm' GOARM='5' GOOS='linux'; \
 			;; \
 		'armhf') \
-			url='https://dl.google.com/go/go1.16.7.linux-armv6l.tar.gz'; \
-			sha256='b2973ceeae234866368baf9469fb7b9444857e50dc785ba879d98a0aa208a12b'; \
+			url='https://dl.google.com/go/go1.17.linux-armv6l.tar.gz'; \
+			sha256='ae89d33f4e4acc222bdb04331933d5ece4ae71039812f6ccd7493cb3e8ddfb4e'; \
 			;; \
 		'arm64') \
-			url='https://dl.google.com/go/go1.16.7.linux-arm64.tar.gz'; \
-			sha256='63d6b53ecbd2b05c1f0e9903c92042663f2f68afdbb67f4d0d12700156869bac'; \
+			url='https://dl.google.com/go/go1.17.linux-arm64.tar.gz'; \
+			sha256='01a9af009ada22122d3fcb9816049c1d21842524b38ef5d5a0e2ee4b26d7c3e7'; \
 			;; \
 		'i386') \
-			url='https://dl.google.com/go/go1.16.7.linux-386.tar.gz'; \
-			sha256='5c0c8891fa88993f2193fbc9dd5cca6c250c89aa8c12bbaa382b6ff38139bcc3'; \
+			url='https://dl.google.com/go/go1.17.linux-386.tar.gz'; \
+			sha256='c19e3227a6ac6329db91d1af77bbf239ccd760a259c16e6b9c932d527ff14848'; \
 			;; \
 		'mips64el') \
 			export GOARCH='mips64le' GOOS='linux'; \
 			;; \
 		'ppc64el') \
-			url='https://dl.google.com/go/go1.16.7.linux-ppc64le.tar.gz'; \
-			sha256='03e02b2ac6dc1601203f335385b9bbe15a55677066d9a1a1280b5fcfa6ec4738'; \
+			url='https://dl.google.com/go/go1.17.linux-ppc64le.tar.gz'; \
+			sha256='ee84350114d532bf15f096198c675aafae9ff091dc4cc69eb49e1817ff94dbd7'; \
 			;; \
 		's390x') \
-			url='https://dl.google.com/go/go1.16.7.linux-s390x.tar.gz'; \
-			sha256='5f691c9551710ebb17bbda04389944aa7332f42ab28f92516a69fbd7860e7e9f'; \
+			url='https://dl.google.com/go/go1.17.linux-s390x.tar.gz'; \
+			sha256='a50aaecf054f393575f969a9105d5c6864dd91afc5287d772449033fbafcf7e3'; \
 			;; \
 		*) echo >&2 "error: unsupported architecture '$dpkgArch' (likely packaging update needed)"; exit 1 ;; \
 	esac; \
@@ -60,8 +60,8 @@ RUN set -eux; \
 	if [ -z "$url" ]; then \
 # https://github.com/golang/go/issues/38536#issuecomment-616897960
 		build=1; \
-		url='https://dl.google.com/go/go1.16.7.src.tar.gz'; \
-		sha256='1a9f2894d3d878729f7045072f30becebe243524cf2fce4e0a7b248b1e0654ac'; \
+		url='https://dl.google.com/go/go1.17.src.tar.gz'; \
+		sha256='3a70e5055509f347c0fb831ca07a2bf3b531068f349b14a3c652e9b5b67beb5d'; \
 		echo >&2; \
 		echo >&2 "warning: current architecture ($dpkgArch) does not have a corresponding Go binary release; will be building from source"; \
 		echo >&2; \
diff --git a/golang_nanoserver-1809/Dockerfile b/golang_nanoserver-1809/Dockerfile
index f9768c3..f919582 100644
--- a/golang_nanoserver-1809/Dockerfile
+++ b/golang_nanoserver-1809/Dockerfile
@@ -11,20 +11,20 @@ SHELL ["cmd", "/S", "/C"]
 # no Git installed (intentionally)
 #  -- Nano Server is "Windows Slim"
 
-# ideally, this would be C:\go to match Linux a bit closer, but C:\go was the default install path for Go itself on Windows
-ENV GOPATH C:\\gopath
-# (https://golang.org/cl/283600)
+# for 1.17+, we'll follow the (new) Go upstream default for install (https://golang.org/cl/283600), which frees up C:\go to be the default GOPATH and thus match the Linux images more closely (https://github.com/docker-library/golang/issues/288)
+ENV GOPATH C:\\go
+# HOWEVER, please note that it is the Go upstream intention to remove GOPATH support entirely: https://blog.golang.org/go116-module-changes
 
 # PATH isn't actually set in the Docker image, so we have to set it from within the container
 USER ContainerAdministrator
-RUN setx /m PATH "%GOPATH%\bin;C:\go\bin;%PATH%"
+RUN setx /m PATH "%GOPATH%\bin;C:\Program Files\Go\bin;%PATH%"
 USER ContainerUser
 # doing this first to share cache across versions more aggressively
 
-ENV GOLANG_VERSION 1.16.7
+ENV GOLANG_VERSION 1.17
 
 # Docker's Windows path parsing is absolutely *cursed*; please just trust me on this one -Tianon
-COPY --from=golang:1.16.7-windowsservercore-1809 ["C:\\\\go","C:\\\\go"]
+COPY --from=golang:1.17-windowsservercore-1809 ["C:\\\\Program Files\\\\Go","C:\\\\Program Files\\\\Go"]
 RUN go version
 
 WORKDIR $GOPATH
diff --git a/golang_rc-alpine/Dockerfile b/golang_rc-alpine/Dockerfile
deleted file mode 100644
index 21a0144..0000000
diff --git a/golang_rc-alpine3.13/Dockerfile b/golang_rc-alpine3.13/Dockerfile
deleted file mode 100644
index 8e4d651..0000000
diff --git a/golang_rc-nanoserver-1809/Dockerfile b/golang_rc-nanoserver-1809/Dockerfile
deleted file mode 100644
index 8b7c286..0000000
diff --git a/golang_rc-stretch/Dockerfile b/golang_rc-stretch/Dockerfile
deleted file mode 100644
index 27e97e8..0000000
diff --git a/golang_rc-windowsservercore-1809/Dockerfile b/golang_rc-windowsservercore-1809/Dockerfile
deleted file mode 100644
index cddec56..0000000
diff --git a/golang_rc-windowsservercore-ltsc2016/Dockerfile b/golang_rc-windowsservercore-ltsc2016/Dockerfile
deleted file mode 100644
index 32fc88f..0000000
diff --git a/golang_stretch/Dockerfile b/golang_stretch/Dockerfile
index 1ea99ba..5c30f1a 100644
--- a/golang_stretch/Dockerfile
+++ b/golang_stretch/Dockerfile
@@ -17,7 +17,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
 
 ENV PATH /usr/local/go/bin:$PATH
 
-ENV GOLANG_VERSION 1.16.7
+ENV GOLANG_VERSION 1.17
 
 RUN set -eux; \
 	\
@@ -25,34 +25,34 @@ RUN set -eux; \
 	url=; \
 	case "${dpkgArch##*-}" in \
 		'amd64') \
-			url='https://dl.google.com/go/go1.16.7.linux-amd64.tar.gz'; \
-			sha256='7fe7a73f55ba3e2285da36f8b085e5c0159e9564ef5f63ee0ed6b818ade8ef04'; \
+			url='https://dl.google.com/go/go1.17.linux-amd64.tar.gz'; \
+			sha256='6bf89fc4f5ad763871cf7eac80a2d594492de7a818303283f1366a7f6a30372d'; \
 			;; \
 		'armel') \
 			export GOARCH='arm' GOARM='5' GOOS='linux'; \
 			;; \
 		'armhf') \
-			url='https://dl.google.com/go/go1.16.7.linux-armv6l.tar.gz'; \
-			sha256='b2973ceeae234866368baf9469fb7b9444857e50dc785ba879d98a0aa208a12b'; \
+			url='https://dl.google.com/go/go1.17.linux-armv6l.tar.gz'; \
+			sha256='ae89d33f4e4acc222bdb04331933d5ece4ae71039812f6ccd7493cb3e8ddfb4e'; \
 			;; \
 		'arm64') \
-			url='https://dl.google.com/go/go1.16.7.linux-arm64.tar.gz'; \
-			sha256='63d6b53ecbd2b05c1f0e9903c92042663f2f68afdbb67f4d0d12700156869bac'; \
+			url='https://dl.google.com/go/go1.17.linux-arm64.tar.gz'; \
+			sha256='01a9af009ada22122d3fcb9816049c1d21842524b38ef5d5a0e2ee4b26d7c3e7'; \
 			;; \
 		'i386') \
-			url='https://dl.google.com/go/go1.16.7.linux-386.tar.gz'; \
-			sha256='5c0c8891fa88993f2193fbc9dd5cca6c250c89aa8c12bbaa382b6ff38139bcc3'; \
+			url='https://dl.google.com/go/go1.17.linux-386.tar.gz'; \
+			sha256='c19e3227a6ac6329db91d1af77bbf239ccd760a259c16e6b9c932d527ff14848'; \
 			;; \
 		'mips64el') \
 			export GOARCH='mips64le' GOOS='linux'; \
 			;; \
 		'ppc64el') \
-			url='https://dl.google.com/go/go1.16.7.linux-ppc64le.tar.gz'; \
-			sha256='03e02b2ac6dc1601203f335385b9bbe15a55677066d9a1a1280b5fcfa6ec4738'; \
+			url='https://dl.google.com/go/go1.17.linux-ppc64le.tar.gz'; \
+			sha256='ee84350114d532bf15f096198c675aafae9ff091dc4cc69eb49e1817ff94dbd7'; \
 			;; \
 		's390x') \
-			url='https://dl.google.com/go/go1.16.7.linux-s390x.tar.gz'; \
-			sha256='5f691c9551710ebb17bbda04389944aa7332f42ab28f92516a69fbd7860e7e9f'; \
+			url='https://dl.google.com/go/go1.17.linux-s390x.tar.gz'; \
+			sha256='a50aaecf054f393575f969a9105d5c6864dd91afc5287d772449033fbafcf7e3'; \
 			;; \
 		*) echo >&2 "error: unsupported architecture '$dpkgArch' (likely packaging update needed)"; exit 1 ;; \
 	esac; \
@@ -60,8 +60,8 @@ RUN set -eux; \
 	if [ -z "$url" ]; then \
 # https://github.com/golang/go/issues/38536#issuecomment-616897960
 		build=1; \
-		url='https://dl.google.com/go/go1.16.7.src.tar.gz'; \
-		sha256='1a9f2894d3d878729f7045072f30becebe243524cf2fce4e0a7b248b1e0654ac'; \
+		url='https://dl.google.com/go/go1.17.src.tar.gz'; \
+		sha256='3a70e5055509f347c0fb831ca07a2bf3b531068f349b14a3c652e9b5b67beb5d'; \
 		echo >&2; \
 		echo >&2 "warning: current architecture ($dpkgArch) does not have a corresponding Go binary release; will be building from source"; \
 		echo >&2; \
diff --git a/golang_windowsservercore-1809/Dockerfile b/golang_windowsservercore-1809/Dockerfile
index 7bc1c74..f45ea71 100644
--- a/golang_windowsservercore-1809/Dockerfile
+++ b/golang_windowsservercore-1809/Dockerfile
@@ -43,23 +43,23 @@ RUN Write-Host ('Downloading {0} ...' -f $env:GIT_DOWNLOAD_URL); \
 	\
 	Write-Host 'Complete.';
 
-# ideally, this would be C:\go to match Linux a bit closer, but C:\go was the default install path for Go itself on Windows
-ENV GOPATH C:\\gopath
-# (https://golang.org/cl/283600)
+# for 1.17+, we'll follow the (new) Go upstream default for install (https://golang.org/cl/283600), which frees up C:\go to be the default GOPATH and thus match the Linux images more closely (https://github.com/docker-library/golang/issues/288)
+ENV GOPATH C:\\go
+# HOWEVER, please note that it is the Go upstream intention to remove GOPATH support entirely: https://blog.golang.org/go116-module-changes
 
 # PATH isn't actually set in the Docker image, so we have to set it from within the container
-RUN $newPath = ('{0}\bin;C:\go\bin;{1}' -f $env:GOPATH, $env:PATH); \
+RUN $newPath = ('{0}\bin;C:\Program Files\Go\bin;{1}' -f $env:GOPATH, $env:PATH); \
 	Write-Host ('Updating PATH: {0}' -f $newPath); \
 	[Environment]::SetEnvironmentVariable('PATH', $newPath, [EnvironmentVariableTarget]::Machine);
 # doing this first to share cache across versions more aggressively
 
-ENV GOLANG_VERSION 1.16.7
+ENV GOLANG_VERSION 1.17
 
-RUN $url = 'https://dl.google.com/go/go1.16.7.windows-amd64.zip'; \
+RUN $url = 'https://dl.google.com/go/go1.17.windows-amd64.zip'; \
 	Write-Host ('Downloading {0} ...' -f $url); \
 	Invoke-WebRequest -Uri $url -OutFile 'go.zip'; \
 	\
-	$sha256 = '56b3a9024268f226f679c3a8ffb21f4214a75f84050b2c395b362ae2cc8e53e9'; \
+	$sha256 = '2a18bd65583e221be8b9b7c2fbe3696c40f6e27c2df689bbdcc939d49651d151'; \
 	Write-Host ('Verifying sha256 ({0}) ...' -f $sha256); \
 	if ((Get-FileHash go.zip -Algorithm sha256).Hash -ne $sha256) { \
 		Write-Host 'FAILED!'; \
@@ -69,6 +69,9 @@ RUN $url = 'https://dl.google.com/go/go1.16.7.windows-amd64.zip'; \
 	Write-Host 'Expanding ...'; \
 	Expand-Archive go.zip -DestinationPath C:\; \
 	\
+	Write-Host 'Moving ...'; \
+	Move-Item -Path C:\go -Destination 'C:\Program Files\Go'; \
+	\
 	Write-Host 'Removing ...'; \
 	Remove-Item go.zip -Force; \
 	\
diff --git a/golang_windowsservercore-ltsc2016/Dockerfile b/golang_windowsservercore-ltsc2016/Dockerfile
index e8e7335..7e0a5cd 100644
--- a/golang_windowsservercore-ltsc2016/Dockerfile
+++ b/golang_windowsservercore-ltsc2016/Dockerfile
@@ -43,23 +43,23 @@ RUN Write-Host ('Downloading {0} ...' -f $env:GIT_DOWNLOAD_URL); \
 	\
 	Write-Host 'Complete.';
 
-# ideally, this would be C:\go to match Linux a bit closer, but C:\go was the default install path for Go itself on Windows
-ENV GOPATH C:\\gopath
-# (https://golang.org/cl/283600)
+# for 1.17+, we'll follow the (new) Go upstream default for install (https://golang.org/cl/283600), which frees up C:\go to be the default GOPATH and thus match the Linux images more closely (https://github.com/docker-library/golang/issues/288)
+ENV GOPATH C:\\go
+# HOWEVER, please note that it is the Go upstream intention to remove GOPATH support entirely: https://blog.golang.org/go116-module-changes
 
 # PATH isn't actually set in the Docker image, so we have to set it from within the container
-RUN $newPath = ('{0}\bin;C:\go\bin;{1}' -f $env:GOPATH, $env:PATH); \
+RUN $newPath = ('{0}\bin;C:\Program Files\Go\bin;{1}' -f $env:GOPATH, $env:PATH); \
 	Write-Host ('Updating PATH: {0}' -f $newPath); \
 	[Environment]::SetEnvironmentVariable('PATH', $newPath, [EnvironmentVariableTarget]::Machine);
 # doing this first to share cache across versions more aggressively
 
-ENV GOLANG_VERSION 1.16.7
+ENV GOLANG_VERSION 1.17
 
-RUN $url = 'https://dl.google.com/go/go1.16.7.windows-amd64.zip'; \
+RUN $url = 'https://dl.google.com/go/go1.17.windows-amd64.zip'; \
 	Write-Host ('Downloading {0} ...' -f $url); \
 	Invoke-WebRequest -Uri $url -OutFile 'go.zip'; \
 	\
-	$sha256 = '56b3a9024268f226f679c3a8ffb21f4214a75f84050b2c395b362ae2cc8e53e9'; \
+	$sha256 = '2a18bd65583e221be8b9b7c2fbe3696c40f6e27c2df689bbdcc939d49651d151'; \
 	Write-Host ('Verifying sha256 ({0}) ...' -f $sha256); \
 	if ((Get-FileHash go.zip -Algorithm sha256).Hash -ne $sha256) { \
 		Write-Host 'FAILED!'; \
@@ -69,6 +69,9 @@ RUN $url = 'https://dl.google.com/go/go1.16.7.windows-amd64.zip'; \
 	Write-Host 'Expanding ...'; \
 	Expand-Archive go.zip -DestinationPath C:\; \
 	\
+	Write-Host 'Moving ...'; \
+	Move-Item -Path C:\go -Destination 'C:\Program Files\Go'; \
+	\
 	Write-Host 'Removing ...'; \
 	Remove-Item go.zip -Force; \
 	\

@yosifkit
Copy link
Member

WARNING: this will likely not be available for a bit since the build queue will be very full due to the bullseye release and thus a rebuild of all Debian based images (#10730)

Watch the jobs in https://doi-janky.infosiftr.net/job/multiarch/view/images/view/golang/ for the architecture of your choice to see when it gets build an pushed to the architecture-specific namespace (e.g. https://hub.docker.com/r/amd64/golang). Once it is there, it will be a short while later that it'll then be at https://hub.docker.com/_/golang in the multi-architecture manifest. See also our FAQ entry for An image's source changed in Git, now what?.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants