From 6f4696d322b54396301b59e672ec35f39f862842 Mon Sep 17 00:00:00 2001 From: Joe Ferguson Date: Tue, 2 Aug 2022 10:43:10 -0700 Subject: [PATCH] Add 1.19 release; drop 1.17 --- 1.17/alpine3.15/Dockerfile | 112 --------- 1.17/alpine3.16/Dockerfile | 112 --------- 1.17/bullseye/Dockerfile | 125 ---------- 1.17/buster/Dockerfile | 125 ---------- .../windows/windowsservercore-1809/Dockerfile | 84 ------- .../windowsservercore-ltsc2022/Dockerfile | 84 ------- 1.19-rc/windows/nanoserver-1809/Dockerfile | 30 --- .../windows/nanoserver-ltsc2022/Dockerfile | 30 --- {1.19-rc => 1.19}/alpine3.15/Dockerfile | 6 +- {1.19-rc => 1.19}/alpine3.16/Dockerfile | 6 +- {1.19-rc => 1.19}/bullseye/Dockerfile | 30 +-- {1.19-rc => 1.19}/buster/Dockerfile | 30 +-- .../windows/nanoserver-1809/Dockerfile | 4 +- .../windows/nanoserver-ltsc2022/Dockerfile | 4 +- .../windows/windowsservercore-1809/Dockerfile | 6 +- .../windowsservercore-ltsc2022/Dockerfile | 6 +- Dockerfile-linux.template | 2 +- generate-stackbrew-library.sh | 2 +- versions.json | 228 +++--------------- versions.sh | 2 +- 20 files changed, 81 insertions(+), 947 deletions(-) delete mode 100644 1.17/alpine3.15/Dockerfile delete mode 100644 1.17/alpine3.16/Dockerfile delete mode 100644 1.17/bullseye/Dockerfile delete mode 100644 1.17/buster/Dockerfile delete mode 100644 1.17/windows/windowsservercore-1809/Dockerfile delete mode 100644 1.17/windows/windowsservercore-ltsc2022/Dockerfile delete mode 100644 1.19-rc/windows/nanoserver-1809/Dockerfile delete mode 100644 1.19-rc/windows/nanoserver-ltsc2022/Dockerfile rename {1.19-rc => 1.19}/alpine3.15/Dockerfile (95%) rename {1.19-rc => 1.19}/alpine3.16/Dockerfile (95%) rename {1.19-rc => 1.19}/bullseye/Dockerfile (74%) rename {1.19-rc => 1.19}/buster/Dockerfile (74%) rename {1.17 => 1.19}/windows/nanoserver-1809/Dockerfile (88%) rename {1.17 => 1.19}/windows/nanoserver-ltsc2022/Dockerfile (88%) rename {1.19-rc => 1.19}/windows/windowsservercore-1809/Dockerfile (95%) rename {1.19-rc => 1.19}/windows/windowsservercore-ltsc2022/Dockerfile (95%) diff --git a/1.17/alpine3.15/Dockerfile b/1.17/alpine3.15/Dockerfile deleted file mode 100644 index 4369e857..00000000 --- a/1.17/alpine3.15/Dockerfile +++ /dev/null @@ -1,112 +0,0 @@ -# -# NOTE: THIS DOCKERFILE IS GENERATED VIA "apply-templates.sh" -# -# PLEASE DO NOT EDIT IT DIRECTLY. -# - -FROM alpine:3.15 - -RUN apk add --no-cache ca-certificates - -# set up nsswitch.conf for Go's "netgo" implementation -# - https://github.com/golang/go/blob/go1.9.1/src/net/conf.go#L194-L275 -# - docker run --rm debian grep '^hosts:' /etc/nsswitch.conf -RUN [ ! -e /etc/nsswitch.conf ] && echo 'hosts: files dns' > /etc/nsswitch.conf - -ENV PATH /usr/local/go/bin:$PATH - -ENV GOLANG_VERSION 1.17.13 - -RUN set -eux; \ - apk add --no-cache --virtual .fetch-deps gnupg; \ - arch="$(apk --print-arch)"; \ - url=; \ - case "$arch" in \ - 'x86_64') \ - export GOARCH='amd64' GOOS='linux'; \ - ;; \ - 'armhf') \ - export GOARCH='arm' GOARM='6' GOOS='linux'; \ - ;; \ - 'armv7') \ - export GOARCH='arm' GOARM='7' GOOS='linux'; \ - ;; \ - 'aarch64') \ - export GOARCH='arm64' GOOS='linux'; \ - ;; \ - 'x86') \ - export GO386='softfloat' GOARCH='386' GOOS='linux'; \ - ;; \ - 'ppc64le') \ - export GOARCH='ppc64le' GOOS='linux'; \ - ;; \ - 's390x') \ - export GOARCH='s390x' GOOS='linux'; \ - ;; \ - *) echo >&2 "error: unsupported architecture '$arch' (likely packaging update needed)"; exit 1 ;; \ - esac; \ - build=; \ - if [ -z "$url" ]; then \ -# https://github.com/golang/go/issues/38536#issuecomment-616897960 - build=1; \ - url='https://dl.google.com/go/go1.17.13.src.tar.gz'; \ - sha256='a1a48b23afb206f95e7bbaa9b898d965f90826f6f1d1fc0c1d784ada0cd300fd'; \ -# the precompiled binaries published by Go upstream are not compatible with Alpine, so we always build from source here 😅 - fi; \ - \ - wget -O go.tgz.asc "$url.asc"; \ - wget -O go.tgz "$url"; \ - echo "$sha256 *go.tgz" | sha256sum -c -; \ - \ -# https://github.com/golang/go/issues/14739#issuecomment-324767697 - GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; \ -# https://www.google.com/linuxrepositories/ - gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 'EB4C 1BFD 4F04 2F6D DDCC EC91 7721 F63B D38B 4796'; \ -# let's also fetch the specific subkey of that key explicitly that we expect "go.tgz.asc" to be signed by, just to make sure we definitely have it - gpg --batch --keyserver keyserver.ubuntu.com --recv-keys '2F52 8D36 D67B 69ED F998 D857 78BD 6547 3CB3 BD13'; \ - gpg --batch --verify go.tgz.asc go.tgz; \ - gpgconf --kill all; \ - rm -rf "$GNUPGHOME" go.tgz.asc; \ - \ - tar -C /usr/local -xzf go.tgz; \ - rm go.tgz; \ - \ - if [ -n "$build" ]; then \ - apk add --no-cache --virtual .build-deps \ - bash \ - gcc \ - go \ - musl-dev \ - ; \ - \ - export GOCACHE='/tmp/gocache'; \ - \ - ( \ - cd /usr/local/go/src; \ -# set GOROOT_BOOTSTRAP + GOHOST* such that we can build Go successfully - export GOROOT_BOOTSTRAP="$(go env GOROOT)" GOHOSTOS="$GOOS" GOHOSTARCH="$GOARCH"; \ - ./make.bash; \ - ); \ - \ - apk del --no-network .build-deps; \ - \ -# remove a few intermediate / bootstrapping files the official binary release tarballs do not contain - rm -rf \ - /usr/local/go/pkg/*/cmd \ - /usr/local/go/pkg/bootstrap \ - /usr/local/go/pkg/obj \ - /usr/local/go/pkg/tool/*/api \ - /usr/local/go/pkg/tool/*/go_bootstrap \ - /usr/local/go/src/cmd/dist/dist \ - "$GOCACHE" \ - ; \ - fi; \ - \ - apk del --no-network .fetch-deps; \ - \ - go version - -ENV GOPATH /go -ENV PATH $GOPATH/bin:$PATH -RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 777 "$GOPATH" -WORKDIR $GOPATH diff --git a/1.17/alpine3.16/Dockerfile b/1.17/alpine3.16/Dockerfile deleted file mode 100644 index 84926b21..00000000 --- a/1.17/alpine3.16/Dockerfile +++ /dev/null @@ -1,112 +0,0 @@ -# -# NOTE: THIS DOCKERFILE IS GENERATED VIA "apply-templates.sh" -# -# PLEASE DO NOT EDIT IT DIRECTLY. -# - -FROM alpine:3.16 - -RUN apk add --no-cache ca-certificates - -# set up nsswitch.conf for Go's "netgo" implementation -# - https://github.com/golang/go/blob/go1.9.1/src/net/conf.go#L194-L275 -# - docker run --rm debian grep '^hosts:' /etc/nsswitch.conf -RUN [ ! -e /etc/nsswitch.conf ] && echo 'hosts: files dns' > /etc/nsswitch.conf - -ENV PATH /usr/local/go/bin:$PATH - -ENV GOLANG_VERSION 1.17.13 - -RUN set -eux; \ - apk add --no-cache --virtual .fetch-deps gnupg; \ - arch="$(apk --print-arch)"; \ - url=; \ - case "$arch" in \ - 'x86_64') \ - export GOARCH='amd64' GOOS='linux'; \ - ;; \ - 'armhf') \ - export GOARCH='arm' GOARM='6' GOOS='linux'; \ - ;; \ - 'armv7') \ - export GOARCH='arm' GOARM='7' GOOS='linux'; \ - ;; \ - 'aarch64') \ - export GOARCH='arm64' GOOS='linux'; \ - ;; \ - 'x86') \ - export GO386='softfloat' GOARCH='386' GOOS='linux'; \ - ;; \ - 'ppc64le') \ - export GOARCH='ppc64le' GOOS='linux'; \ - ;; \ - 's390x') \ - export GOARCH='s390x' GOOS='linux'; \ - ;; \ - *) echo >&2 "error: unsupported architecture '$arch' (likely packaging update needed)"; exit 1 ;; \ - esac; \ - build=; \ - if [ -z "$url" ]; then \ -# https://github.com/golang/go/issues/38536#issuecomment-616897960 - build=1; \ - url='https://dl.google.com/go/go1.17.13.src.tar.gz'; \ - sha256='a1a48b23afb206f95e7bbaa9b898d965f90826f6f1d1fc0c1d784ada0cd300fd'; \ -# the precompiled binaries published by Go upstream are not compatible with Alpine, so we always build from source here 😅 - fi; \ - \ - wget -O go.tgz.asc "$url.asc"; \ - wget -O go.tgz "$url"; \ - echo "$sha256 *go.tgz" | sha256sum -c -; \ - \ -# https://github.com/golang/go/issues/14739#issuecomment-324767697 - GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; \ -# https://www.google.com/linuxrepositories/ - gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 'EB4C 1BFD 4F04 2F6D DDCC EC91 7721 F63B D38B 4796'; \ -# let's also fetch the specific subkey of that key explicitly that we expect "go.tgz.asc" to be signed by, just to make sure we definitely have it - gpg --batch --keyserver keyserver.ubuntu.com --recv-keys '2F52 8D36 D67B 69ED F998 D857 78BD 6547 3CB3 BD13'; \ - gpg --batch --verify go.tgz.asc go.tgz; \ - gpgconf --kill all; \ - rm -rf "$GNUPGHOME" go.tgz.asc; \ - \ - tar -C /usr/local -xzf go.tgz; \ - rm go.tgz; \ - \ - if [ -n "$build" ]; then \ - apk add --no-cache --virtual .build-deps \ - bash \ - gcc \ - go \ - musl-dev \ - ; \ - \ - export GOCACHE='/tmp/gocache'; \ - \ - ( \ - cd /usr/local/go/src; \ -# set GOROOT_BOOTSTRAP + GOHOST* such that we can build Go successfully - export GOROOT_BOOTSTRAP="$(go env GOROOT)" GOHOSTOS="$GOOS" GOHOSTARCH="$GOARCH"; \ - ./make.bash; \ - ); \ - \ - apk del --no-network .build-deps; \ - \ -# remove a few intermediate / bootstrapping files the official binary release tarballs do not contain - rm -rf \ - /usr/local/go/pkg/*/cmd \ - /usr/local/go/pkg/bootstrap \ - /usr/local/go/pkg/obj \ - /usr/local/go/pkg/tool/*/api \ - /usr/local/go/pkg/tool/*/go_bootstrap \ - /usr/local/go/src/cmd/dist/dist \ - "$GOCACHE" \ - ; \ - fi; \ - \ - apk del --no-network .fetch-deps; \ - \ - go version - -ENV GOPATH /go -ENV PATH $GOPATH/bin:$PATH -RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 777 "$GOPATH" -WORKDIR $GOPATH diff --git a/1.17/bullseye/Dockerfile b/1.17/bullseye/Dockerfile deleted file mode 100644 index 115b45a0..00000000 --- a/1.17/bullseye/Dockerfile +++ /dev/null @@ -1,125 +0,0 @@ -# -# NOTE: THIS DOCKERFILE IS GENERATED VIA "apply-templates.sh" -# -# PLEASE DO NOT EDIT IT DIRECTLY. -# - -FROM buildpack-deps:bullseye-scm - -# install cgo-related dependencies -RUN set -eux; \ - apt-get update; \ - apt-get install -y --no-install-recommends \ - g++ \ - gcc \ - libc6-dev \ - make \ - pkg-config \ - ; \ - rm -rf /var/lib/apt/lists/* - -ENV PATH /usr/local/go/bin:$PATH - -ENV GOLANG_VERSION 1.17.13 - -RUN set -eux; \ - arch="$(dpkg --print-architecture)"; arch="${arch##*-}"; \ - url=; \ - case "$arch" in \ - 'amd64') \ - url='https://dl.google.com/go/go1.17.13.linux-amd64.tar.gz'; \ - sha256='4cdd2bc664724dc7db94ad51b503512c5ae7220951cac568120f64f8e94399fc'; \ - ;; \ - 'armel') \ - export GOARCH='arm' GOARM='5' GOOS='linux'; \ - ;; \ - 'armhf') \ - url='https://dl.google.com/go/go1.17.13.linux-armv6l.tar.gz'; \ - sha256='260431d7deeb8893c21e71fcbbb1fde3258616d8eba584c8d72060228ab42c86'; \ - ;; \ - 'arm64') \ - url='https://dl.google.com/go/go1.17.13.linux-arm64.tar.gz'; \ - sha256='914daad3f011cc2014dea799bb7490442677e4ad6de0b2ac3ded6cee7e3f493d'; \ - ;; \ - 'i386') \ - url='https://dl.google.com/go/go1.17.13.linux-386.tar.gz'; \ - sha256='5e02f35aecc6b89679f631e0edf12c49922dd31c8140cf8dd725c5797a9f2425'; \ - ;; \ - 'mips64el') \ - export GOARCH='mips64le' GOOS='linux'; \ - ;; \ - 'ppc64el') \ - url='https://dl.google.com/go/go1.17.13.linux-ppc64le.tar.gz'; \ - sha256='bd0763fb130f8412672ffe1e4a8e65888ebe2419e5caa9a67ac21e8c298aa254'; \ - ;; \ - 's390x') \ - url='https://dl.google.com/go/go1.17.13.linux-s390x.tar.gz'; \ - sha256='08f6074e1e106cbe5d78622357db71a93648c7a4c4e4b02e3b5f2a1828914c76'; \ - ;; \ - *) echo >&2 "error: unsupported architecture '$arch' (likely packaging update needed)"; exit 1 ;; \ - esac; \ - build=; \ - if [ -z "$url" ]; then \ -# https://github.com/golang/go/issues/38536#issuecomment-616897960 - build=1; \ - url='https://dl.google.com/go/go1.17.13.src.tar.gz'; \ - sha256='a1a48b23afb206f95e7bbaa9b898d965f90826f6f1d1fc0c1d784ada0cd300fd'; \ - echo >&2; \ - echo >&2 "warning: current architecture ($arch) does not have a compatible Go binary release; will be building from source"; \ - echo >&2; \ - fi; \ - \ - wget -O go.tgz.asc "$url.asc"; \ - wget -O go.tgz "$url" --progress=dot:giga; \ - echo "$sha256 *go.tgz" | sha256sum -c -; \ - \ -# https://github.com/golang/go/issues/14739#issuecomment-324767697 - GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; \ -# https://www.google.com/linuxrepositories/ - gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 'EB4C 1BFD 4F04 2F6D DDCC EC91 7721 F63B D38B 4796'; \ -# let's also fetch the specific subkey of that key explicitly that we expect "go.tgz.asc" to be signed by, just to make sure we definitely have it - gpg --batch --keyserver keyserver.ubuntu.com --recv-keys '2F52 8D36 D67B 69ED F998 D857 78BD 6547 3CB3 BD13'; \ - gpg --batch --verify go.tgz.asc go.tgz; \ - gpgconf --kill all; \ - rm -rf "$GNUPGHOME" go.tgz.asc; \ - \ - tar -C /usr/local -xzf go.tgz; \ - rm go.tgz; \ - \ - if [ -n "$build" ]; then \ - savedAptMark="$(apt-mark showmanual)"; \ - apt-get update; \ - apt-get install -y --no-install-recommends golang-go; \ - \ - export GOCACHE='/tmp/gocache'; \ - \ - ( \ - cd /usr/local/go/src; \ -# set GOROOT_BOOTSTRAP + GOHOST* such that we can build Go successfully - export GOROOT_BOOTSTRAP="$(go env GOROOT)" GOHOSTOS="$GOOS" GOHOSTARCH="$GOARCH"; \ - ./make.bash; \ - ); \ - \ - apt-mark auto '.*' > /dev/null; \ - apt-mark manual $savedAptMark > /dev/null; \ - apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \ - rm -rf /var/lib/apt/lists/*; \ - \ -# remove a few intermediate / bootstrapping files the official binary release tarballs do not contain - rm -rf \ - /usr/local/go/pkg/*/cmd \ - /usr/local/go/pkg/bootstrap \ - /usr/local/go/pkg/obj \ - /usr/local/go/pkg/tool/*/api \ - /usr/local/go/pkg/tool/*/go_bootstrap \ - /usr/local/go/src/cmd/dist/dist \ - "$GOCACHE" \ - ; \ - fi; \ - \ - go version - -ENV GOPATH /go -ENV PATH $GOPATH/bin:$PATH -RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 777 "$GOPATH" -WORKDIR $GOPATH diff --git a/1.17/buster/Dockerfile b/1.17/buster/Dockerfile deleted file mode 100644 index 1eaa3257..00000000 --- a/1.17/buster/Dockerfile +++ /dev/null @@ -1,125 +0,0 @@ -# -# NOTE: THIS DOCKERFILE IS GENERATED VIA "apply-templates.sh" -# -# PLEASE DO NOT EDIT IT DIRECTLY. -# - -FROM buildpack-deps:buster-scm - -# install cgo-related dependencies -RUN set -eux; \ - apt-get update; \ - apt-get install -y --no-install-recommends \ - g++ \ - gcc \ - libc6-dev \ - make \ - pkg-config \ - ; \ - rm -rf /var/lib/apt/lists/* - -ENV PATH /usr/local/go/bin:$PATH - -ENV GOLANG_VERSION 1.17.13 - -RUN set -eux; \ - arch="$(dpkg --print-architecture)"; arch="${arch##*-}"; \ - url=; \ - case "$arch" in \ - 'amd64') \ - url='https://dl.google.com/go/go1.17.13.linux-amd64.tar.gz'; \ - sha256='4cdd2bc664724dc7db94ad51b503512c5ae7220951cac568120f64f8e94399fc'; \ - ;; \ - 'armel') \ - export GOARCH='arm' GOARM='5' GOOS='linux'; \ - ;; \ - 'armhf') \ - url='https://dl.google.com/go/go1.17.13.linux-armv6l.tar.gz'; \ - sha256='260431d7deeb8893c21e71fcbbb1fde3258616d8eba584c8d72060228ab42c86'; \ - ;; \ - 'arm64') \ - url='https://dl.google.com/go/go1.17.13.linux-arm64.tar.gz'; \ - sha256='914daad3f011cc2014dea799bb7490442677e4ad6de0b2ac3ded6cee7e3f493d'; \ - ;; \ - 'i386') \ - url='https://dl.google.com/go/go1.17.13.linux-386.tar.gz'; \ - sha256='5e02f35aecc6b89679f631e0edf12c49922dd31c8140cf8dd725c5797a9f2425'; \ - ;; \ - 'mips64el') \ - export GOARCH='mips64le' GOOS='linux'; \ - ;; \ - 'ppc64el') \ - url='https://dl.google.com/go/go1.17.13.linux-ppc64le.tar.gz'; \ - sha256='bd0763fb130f8412672ffe1e4a8e65888ebe2419e5caa9a67ac21e8c298aa254'; \ - ;; \ - 's390x') \ - url='https://dl.google.com/go/go1.17.13.linux-s390x.tar.gz'; \ - sha256='08f6074e1e106cbe5d78622357db71a93648c7a4c4e4b02e3b5f2a1828914c76'; \ - ;; \ - *) echo >&2 "error: unsupported architecture '$arch' (likely packaging update needed)"; exit 1 ;; \ - esac; \ - build=; \ - if [ -z "$url" ]; then \ -# https://github.com/golang/go/issues/38536#issuecomment-616897960 - build=1; \ - url='https://dl.google.com/go/go1.17.13.src.tar.gz'; \ - sha256='a1a48b23afb206f95e7bbaa9b898d965f90826f6f1d1fc0c1d784ada0cd300fd'; \ - echo >&2; \ - echo >&2 "warning: current architecture ($arch) does not have a compatible Go binary release; will be building from source"; \ - echo >&2; \ - fi; \ - \ - wget -O go.tgz.asc "$url.asc"; \ - wget -O go.tgz "$url" --progress=dot:giga; \ - echo "$sha256 *go.tgz" | sha256sum -c -; \ - \ -# https://github.com/golang/go/issues/14739#issuecomment-324767697 - GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; \ -# https://www.google.com/linuxrepositories/ - gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 'EB4C 1BFD 4F04 2F6D DDCC EC91 7721 F63B D38B 4796'; \ -# let's also fetch the specific subkey of that key explicitly that we expect "go.tgz.asc" to be signed by, just to make sure we definitely have it - gpg --batch --keyserver keyserver.ubuntu.com --recv-keys '2F52 8D36 D67B 69ED F998 D857 78BD 6547 3CB3 BD13'; \ - gpg --batch --verify go.tgz.asc go.tgz; \ - gpgconf --kill all; \ - rm -rf "$GNUPGHOME" go.tgz.asc; \ - \ - tar -C /usr/local -xzf go.tgz; \ - rm go.tgz; \ - \ - if [ -n "$build" ]; then \ - savedAptMark="$(apt-mark showmanual)"; \ - apt-get update; \ - apt-get install -y --no-install-recommends golang-go; \ - \ - export GOCACHE='/tmp/gocache'; \ - \ - ( \ - cd /usr/local/go/src; \ -# set GOROOT_BOOTSTRAP + GOHOST* such that we can build Go successfully - export GOROOT_BOOTSTRAP="$(go env GOROOT)" GOHOSTOS="$GOOS" GOHOSTARCH="$GOARCH"; \ - ./make.bash; \ - ); \ - \ - apt-mark auto '.*' > /dev/null; \ - apt-mark manual $savedAptMark > /dev/null; \ - apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \ - rm -rf /var/lib/apt/lists/*; \ - \ -# remove a few intermediate / bootstrapping files the official binary release tarballs do not contain - rm -rf \ - /usr/local/go/pkg/*/cmd \ - /usr/local/go/pkg/bootstrap \ - /usr/local/go/pkg/obj \ - /usr/local/go/pkg/tool/*/api \ - /usr/local/go/pkg/tool/*/go_bootstrap \ - /usr/local/go/src/cmd/dist/dist \ - "$GOCACHE" \ - ; \ - fi; \ - \ - go version - -ENV GOPATH /go -ENV PATH $GOPATH/bin:$PATH -RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 777 "$GOPATH" -WORKDIR $GOPATH diff --git a/1.17/windows/windowsservercore-1809/Dockerfile b/1.17/windows/windowsservercore-1809/Dockerfile deleted file mode 100644 index e4771bb7..00000000 --- a/1.17/windows/windowsservercore-1809/Dockerfile +++ /dev/null @@ -1,84 +0,0 @@ -# -# NOTE: THIS DOCKERFILE IS GENERATED VIA "apply-templates.sh" -# -# PLEASE DO NOT EDIT IT DIRECTLY. -# - -FROM mcr.microsoft.com/windows/servercore:1809 - -# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 -SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] - -# install MinGit (especially for "go get") -# https://blogs.msdn.microsoft.com/visualstudioalm/2016/09/03/whats-new-in-git-for-windows-2-10/ -# "Essentially, it is a Git for Windows that was stripped down as much as possible without sacrificing the functionality in which 3rd-party software may be interested." -# "It currently requires only ~45MB on disk." -ENV GIT_VERSION 2.23.0 -ENV GIT_TAG v${GIT_VERSION}.windows.1 -ENV GIT_DOWNLOAD_URL https://github.com/git-for-windows/git/releases/download/${GIT_TAG}/MinGit-${GIT_VERSION}-64-bit.zip -ENV GIT_DOWNLOAD_SHA256 8f65208f92c0b4c3ae4c0cf02d4b5f6791d539cd1a07b2df62b7116467724735 -# steps inspired by "chcolateyInstall.ps1" from "git.install" (https://chocolatey.org/packages/git.install) -RUN Write-Host ('Downloading {0} ...' -f $env:GIT_DOWNLOAD_URL); \ - [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \ - Invoke-WebRequest -Uri $env:GIT_DOWNLOAD_URL -OutFile 'git.zip'; \ - \ - Write-Host ('Verifying sha256 ({0}) ...' -f $env:GIT_DOWNLOAD_SHA256); \ - if ((Get-FileHash git.zip -Algorithm sha256).Hash -ne $env:GIT_DOWNLOAD_SHA256) { \ - Write-Host 'FAILED!'; \ - exit 1; \ - }; \ - \ - Write-Host 'Expanding ...'; \ - Expand-Archive -Path git.zip -DestinationPath C:\git\.; \ - \ - Write-Host 'Removing ...'; \ - Remove-Item git.zip -Force; \ - \ - Write-Host 'Updating PATH ...'; \ - $env:PATH = 'C:\git\cmd;C:\git\mingw64\bin;C:\git\usr\bin;' + $env:PATH; \ - [Environment]::SetEnvironmentVariable('PATH', $env:PATH, [EnvironmentVariableTarget]::Machine); \ - \ - Write-Host 'Verifying install ("git version") ...'; \ - git version; \ - \ - Write-Host 'Complete.'; - -# 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:\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.17.13 - -RUN $url = 'https://dl.google.com/go/go1.17.13.windows-amd64.zip'; \ - Write-Host ('Downloading {0} ...' -f $url); \ - [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \ - Invoke-WebRequest -Uri $url -OutFile 'go.zip'; \ - \ - $sha256 = '6cea8e199c8034995f3a691ef4564e0cc6645ee1649d7ef268a836387f1a5dfa'; \ - Write-Host ('Verifying sha256 ({0}) ...' -f $sha256); \ - if ((Get-FileHash go.zip -Algorithm sha256).Hash -ne $sha256) { \ - Write-Host 'FAILED!'; \ - exit 1; \ - }; \ - \ - 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; \ - \ - Write-Host 'Verifying install ("go version") ...'; \ - go version; \ - \ - Write-Host 'Complete.'; - -WORKDIR $GOPATH diff --git a/1.17/windows/windowsservercore-ltsc2022/Dockerfile b/1.17/windows/windowsservercore-ltsc2022/Dockerfile deleted file mode 100644 index e56230ad..00000000 --- a/1.17/windows/windowsservercore-ltsc2022/Dockerfile +++ /dev/null @@ -1,84 +0,0 @@ -# -# NOTE: THIS DOCKERFILE IS GENERATED VIA "apply-templates.sh" -# -# PLEASE DO NOT EDIT IT DIRECTLY. -# - -FROM mcr.microsoft.com/windows/servercore:ltsc2022 - -# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 -SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] - -# install MinGit (especially for "go get") -# https://blogs.msdn.microsoft.com/visualstudioalm/2016/09/03/whats-new-in-git-for-windows-2-10/ -# "Essentially, it is a Git for Windows that was stripped down as much as possible without sacrificing the functionality in which 3rd-party software may be interested." -# "It currently requires only ~45MB on disk." -ENV GIT_VERSION 2.23.0 -ENV GIT_TAG v${GIT_VERSION}.windows.1 -ENV GIT_DOWNLOAD_URL https://github.com/git-for-windows/git/releases/download/${GIT_TAG}/MinGit-${GIT_VERSION}-64-bit.zip -ENV GIT_DOWNLOAD_SHA256 8f65208f92c0b4c3ae4c0cf02d4b5f6791d539cd1a07b2df62b7116467724735 -# steps inspired by "chcolateyInstall.ps1" from "git.install" (https://chocolatey.org/packages/git.install) -RUN Write-Host ('Downloading {0} ...' -f $env:GIT_DOWNLOAD_URL); \ - [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \ - Invoke-WebRequest -Uri $env:GIT_DOWNLOAD_URL -OutFile 'git.zip'; \ - \ - Write-Host ('Verifying sha256 ({0}) ...' -f $env:GIT_DOWNLOAD_SHA256); \ - if ((Get-FileHash git.zip -Algorithm sha256).Hash -ne $env:GIT_DOWNLOAD_SHA256) { \ - Write-Host 'FAILED!'; \ - exit 1; \ - }; \ - \ - Write-Host 'Expanding ...'; \ - Expand-Archive -Path git.zip -DestinationPath C:\git\.; \ - \ - Write-Host 'Removing ...'; \ - Remove-Item git.zip -Force; \ - \ - Write-Host 'Updating PATH ...'; \ - $env:PATH = 'C:\git\cmd;C:\git\mingw64\bin;C:\git\usr\bin;' + $env:PATH; \ - [Environment]::SetEnvironmentVariable('PATH', $env:PATH, [EnvironmentVariableTarget]::Machine); \ - \ - Write-Host 'Verifying install ("git version") ...'; \ - git version; \ - \ - Write-Host 'Complete.'; - -# 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:\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.17.13 - -RUN $url = 'https://dl.google.com/go/go1.17.13.windows-amd64.zip'; \ - Write-Host ('Downloading {0} ...' -f $url); \ - [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \ - Invoke-WebRequest -Uri $url -OutFile 'go.zip'; \ - \ - $sha256 = '6cea8e199c8034995f3a691ef4564e0cc6645ee1649d7ef268a836387f1a5dfa'; \ - Write-Host ('Verifying sha256 ({0}) ...' -f $sha256); \ - if ((Get-FileHash go.zip -Algorithm sha256).Hash -ne $sha256) { \ - Write-Host 'FAILED!'; \ - exit 1; \ - }; \ - \ - 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; \ - \ - Write-Host 'Verifying install ("go version") ...'; \ - go version; \ - \ - Write-Host 'Complete.'; - -WORKDIR $GOPATH diff --git a/1.19-rc/windows/nanoserver-1809/Dockerfile b/1.19-rc/windows/nanoserver-1809/Dockerfile deleted file mode 100644 index 43b9c4ea..00000000 --- a/1.19-rc/windows/nanoserver-1809/Dockerfile +++ /dev/null @@ -1,30 +0,0 @@ -# -# NOTE: THIS DOCKERFILE IS GENERATED VIA "apply-templates.sh" -# -# PLEASE DO NOT EDIT IT DIRECTLY. -# - -FROM mcr.microsoft.com/windows/nanoserver:1809 - -SHELL ["cmd", "/S", "/C"] - -# no Git installed (intentionally) -# -- Nano Server is "Windows Slim" - -# 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:\Program Files\Go\bin;%PATH%" -USER ContainerUser -# doing this first to share cache across versions more aggressively - -ENV GOLANG_VERSION 1.19rc2 - -# Docker's Windows path parsing is absolutely *cursed*; please just trust me on this one -Tianon -COPY --from=golang:1.19rc2-windowsservercore-1809 ["C:\\\\Program Files\\\\Go","C:\\\\Program Files\\\\Go"] -RUN go version - -WORKDIR $GOPATH diff --git a/1.19-rc/windows/nanoserver-ltsc2022/Dockerfile b/1.19-rc/windows/nanoserver-ltsc2022/Dockerfile deleted file mode 100644 index 7d12d368..00000000 --- a/1.19-rc/windows/nanoserver-ltsc2022/Dockerfile +++ /dev/null @@ -1,30 +0,0 @@ -# -# NOTE: THIS DOCKERFILE IS GENERATED VIA "apply-templates.sh" -# -# PLEASE DO NOT EDIT IT DIRECTLY. -# - -FROM mcr.microsoft.com/windows/nanoserver:ltsc2022 - -SHELL ["cmd", "/S", "/C"] - -# no Git installed (intentionally) -# -- Nano Server is "Windows Slim" - -# 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:\Program Files\Go\bin;%PATH%" -USER ContainerUser -# doing this first to share cache across versions more aggressively - -ENV GOLANG_VERSION 1.19rc2 - -# Docker's Windows path parsing is absolutely *cursed*; please just trust me on this one -Tianon -COPY --from=golang:1.19rc2-windowsservercore-ltsc2022 ["C:\\\\Program Files\\\\Go","C:\\\\Program Files\\\\Go"] -RUN go version - -WORKDIR $GOPATH diff --git a/1.19-rc/alpine3.15/Dockerfile b/1.19/alpine3.15/Dockerfile similarity index 95% rename from 1.19-rc/alpine3.15/Dockerfile rename to 1.19/alpine3.15/Dockerfile index 955f0733..bea7e930 100644 --- a/1.19-rc/alpine3.15/Dockerfile +++ b/1.19/alpine3.15/Dockerfile @@ -15,7 +15,7 @@ RUN [ ! -e /etc/nsswitch.conf ] && echo 'hosts: files dns' > /etc/nsswitch.conf ENV PATH /usr/local/go/bin:$PATH -ENV GOLANG_VERSION 1.19rc2 +ENV GOLANG_VERSION 1.19 RUN set -eux; \ apk add --no-cache --virtual .fetch-deps gnupg; \ @@ -49,8 +49,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.19rc2.src.tar.gz'; \ - sha256='c68d7019a6a0b9852ae0e96d7e7deb772492a23272fd6d13afe05b40c912e51b'; \ + url='https://dl.google.com/go/go1.19.src.tar.gz'; \ + sha256='9419cc70dc5a2523f29a77053cafff658ed21ef3561d9b6b020280ebceab28b9'; \ # the precompiled binaries published by Go upstream are not compatible with Alpine, so we always build from source here 😅 fi; \ \ diff --git a/1.19-rc/alpine3.16/Dockerfile b/1.19/alpine3.16/Dockerfile similarity index 95% rename from 1.19-rc/alpine3.16/Dockerfile rename to 1.19/alpine3.16/Dockerfile index 9d64c811..51305cf3 100644 --- a/1.19-rc/alpine3.16/Dockerfile +++ b/1.19/alpine3.16/Dockerfile @@ -15,7 +15,7 @@ RUN [ ! -e /etc/nsswitch.conf ] && echo 'hosts: files dns' > /etc/nsswitch.conf ENV PATH /usr/local/go/bin:$PATH -ENV GOLANG_VERSION 1.19rc2 +ENV GOLANG_VERSION 1.19 RUN set -eux; \ apk add --no-cache --virtual .fetch-deps gnupg; \ @@ -49,8 +49,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.19rc2.src.tar.gz'; \ - sha256='c68d7019a6a0b9852ae0e96d7e7deb772492a23272fd6d13afe05b40c912e51b'; \ + url='https://dl.google.com/go/go1.19.src.tar.gz'; \ + sha256='9419cc70dc5a2523f29a77053cafff658ed21ef3561d9b6b020280ebceab28b9'; \ # the precompiled binaries published by Go upstream are not compatible with Alpine, so we always build from source here 😅 fi; \ \ diff --git a/1.19-rc/bullseye/Dockerfile b/1.19/bullseye/Dockerfile similarity index 74% rename from 1.19-rc/bullseye/Dockerfile rename to 1.19/bullseye/Dockerfile index 0019763e..809a58d6 100644 --- a/1.19-rc/bullseye/Dockerfile +++ b/1.19/bullseye/Dockerfile @@ -20,41 +20,41 @@ RUN set -eux; \ ENV PATH /usr/local/go/bin:$PATH -ENV GOLANG_VERSION 1.19rc2 +ENV GOLANG_VERSION 1.19 RUN set -eux; \ arch="$(dpkg --print-architecture)"; arch="${arch##*-}"; \ url=; \ case "$arch" in \ 'amd64') \ - url='https://dl.google.com/go/go1.19rc2.linux-amd64.tar.gz'; \ - sha256='9130c6f8e87ce9bb4813533a68c3f17c82c7307caf8795d3c9427652b77f81aa'; \ + url='https://dl.google.com/go/go1.19.linux-amd64.tar.gz'; \ + sha256='464b6b66591f6cf055bc5df90a9750bf5fbc9d038722bb84a9d56a2bea974be6'; \ ;; \ 'armel') \ export GOARCH='arm' GOARM='5' GOOS='linux'; \ ;; \ 'armhf') \ - url='https://dl.google.com/go/go1.19rc2.linux-armv6l.tar.gz'; \ - sha256='83a956703e69dd0a2ce1d4881e6038fb1a292c535c8b7ae80993b2a15708757d'; \ + url='https://dl.google.com/go/go1.19.linux-armv6l.tar.gz'; \ + sha256='25197c7d70c6bf2b34d7d7c29a2ff92ba1c393f0fb395218f1147aac2948fb93'; \ ;; \ 'arm64') \ - url='https://dl.google.com/go/go1.19rc2.linux-arm64.tar.gz'; \ - sha256='9260d3d8db973e2afd0b53f70ebb2f977f3716660de02a0ca4a14667fab2c658'; \ + url='https://dl.google.com/go/go1.19.linux-arm64.tar.gz'; \ + sha256='efa97fac9574fc6ef6c9ff3e3758fb85f1439b046573bf434cccb5e012bd00c8'; \ ;; \ 'i386') \ - url='https://dl.google.com/go/go1.19rc2.linux-386.tar.gz'; \ - sha256='6d7b02ba7c008f38ebb9ab78c137c6b7a2fd7cd6badefcc2a008cc45cc6501a2'; \ + url='https://dl.google.com/go/go1.19.linux-386.tar.gz'; \ + sha256='6f721fa3e8f823827b875b73579d8ceadd9053ad1db8eaa2393c084865fb4873'; \ ;; \ 'mips64el') \ export GOARCH='mips64le' GOOS='linux'; \ ;; \ 'ppc64el') \ - url='https://dl.google.com/go/go1.19rc2.linux-ppc64le.tar.gz'; \ - sha256='b4edcd4780018b479220c65a12e149c9b95b2062cbdba47432b09f96b3de37f0'; \ + url='https://dl.google.com/go/go1.19.linux-ppc64le.tar.gz'; \ + sha256='92bf5aa598a01b279d03847c32788a3a7e0a247a029dedb7c759811c2a4241fc'; \ ;; \ 's390x') \ - url='https://dl.google.com/go/go1.19rc2.linux-s390x.tar.gz'; \ - sha256='a017b5c227bc6cc6e191d66a2e5f00737f1a6163e07416cee39c98af6118fea8'; \ + url='https://dl.google.com/go/go1.19.linux-s390x.tar.gz'; \ + sha256='58723eb8e3c7b9e8f5e97b2d38ace8fd62d9e5423eaa6cdb7ffe5f881cb11875'; \ ;; \ *) echo >&2 "error: unsupported architecture '$arch' (likely packaging update needed)"; exit 1 ;; \ esac; \ @@ -62,8 +62,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.19rc2.src.tar.gz'; \ - sha256='c68d7019a6a0b9852ae0e96d7e7deb772492a23272fd6d13afe05b40c912e51b'; \ + url='https://dl.google.com/go/go1.19.src.tar.gz'; \ + sha256='9419cc70dc5a2523f29a77053cafff658ed21ef3561d9b6b020280ebceab28b9'; \ echo >&2; \ echo >&2 "warning: current architecture ($arch) does not have a compatible Go binary release; will be building from source"; \ echo >&2; \ diff --git a/1.19-rc/buster/Dockerfile b/1.19/buster/Dockerfile similarity index 74% rename from 1.19-rc/buster/Dockerfile rename to 1.19/buster/Dockerfile index 6be40756..c83daaf7 100644 --- a/1.19-rc/buster/Dockerfile +++ b/1.19/buster/Dockerfile @@ -20,41 +20,41 @@ RUN set -eux; \ ENV PATH /usr/local/go/bin:$PATH -ENV GOLANG_VERSION 1.19rc2 +ENV GOLANG_VERSION 1.19 RUN set -eux; \ arch="$(dpkg --print-architecture)"; arch="${arch##*-}"; \ url=; \ case "$arch" in \ 'amd64') \ - url='https://dl.google.com/go/go1.19rc2.linux-amd64.tar.gz'; \ - sha256='9130c6f8e87ce9bb4813533a68c3f17c82c7307caf8795d3c9427652b77f81aa'; \ + url='https://dl.google.com/go/go1.19.linux-amd64.tar.gz'; \ + sha256='464b6b66591f6cf055bc5df90a9750bf5fbc9d038722bb84a9d56a2bea974be6'; \ ;; \ 'armel') \ export GOARCH='arm' GOARM='5' GOOS='linux'; \ ;; \ 'armhf') \ - url='https://dl.google.com/go/go1.19rc2.linux-armv6l.tar.gz'; \ - sha256='83a956703e69dd0a2ce1d4881e6038fb1a292c535c8b7ae80993b2a15708757d'; \ + url='https://dl.google.com/go/go1.19.linux-armv6l.tar.gz'; \ + sha256='25197c7d70c6bf2b34d7d7c29a2ff92ba1c393f0fb395218f1147aac2948fb93'; \ ;; \ 'arm64') \ - url='https://dl.google.com/go/go1.19rc2.linux-arm64.tar.gz'; \ - sha256='9260d3d8db973e2afd0b53f70ebb2f977f3716660de02a0ca4a14667fab2c658'; \ + url='https://dl.google.com/go/go1.19.linux-arm64.tar.gz'; \ + sha256='efa97fac9574fc6ef6c9ff3e3758fb85f1439b046573bf434cccb5e012bd00c8'; \ ;; \ 'i386') \ - url='https://dl.google.com/go/go1.19rc2.linux-386.tar.gz'; \ - sha256='6d7b02ba7c008f38ebb9ab78c137c6b7a2fd7cd6badefcc2a008cc45cc6501a2'; \ + url='https://dl.google.com/go/go1.19.linux-386.tar.gz'; \ + sha256='6f721fa3e8f823827b875b73579d8ceadd9053ad1db8eaa2393c084865fb4873'; \ ;; \ 'mips64el') \ export GOARCH='mips64le' GOOS='linux'; \ ;; \ 'ppc64el') \ - url='https://dl.google.com/go/go1.19rc2.linux-ppc64le.tar.gz'; \ - sha256='b4edcd4780018b479220c65a12e149c9b95b2062cbdba47432b09f96b3de37f0'; \ + url='https://dl.google.com/go/go1.19.linux-ppc64le.tar.gz'; \ + sha256='92bf5aa598a01b279d03847c32788a3a7e0a247a029dedb7c759811c2a4241fc'; \ ;; \ 's390x') \ - url='https://dl.google.com/go/go1.19rc2.linux-s390x.tar.gz'; \ - sha256='a017b5c227bc6cc6e191d66a2e5f00737f1a6163e07416cee39c98af6118fea8'; \ + url='https://dl.google.com/go/go1.19.linux-s390x.tar.gz'; \ + sha256='58723eb8e3c7b9e8f5e97b2d38ace8fd62d9e5423eaa6cdb7ffe5f881cb11875'; \ ;; \ *) echo >&2 "error: unsupported architecture '$arch' (likely packaging update needed)"; exit 1 ;; \ esac; \ @@ -62,8 +62,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.19rc2.src.tar.gz'; \ - sha256='c68d7019a6a0b9852ae0e96d7e7deb772492a23272fd6d13afe05b40c912e51b'; \ + url='https://dl.google.com/go/go1.19.src.tar.gz'; \ + sha256='9419cc70dc5a2523f29a77053cafff658ed21ef3561d9b6b020280ebceab28b9'; \ echo >&2; \ echo >&2 "warning: current architecture ($arch) does not have a compatible Go binary release; will be building from source"; \ echo >&2; \ diff --git a/1.17/windows/nanoserver-1809/Dockerfile b/1.19/windows/nanoserver-1809/Dockerfile similarity index 88% rename from 1.17/windows/nanoserver-1809/Dockerfile rename to 1.19/windows/nanoserver-1809/Dockerfile index 4d793a2b..a6129e6a 100644 --- a/1.17/windows/nanoserver-1809/Dockerfile +++ b/1.19/windows/nanoserver-1809/Dockerfile @@ -21,10 +21,10 @@ 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.17.13 +ENV GOLANG_VERSION 1.19 # Docker's Windows path parsing is absolutely *cursed*; please just trust me on this one -Tianon -COPY --from=golang:1.17.13-windowsservercore-1809 ["C:\\\\Program Files\\\\Go","C:\\\\Program Files\\\\Go"] +COPY --from=golang:1.19-windowsservercore-1809 ["C:\\\\Program Files\\\\Go","C:\\\\Program Files\\\\Go"] RUN go version WORKDIR $GOPATH diff --git a/1.17/windows/nanoserver-ltsc2022/Dockerfile b/1.19/windows/nanoserver-ltsc2022/Dockerfile similarity index 88% rename from 1.17/windows/nanoserver-ltsc2022/Dockerfile rename to 1.19/windows/nanoserver-ltsc2022/Dockerfile index a382f3c1..6d43b6a0 100644 --- a/1.17/windows/nanoserver-ltsc2022/Dockerfile +++ b/1.19/windows/nanoserver-ltsc2022/Dockerfile @@ -21,10 +21,10 @@ 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.17.13 +ENV GOLANG_VERSION 1.19 # Docker's Windows path parsing is absolutely *cursed*; please just trust me on this one -Tianon -COPY --from=golang:1.17.13-windowsservercore-ltsc2022 ["C:\\\\Program Files\\\\Go","C:\\\\Program Files\\\\Go"] +COPY --from=golang:1.19-windowsservercore-ltsc2022 ["C:\\\\Program Files\\\\Go","C:\\\\Program Files\\\\Go"] RUN go version WORKDIR $GOPATH diff --git a/1.19-rc/windows/windowsservercore-1809/Dockerfile b/1.19/windows/windowsservercore-1809/Dockerfile similarity index 95% rename from 1.19-rc/windows/windowsservercore-1809/Dockerfile rename to 1.19/windows/windowsservercore-1809/Dockerfile index 4a0ddf11..1927c0de 100644 --- a/1.19-rc/windows/windowsservercore-1809/Dockerfile +++ b/1.19/windows/windowsservercore-1809/Dockerfile @@ -53,14 +53,14 @@ RUN $newPath = ('{0}\bin;C:\Program Files\Go\bin;{1}' -f $env:GOPATH, $env:PATH) [Environment]::SetEnvironmentVariable('PATH', $newPath, [EnvironmentVariableTarget]::Machine); # doing this first to share cache across versions more aggressively -ENV GOLANG_VERSION 1.19rc2 +ENV GOLANG_VERSION 1.19 -RUN $url = 'https://dl.google.com/go/go1.19rc2.windows-amd64.zip'; \ +RUN $url = 'https://dl.google.com/go/go1.19.windows-amd64.zip'; \ Write-Host ('Downloading {0} ...' -f $url); \ [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \ Invoke-WebRequest -Uri $url -OutFile 'go.zip'; \ \ - $sha256 = 'aab62ab3814bd8f2250f081b696e71f7fe47cc39b222751ccd5d2628cc64c7ca'; \ + $sha256 = 'bcaaf966f91980d35ae93c37a8fe890e4ddfca19448c0d9f66c027d287e2823a'; \ Write-Host ('Verifying sha256 ({0}) ...' -f $sha256); \ if ((Get-FileHash go.zip -Algorithm sha256).Hash -ne $sha256) { \ Write-Host 'FAILED!'; \ diff --git a/1.19-rc/windows/windowsservercore-ltsc2022/Dockerfile b/1.19/windows/windowsservercore-ltsc2022/Dockerfile similarity index 95% rename from 1.19-rc/windows/windowsservercore-ltsc2022/Dockerfile rename to 1.19/windows/windowsservercore-ltsc2022/Dockerfile index 4d732dca..116c8bfa 100644 --- a/1.19-rc/windows/windowsservercore-ltsc2022/Dockerfile +++ b/1.19/windows/windowsservercore-ltsc2022/Dockerfile @@ -53,14 +53,14 @@ RUN $newPath = ('{0}\bin;C:\Program Files\Go\bin;{1}' -f $env:GOPATH, $env:PATH) [Environment]::SetEnvironmentVariable('PATH', $newPath, [EnvironmentVariableTarget]::Machine); # doing this first to share cache across versions more aggressively -ENV GOLANG_VERSION 1.19rc2 +ENV GOLANG_VERSION 1.19 -RUN $url = 'https://dl.google.com/go/go1.19rc2.windows-amd64.zip'; \ +RUN $url = 'https://dl.google.com/go/go1.19.windows-amd64.zip'; \ Write-Host ('Downloading {0} ...' -f $url); \ [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \ Invoke-WebRequest -Uri $url -OutFile 'go.zip'; \ \ - $sha256 = 'aab62ab3814bd8f2250f081b696e71f7fe47cc39b222751ccd5d2628cc64c7ca'; \ + $sha256 = 'bcaaf966f91980d35ae93c37a8fe890e4ddfca19448c0d9f66c027d287e2823a'; \ Write-Host ('Verifying sha256 ({0}) ...' -f $sha256); \ if ((Get-FileHash go.zip -Algorithm sha256).Hash -ne $sha256) { \ Write-Host 'FAILED!'; \ diff --git a/Dockerfile-linux.template b/Dockerfile-linux.template index 89567178..3af786aa 100644 --- a/Dockerfile-linux.template +++ b/Dockerfile-linux.template @@ -146,7 +146,7 @@ RUN set -eux; \ cd /usr/local/go/src; \ # set GOROOT_BOOTSTRAP + GOHOST* such that we can build Go successfully export GOROOT_BOOTSTRAP="$(go env GOROOT)" GOHOSTOS="$GOOS" GOHOSTARCH="$GOARCH"; \ -{{ if is_alpine and ([ "1.17", "1.18" ] | index(env.version) | not) then ( -}} +{{ if is_alpine and ([ "1.18" ] | index(env.version) | not) then ( -}} if [ "${GOARCH:-}" = '386' ]; then \ # https://github.com/golang/go/issues/52919; https://github.com/docker-library/golang/pull/426#issuecomment-1152623837 export CGO_CFLAGS='-fno-stack-protector'; \ diff --git a/generate-stackbrew-library.sh b/generate-stackbrew-library.sh index 1843e580..8d271f68 100755 --- a/generate-stackbrew-library.sh +++ b/generate-stackbrew-library.sh @@ -2,7 +2,7 @@ set -Eeuo pipefail declare -A aliases=( - [1.18]='1 latest' + [1.19]='1 latest' ) self="$(basename "$BASH_SOURCE")" diff --git a/versions.json b/versions.json index 7eb46f81..1627c11f 100644 --- a/versions.json +++ b/versions.json @@ -1,168 +1,4 @@ { - "1.17": { - "arches": { - "amd64": { - "env": { - "GOARCH": "amd64", - "GOOS": "linux" - }, - "sha256": "4cdd2bc664724dc7db94ad51b503512c5ae7220951cac568120f64f8e94399fc", - "supported": true, - "url": "https://dl.google.com/go/go1.17.13.linux-amd64.tar.gz" - }, - "arm32v5": { - "env": { - "GOARCH": "arm", - "GOARM": "5", - "GOOS": "linux" - }, - "supported": true - }, - "arm32v6": { - "env": { - "GOARCH": "arm", - "GOARM": "6", - "GOOS": "linux" - }, - "sha256": "260431d7deeb8893c21e71fcbbb1fde3258616d8eba584c8d72060228ab42c86", - "supported": true, - "url": "https://dl.google.com/go/go1.17.13.linux-armv6l.tar.gz" - }, - "arm32v7": { - "env": { - "GOARCH": "arm", - "GOARM": "7", - "GOOS": "linux" - }, - "sha256": "260431d7deeb8893c21e71fcbbb1fde3258616d8eba584c8d72060228ab42c86", - "supported": true, - "url": "https://dl.google.com/go/go1.17.13.linux-armv6l.tar.gz" - }, - "arm64v8": { - "env": { - "GOARCH": "arm64", - "GOOS": "linux" - }, - "sha256": "914daad3f011cc2014dea799bb7490442677e4ad6de0b2ac3ded6cee7e3f493d", - "supported": true, - "url": "https://dl.google.com/go/go1.17.13.linux-arm64.tar.gz" - }, - "darwin-amd64": { - "env": { - "GOARCH": "amd64", - "GOOS": "darwin" - }, - "sha256": "c101beaa232e0f448fab692dc036cd6b4677091ff89c4889cc8754b1b29c6608", - "supported": false, - "url": "https://dl.google.com/go/go1.17.13.darwin-amd64.tar.gz" - }, - "darwin-arm64v8": { - "env": { - "GOARCH": "arm64", - "GOOS": "darwin" - }, - "sha256": "e4ccc9c082d91eaa0b866078b591fc97d24b91495f12deb3dd2d8eda4e55a6ea", - "supported": false, - "url": "https://dl.google.com/go/go1.17.13.darwin-arm64.tar.gz" - }, - "freebsd-amd64": { - "env": { - "GOARCH": "amd64", - "GOOS": "freebsd" - }, - "sha256": "7e6e62c7f3ac7ebdb04b5eff90d8400aee28636ab964fae508f25dd6daa16ab3", - "supported": false, - "url": "https://dl.google.com/go/go1.17.13.freebsd-amd64.tar.gz" - }, - "freebsd-i386": { - "env": { - "GOARCH": "386", - "GOOS": "freebsd" - }, - "sha256": "e0a5cb2a82d99032354701c02d5432af07aa258cab3f7fb54eac35045dab8435", - "supported": false, - "url": "https://dl.google.com/go/go1.17.13.freebsd-386.tar.gz" - }, - "i386": { - "env": { - "GO386": "softfloat", - "GOARCH": "386", - "GOOS": "linux" - }, - "sha256": "5e02f35aecc6b89679f631e0edf12c49922dd31c8140cf8dd725c5797a9f2425", - "supported": true, - "url": "https://dl.google.com/go/go1.17.13.linux-386.tar.gz" - }, - "mips64le": { - "env": { - "GOARCH": "mips64le", - "GOOS": "linux" - }, - "supported": true - }, - "ppc64le": { - "env": { - "GOARCH": "ppc64le", - "GOOS": "linux" - }, - "sha256": "bd0763fb130f8412672ffe1e4a8e65888ebe2419e5caa9a67ac21e8c298aa254", - "supported": true, - "url": "https://dl.google.com/go/go1.17.13.linux-ppc64le.tar.gz" - }, - "s390x": { - "env": { - "GOARCH": "s390x", - "GOOS": "linux" - }, - "sha256": "08f6074e1e106cbe5d78622357db71a93648c7a4c4e4b02e3b5f2a1828914c76", - "supported": true, - "url": "https://dl.google.com/go/go1.17.13.linux-s390x.tar.gz" - }, - "src": { - "sha256": "a1a48b23afb206f95e7bbaa9b898d965f90826f6f1d1fc0c1d784ada0cd300fd", - "supported": true, - "url": "https://dl.google.com/go/go1.17.13.src.tar.gz" - }, - "windows-amd64": { - "env": { - "GOARCH": "amd64", - "GOOS": "windows" - }, - "sha256": "6cea8e199c8034995f3a691ef4564e0cc6645ee1649d7ef268a836387f1a5dfa", - "supported": true, - "url": "https://dl.google.com/go/go1.17.13.windows-amd64.zip" - }, - "windows-arm64v8": { - "env": { - "GOARCH": "arm64", - "GOOS": "windows" - }, - "sha256": "c4259d2be41deda9c9d67afe486d8b9264f8255075cd40766c6541a4c635e8e4", - "supported": false, - "url": "https://dl.google.com/go/go1.17.13.windows-arm64.zip" - }, - "windows-i386": { - "env": { - "GOARCH": "386", - "GOOS": "windows" - }, - "sha256": "8aeaa7eddb6cf39b5c7d689d8b7f8f6b4884571ad8ada4d396898475c0154d77", - "supported": false, - "url": "https://dl.google.com/go/go1.17.13.windows-386.zip" - } - }, - "variants": [ - "bullseye", - "buster", - "alpine3.16", - "alpine3.15", - "windows/windowsservercore-ltsc2022", - "windows/windowsservercore-1809", - "windows/nanoserver-ltsc2022", - "windows/nanoserver-1809" - ], - "version": "1.17.13" - }, "1.18": { "arches": { "amd64": { @@ -328,7 +164,7 @@ ], "version": "1.18.5" }, - "1.19-rc": { + "1.19": { "arches": { "amd64": { "env": { @@ -336,9 +172,9 @@ "GOARCH": "amd64", "GOOS": "linux" }, - "sha256": "9130c6f8e87ce9bb4813533a68c3f17c82c7307caf8795d3c9427652b77f81aa", + "sha256": "464b6b66591f6cf055bc5df90a9750bf5fbc9d038722bb84a9d56a2bea974be6", "supported": true, - "url": "https://dl.google.com/go/go1.19rc2.linux-amd64.tar.gz" + "url": "https://dl.google.com/go/go1.19.linux-amd64.tar.gz" }, "arm32v5": { "env": { @@ -354,9 +190,9 @@ "GOARM": "6", "GOOS": "linux" }, - "sha256": "83a956703e69dd0a2ce1d4881e6038fb1a292c535c8b7ae80993b2a15708757d", + "sha256": "25197c7d70c6bf2b34d7d7c29a2ff92ba1c393f0fb395218f1147aac2948fb93", "supported": true, - "url": "https://dl.google.com/go/go1.19rc2.linux-armv6l.tar.gz" + "url": "https://dl.google.com/go/go1.19.linux-armv6l.tar.gz" }, "arm32v7": { "env": { @@ -364,54 +200,54 @@ "GOARM": "7", "GOOS": "linux" }, - "sha256": "83a956703e69dd0a2ce1d4881e6038fb1a292c535c8b7ae80993b2a15708757d", + "sha256": "25197c7d70c6bf2b34d7d7c29a2ff92ba1c393f0fb395218f1147aac2948fb93", "supported": true, - "url": "https://dl.google.com/go/go1.19rc2.linux-armv6l.tar.gz" + "url": "https://dl.google.com/go/go1.19.linux-armv6l.tar.gz" }, "arm64v8": { "env": { "GOARCH": "arm64", "GOOS": "linux" }, - "sha256": "9260d3d8db973e2afd0b53f70ebb2f977f3716660de02a0ca4a14667fab2c658", + "sha256": "efa97fac9574fc6ef6c9ff3e3758fb85f1439b046573bf434cccb5e012bd00c8", "supported": true, - "url": "https://dl.google.com/go/go1.19rc2.linux-arm64.tar.gz" + "url": "https://dl.google.com/go/go1.19.linux-arm64.tar.gz" }, "darwin-amd64": { "env": { "GOARCH": "amd64", "GOOS": "darwin" }, - "sha256": "e85f22cecec124ac8eff87be0ce8db0ed74b74aa4f3458681ea3044e9e10c411", + "sha256": "df6509885f65f0d7a4eaf3dfbe7dda327569787e8a0a31cbf99ae3a6e23e9ea8", "supported": false, - "url": "https://dl.google.com/go/go1.19rc2.darwin-amd64.tar.gz" + "url": "https://dl.google.com/go/go1.19.darwin-amd64.tar.gz" }, "darwin-arm64v8": { "env": { "GOARCH": "arm64", "GOOS": "darwin" }, - "sha256": "7a097fcd5ff9a9ea7d4585e5d54df51636fb78af9cd323e807d9b3c9db68c761", + "sha256": "859e0a54b7fcea89d9dd1ec52aab415ac8f169999e5fdfb0f0c15b577c4ead5e", "supported": false, - "url": "https://dl.google.com/go/go1.19rc2.darwin-arm64.tar.gz" + "url": "https://dl.google.com/go/go1.19.darwin-arm64.tar.gz" }, "freebsd-amd64": { "env": { "GOARCH": "amd64", "GOOS": "freebsd" }, - "sha256": "ee55a8a0d68b5b7f8f1584e15bda08615a091cb2d9ce1ec10d04256b11f95237", + "sha256": "eca1a8f7b6ff6146efc285eed581096b12b59c1f0488bfe98ed053ab205267ca", "supported": false, - "url": "https://dl.google.com/go/go1.19rc2.freebsd-amd64.tar.gz" + "url": "https://dl.google.com/go/go1.19.freebsd-amd64.tar.gz" }, "freebsd-i386": { "env": { "GOARCH": "386", "GOOS": "freebsd" }, - "sha256": "33c64db1307749641a352a9ed862b8f392f817f9ca91b7599cfa551b7251840d", + "sha256": "3989e2336dbb3dcf9197b8c0ef9227cdd1a134789d83095d20ebdc1d88edb9f0", "supported": false, - "url": "https://dl.google.com/go/go1.19rc2.freebsd-386.tar.gz" + "url": "https://dl.google.com/go/go1.19.freebsd-386.tar.gz" }, "i386": { "env": { @@ -419,9 +255,9 @@ "GOARCH": "386", "GOOS": "linux" }, - "sha256": "6d7b02ba7c008f38ebb9ab78c137c6b7a2fd7cd6badefcc2a008cc45cc6501a2", + "sha256": "6f721fa3e8f823827b875b73579d8ceadd9053ad1db8eaa2393c084865fb4873", "supported": true, - "url": "https://dl.google.com/go/go1.19rc2.linux-386.tar.gz" + "url": "https://dl.google.com/go/go1.19.linux-386.tar.gz" }, "mips64le": { "env": { @@ -435,50 +271,50 @@ "GOARCH": "ppc64le", "GOOS": "linux" }, - "sha256": "b4edcd4780018b479220c65a12e149c9b95b2062cbdba47432b09f96b3de37f0", + "sha256": "92bf5aa598a01b279d03847c32788a3a7e0a247a029dedb7c759811c2a4241fc", "supported": true, - "url": "https://dl.google.com/go/go1.19rc2.linux-ppc64le.tar.gz" + "url": "https://dl.google.com/go/go1.19.linux-ppc64le.tar.gz" }, "s390x": { "env": { "GOARCH": "s390x", "GOOS": "linux" }, - "sha256": "a017b5c227bc6cc6e191d66a2e5f00737f1a6163e07416cee39c98af6118fea8", + "sha256": "58723eb8e3c7b9e8f5e97b2d38ace8fd62d9e5423eaa6cdb7ffe5f881cb11875", "supported": true, - "url": "https://dl.google.com/go/go1.19rc2.linux-s390x.tar.gz" + "url": "https://dl.google.com/go/go1.19.linux-s390x.tar.gz" }, "src": { - "sha256": "c68d7019a6a0b9852ae0e96d7e7deb772492a23272fd6d13afe05b40c912e51b", + "sha256": "9419cc70dc5a2523f29a77053cafff658ed21ef3561d9b6b020280ebceab28b9", "supported": true, - "url": "https://dl.google.com/go/go1.19rc2.src.tar.gz" + "url": "https://dl.google.com/go/go1.19.src.tar.gz" }, "windows-amd64": { "env": { "GOARCH": "amd64", "GOOS": "windows" }, - "sha256": "aab62ab3814bd8f2250f081b696e71f7fe47cc39b222751ccd5d2628cc64c7ca", + "sha256": "bcaaf966f91980d35ae93c37a8fe890e4ddfca19448c0d9f66c027d287e2823a", "supported": true, - "url": "https://dl.google.com/go/go1.19rc2.windows-amd64.zip" + "url": "https://dl.google.com/go/go1.19.windows-amd64.zip" }, "windows-arm64v8": { "env": { "GOARCH": "arm64", "GOOS": "windows" }, - "sha256": "099f6bf478cea8df1cfc5267da25dd61f663284e12205f286ca9001791d7fd5f", + "sha256": "032f1f75a85bc595bf5eb8b48ec8e490121047915803ad62277586b2e13608f2", "supported": false, - "url": "https://dl.google.com/go/go1.19rc2.windows-arm64.zip" + "url": "https://dl.google.com/go/go1.19.windows-arm64.zip" }, "windows-i386": { "env": { "GOARCH": "386", "GOOS": "windows" }, - "sha256": "7d990fc9f40578a653e489296294793727e5a2c36b1d579e0c0dff92539f6dd1", + "sha256": "45b80c0aca6a5a1f87f111d375db5afee3ce0a9fd5834041c39116e643ba1df2", "supported": false, - "url": "https://dl.google.com/go/go1.19rc2.windows-386.zip" + "url": "https://dl.google.com/go/go1.19.windows-386.zip" } }, "variants": [ @@ -491,6 +327,6 @@ "windows/nanoserver-ltsc2022", "windows/nanoserver-1809" ], - "version": "1.19rc2" + "version": "1.19" } } diff --git a/versions.sh b/versions.sh index 358d21c1..9fc938d4 100755 --- a/versions.sh +++ b/versions.sh @@ -71,7 +71,7 @@ goVersions="$( + if .arch == "386" and .os == "linux" then # i386 in Debian is non-SSE2, Alpine appears to be similar (but interesting, not FreeBSD?) { GO386: "softfloat" } - elif .arch == "amd64" and .os == "linux" and $major != "1.17" then + elif .arch == "amd64" and .os == "linux" then # https://tip.golang.org/doc/go1.18#amd64 { GOAMD64: "v1" } elif $bashbrewArch | startswith("arm32v") then