Merge branch 'ashmckenzie/install-go-1-22' into 'master'

Also install Go 1.22

See merge request https://gitlab.com/gitlab-org/gitlab-build-images/-/merge_requests/771

Merged-by: Stan Hu <stanhu@gmail.com>
Approved-by: Stan Hu <stanhu@gmail.com>
Co-authored-by: Ash McKenzie <amckenzie@gitlab.com>
This commit is contained in:
Stan Hu 2024-02-16 11:39:15 +00:00
commit a86f82caca
5 changed files with 18 additions and 7 deletions

View file

@ -19,10 +19,10 @@ gitaly:
parallel:
matrix:
- OS: ['debian:bookworm']
GOLANG: ['1.20', '1.21']
GOLANG: ['1.20', '1.21', '1.22']
RUST: ['1.73']
GIT: ['2.36']
- OS: ['ubi:8.6']
GOLANG: ['1.20', '1.21']
GOLANG: ['1.20', '1.21', '1.22']
RUST: ['1.73']
GIT: ['2.36']

View file

@ -45,7 +45,7 @@ gitlab:
- OS: ['debian:bookworm', 'debian:bookworm-slim']
RUBY: ['3.0.patched', '3.1.patched', '3.2.patched']
POSTGRESQL: ['13', '14', '15', '16']
GOLANG: ['1.20', '1.21']
GOLANG: ['1.20', '1.21', '1.22']
CHROME: ['120']
# Used by GitLab's compile-production-assets and compile-test-assets jobs
@ -100,11 +100,11 @@ gitlab-workhorse:
matrix:
- OS: ['debian:bookworm']
RUBY: ['3.0', '3.1', '3.2']
GOLANG: ['1.20', '1.21']
GOLANG: ['1.20', '1.21', '1.22']
RUST: ['1.73']
GIT: ['2.36']
- OS: ['ubi:8.6']
RUBY: ['3.0', '3.1', '3.2']
GOLANG: ['1.20', '1.21']
GOLANG: ['1.20', '1.21', '1.22']
RUST: ['1.73']
GIT: ['2.36']

View file

@ -55,8 +55,9 @@ RUN if [ -n "$NODE_INSTALL_VERSION" ] ; then /scripts/install-node "$NODE_INSTAL
# Golang
ARG INSTALL_GOLANG_VERSION
ARG GOLANG_DOWNLOAD_SHA256
ARG INSTALL_GOLANG_VERSION_FIPS
RUN if [ -n "$INSTALL_GOLANG_VERSION" ] ; then /scripts/install-golang "${INSTALL_GOLANG_VERSION}" "${GOLANG_DOWNLOAD_SHA256}" && go version; fi
RUN if [ -n "$INSTALL_GOLANG_VERSION" ] ; then /scripts/install-golang "${INSTALL_GOLANG_VERSION}" "${GOLANG_DOWNLOAD_SHA256}" "${INSTALL_GOLANG_VERSION_FIPS}" && go version; fi
# Git LFS (https://git-lfs.github.com/)
ARG LFS_VERSION

View file

@ -4,6 +4,7 @@ set -xeou pipefail
INSTALL_GOLANG_VERSION=${1}
GOLANG_DOWNLOAD_SHA256=${2}
INSTALL_GOLANG_VERSION_FIPS=${3:-${INSTALL_GOLANG_VERSION}}
GOLANG_DOWNLOAD_URL="https://golang.org/dl/go${INSTALL_GOLANG_VERSION}.linux-${TARGETARCH:-amd64}.tar.gz"
@ -14,7 +15,7 @@ function build_debian() {
}
function build_ubi() {
GO_MAJOR_VERSION=${INSTALL_GOLANG_VERSION%.*}
GO_MAJOR_VERSION=${INSTALL_GOLANG_VERSION_FIPS%.*}
mkdir -p /tmp/golang
curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz

View file

@ -41,19 +41,28 @@ function print_golang_args() {
case "$1" in
1.20)
INSTALL_GOLANG_VERSION=1.20.13 # Update scripts/install-golang for FIPS if this version is bumped
INSTALL_GOLANG_VERSION_FIPS=1.20.13
GOLANG_DOWNLOAD_SHA256[amd64]="9a9d3dcae2b6a638b1f2e9bd4db08ffb39c10e55d9696914002742d90f0047b5"
GOLANG_DOWNLOAD_SHA256[arm64]="a2d811cef3c4fc77c01195622e637af0c2cf8b3814a95a0920cf2f83b6061d38"
;;
1.21)
INSTALL_GOLANG_VERSION=1.21.6
INSTALL_GOLANG_VERSION_FIPS=1.21.6
GOLANG_DOWNLOAD_SHA256[amd64]="3f934f40ac360b9c01f616a9aa1796d227d8b0328bf64cb045c7b8c4ee9caea4"
GOLANG_DOWNLOAD_SHA256[arm64]="e2e8aa88e1b5170a0d495d7d9c766af2b2b6c6925a8f8956d834ad6b4cacbd9a"
;;
1.22)
INSTALL_GOLANG_VERSION=1.22.0
INSTALL_GOLANG_VERSION_FIPS=1.21.6
GOLANG_DOWNLOAD_SHA256[amd64]="f6c8a87aa03b92c4b0bf3d558e28ea03006eb29db78917daec5cfb6ec1046265"
GOLANG_DOWNLOAD_SHA256[arm64]="6a63fef0e050146f275bf02a0896badfe77c11b6f05499bb647e7bd613a45a10"
;;
*) fail "Unknown golang version $1" ;;
esac
printf -- "--build-arg INSTALL_GOLANG_VERSION=%s " "$INSTALL_GOLANG_VERSION"
printf -- "--build-arg GOLANG_DOWNLOAD_SHA256=%q " "${GOLANG_DOWNLOAD_SHA256[*]}"
printf -- "--build-arg INSTALL_GOLANG_VERSION_FIPS=%s " "${INSTALL_GOLANG_VERSION_FIPS}"
}
function print_rust_args() {