You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@thrift.apache.org by je...@apache.org on 2026/04/08 22:39:00 UTC
(thrift) branch 0.23.0 updated (e8b3be25a -> cca235164)
This is an automated email from the ASF dual-hosted git repository.
jensg pushed a change to branch 0.23.0
in repository https://gitbox.apache.org/repos/asf/thrift.git
from e8b3be25a Fix docker warnings on ENV format
new 74df5f8fb Fix ubuntu-jammy Docker build: update NodeSource and ENV format
new 74502c6d6 Fix ubuntu-focal Docker build: update NodeSource setup and ENV format
new cca235164 Fix ubuntu-noble Docker build: modernize NodeSource GPG setup
The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
build/docker/ubuntu-focal/Dockerfile | 35 ++++++++++++++++++-----------------
build/docker/ubuntu-jammy/Dockerfile | 35 ++++++++++++++++++-----------------
build/docker/ubuntu-noble/Dockerfile | 5 +++--
3 files changed, 39 insertions(+), 36 deletions(-)
(thrift) 01/03: Fix ubuntu-jammy Docker build: update NodeSource and ENV format
Posted by je...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
jensg pushed a commit to branch 0.23.0
in repository https://gitbox.apache.org/repos/asf/thrift.git
commit 74df5f8fb5632810c4a87c9471353cb28c35aa18
Author: Jens Geyer <je...@apache.org>
AuthorDate: Wed Apr 8 23:49:32 2026 +0200
Fix ubuntu-jammy Docker build: update NodeSource and ENV format
- Replace deprecated apt-key NodeSource setup (node_16.x/focal) with
modern gpg keyring method using node_20.x/nodistro, fixing GPG
signature verification failure
- Convert all legacy ENV key value syntax to ENV key=value format
to eliminate 15 Dockerfile linting warnings
Client: build
Co-Authored-By: Claude Sonnet 4.6 <no...@anthropic.com>
Generated-by: Claude Sonnet 4.6
---
build/docker/ubuntu-jammy/Dockerfile | 35 ++++++++++++++++++-----------------
1 file changed, 18 insertions(+), 17 deletions(-)
diff --git a/build/docker/ubuntu-jammy/Dockerfile b/build/docker/ubuntu-jammy/Dockerfile
index a2331ab69..3fc3da130 100644
--- a/build/docker/ubuntu-jammy/Dockerfile
+++ b/build/docker/ubuntu-jammy/Dockerfile
@@ -52,8 +52,9 @@ RUN curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - &
/etc/apt/sources.list.d/dart_stable.list
# node.js
-RUN curl -sL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \
- echo "deb https://deb.nodesource.com/node_16.x focal main" | tee /etc/apt/sources.list.d/nodesource.list
+RUN mkdir -p /etc/apt/keyrings && \
+ curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && \
+ echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list
### install general dependencies
RUN apt-get update -yq && \
@@ -76,14 +77,14 @@ RUN apt-get update -yq && \
unzip \
valgrind \
vim
-ENV PATH /usr/lib/llvm-6.0/bin:$PATH
+ENV PATH=/usr/lib/llvm-6.0/bin:$PATH
# lib/as3 (ActionScript)
RUN mkdir -p /usr/local/adobe/flex/4.6 && \
cd /usr/local/adobe/flex/4.6 && \
wget -q "http://download.macromedia.com/pub/flex/sdk/flex_sdk_4.6.zip" && \
unzip flex_sdk_4.6.zip
-ENV FLEX_HOME /usr/local/adobe/flex/4.6
+ENV FLEX_HOME=/usr/local/adobe/flex/4.6
# TODO: "apt-get install" without "apt-get update" in the same "RUN" step can cause cache issues if modified later.
# See https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#run
@@ -95,7 +96,7 @@ RUN apt-get install -y --no-install-recommends \
qtbase5-dev \
qtbase5-dev-tools
-ENV SBCL_VERSION 1.5.3
+ENV SBCL_VERSION=1.5.3
RUN \
`# Common Lisp (sbcl) dependencies` \
curl --version && \
@@ -107,8 +108,8 @@ RUN \
cd .. && \
rm -rf sbcl*
-ENV D_VERSION 2.087.0
-ENV DMD_DEB dmd_2.087.0-0_amd64.deb
+ENV D_VERSION=2.087.0
+ENV DMD_DEB=dmd_2.087.0-0_amd64.deb
RUN \
`# D dependencies` \
wget -q http://downloads.dlang.org/releases/2.x/${D_VERSION}/${DMD_DEB} && \
@@ -124,11 +125,11 @@ RUN \
mv deimos-openssl-1.1.0h/C/* /usr/include/dmd/druntime/import/C/ && \
rm -rf deimos-openssl-1.1.0h
-ENV DART_VERSION 2.7.2-1
+ENV DART_VERSION=2.7.2-1
RUN apt-get install -y --no-install-recommends \
`# Dart dependencies` \
dart=$DART_VERSION
-ENV PATH /usr/lib/dart/bin:$PATH
+ENV PATH=/usr/lib/dart/bin:$PATH
RUN add-apt-repository ppa:dotnet/backports
RUN apt-get install -y --no-install-recommends \
@@ -146,16 +147,16 @@ RUN apt-get update && apt-get install -y --no-install-recommends libncurses5-dev
kerl build $ERLANG_OTP_VERSION && kerl install $ERLANG_OTP_VERSION /usr/local/lib/otp/ && . /usr/local/lib/otp/activate && \
curl -ssLo /usr/local/bin/rebar3 https://github.com/erlang/rebar3/releases/download/${ERLANG_REBAR_VERSION}/rebar3 && chmod +x /usr/local/bin/rebar3 && \
rebar3 --version
-ENV PATH /usr/local/lib/otp/bin:$PATH
+ENV PATH=/usr/local/lib/otp/bin:$PATH
RUN apt-get install -y --no-install-recommends \
`# GlibC dependencies` \
libglib2.0-dev
# golang
-ENV GOLANG_VERSION 1.24.3
-ENV GOLANG_DOWNLOAD_URL https://go.dev/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
-ENV GOLANG_DOWNLOAD_SHA256 3333f6ea53afa971e9078895eaa4ac7204a8c6b5c68c10e6bc9a33e8e391bdd8
+ENV GOLANG_VERSION=1.24.3
+ENV GOLANG_DOWNLOAD_URL=https://go.dev/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
+ENV GOLANG_DOWNLOAD_SHA256=3333f6ea53afa971e9078895eaa4ac7204a8c6b5c68c10e6bc9a33e8e391bdd8
RUN curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz && \
echo "$GOLANG_DOWNLOAD_SHA256 golang.tar.gz" | sha256sum -c - && \
tar -C /usr/local -xzf golang.tar.gz && \
@@ -175,7 +176,7 @@ RUN cd $HOME && \
tar xvf neko-${NEKO_VERSION}-linux64.tar.gz && \
rm neko-${NEKO_VERSION}-linux64.tar.gz && \
mv neko-* /opt/neko
-ENV PATH /opt/haxe:/opt/neko:$PATH
+ENV PATH=/opt/haxe:/opt/neko:$PATH
RUN echo "/opt/neko" > /etc/ld.so.conf.d/neko.conf && \
ldconfig
USER ${user}
@@ -267,7 +268,7 @@ RUN apt-get install -y --no-install-recommends \
USER ${user}
RUN `# Rust dependencies` \
curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.83.0 -y
-ENV PATH /home/${user}/.cargo/bin:$PATH
+ENV PATH=/home/${user}/.cargo/bin:$PATH
USER root
# Swift on Linux for cross tests
@@ -282,7 +283,7 @@ RUN apt-get install -yq \
mv swift-5.7-RELEASE-ubuntu22.04 /usr/share/swift && \
rm swift-5.7-RELEASE-ubuntu22.04.tar.gz
-ENV PATH /usr/share/swift/usr/bin:$PATH
+ENV PATH=/usr/share/swift/usr/bin:$PATH
RUN swift --version
# Locale(s) for cpp unit tests
@@ -306,7 +307,7 @@ RUN apt-get install -y --no-install-recommends \
# rm -rf /tmp/* && \
# rm -rf /var/tmp/*
-ENV THRIFT_ROOT /thrift
+ENV THRIFT_ROOT=/thrift
RUN mkdir -p $THRIFT_ROOT/src && \
chown -R ${uid}:${uid} $THRIFT_ROOT/
COPY Dockerfile $THRIFT_ROOT/
(thrift) 02/03: Fix ubuntu-focal Docker build: update NodeSource setup and ENV format
Posted by je...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
jensg pushed a commit to branch 0.23.0
in repository https://gitbox.apache.org/repos/asf/thrift.git
commit 74502c6d68e1a4e83401f2d66ac3e9baa98f576e
Author: Jens Geyer <je...@apache.org>
AuthorDate: Thu Apr 9 00:03:33 2026 +0200
Fix ubuntu-focal Docker build: update NodeSource setup and ENV format
- Replace deprecated apt-key NodeSource setup (node_16.x) with
modern gpg keyring method using node_20.x/nodistro, fixing GPG
signature verification failure
- Convert all legacy ENV key value syntax to ENV key=value format
to eliminate 15 Dockerfile linting warnings
Client: build
Co-Authored-By: Claude Sonnet 4.6 <no...@anthropic.com>
Generated-by: Claude Sonnet 4.6
---
build/docker/ubuntu-focal/Dockerfile | 35 ++++++++++++++++++-----------------
1 file changed, 18 insertions(+), 17 deletions(-)
diff --git a/build/docker/ubuntu-focal/Dockerfile b/build/docker/ubuntu-focal/Dockerfile
index 855ca9898..ea1868a16 100644
--- a/build/docker/ubuntu-focal/Dockerfile
+++ b/build/docker/ubuntu-focal/Dockerfile
@@ -58,8 +58,9 @@ RUN curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /et
chown root:root /etc/apt/sources.list.d/microsoft-prod.list
# node.js
-RUN curl -sL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \
- echo "deb https://deb.nodesource.com/node_16.x focal main" | tee /etc/apt/sources.list.d/nodesource.list
+RUN mkdir -p /etc/apt/keyrings && \
+ curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && \
+ echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list
### install general dependencies
RUN apt-get update -yq && \
@@ -82,14 +83,14 @@ RUN apt-get update -yq && \
unzip \
valgrind \
vim
-ENV PATH /usr/lib/llvm-6.0/bin:$PATH
+ENV PATH=/usr/lib/llvm-6.0/bin:$PATH
# lib/as3 (ActionScript)
RUN mkdir -p /usr/local/adobe/flex/4.6 && \
cd /usr/local/adobe/flex/4.6 && \
wget -q "http://download.macromedia.com/pub/flex/sdk/flex_sdk_4.6.zip" && \
unzip flex_sdk_4.6.zip
-ENV FLEX_HOME /usr/local/adobe/flex/4.6
+ENV FLEX_HOME=/usr/local/adobe/flex/4.6
# TODO: "apt-get install" without "apt-get update" in the same "RUN" step can cause cache issues if modified later.
# See https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#run
@@ -102,7 +103,7 @@ RUN apt-get install -y --no-install-recommends \
qtbase5-dev \
qtbase5-dev-tools
-ENV SBCL_VERSION 1.5.3
+ENV SBCL_VERSION=1.5.3
RUN \
`# Common Lisp (sbcl) dependencies` \
curl --version && \
@@ -114,8 +115,8 @@ RUN \
cd .. && \
rm -rf sbcl*
-ENV D_VERSION 2.087.0
-ENV DMD_DEB dmd_2.087.0-0_amd64.deb
+ENV D_VERSION=2.087.0
+ENV DMD_DEB=dmd_2.087.0-0_amd64.deb
RUN \
`# D dependencies` \
wget -q http://downloads.dlang.org/releases/2.x/${D_VERSION}/${DMD_DEB} && \
@@ -131,11 +132,11 @@ RUN \
mv deimos-openssl-1.1.0h/C/* /usr/include/dmd/druntime/import/C/ && \
rm -rf deimos-openssl-1.1.0h
-ENV DART_VERSION 2.7.2-1
+ENV DART_VERSION=2.7.2-1
RUN apt-get install -y --no-install-recommends \
`# Dart dependencies` \
dart=$DART_VERSION
-ENV PATH /usr/lib/dart/bin:$PATH
+ENV PATH=/usr/lib/dart/bin:$PATH
# Because Ubuntu 20.04 turned EOL in April/May 2025, Microsoft does not support .NET 9 or higher on that platform
RUN apt-get install -y --no-install-recommends \
@@ -153,16 +154,16 @@ RUN apt-get update && apt-get install -y --no-install-recommends libncurses5-dev
kerl build $ERLANG_OTP_VERSION && kerl install $ERLANG_OTP_VERSION /usr/local/lib/otp/ && . /usr/local/lib/otp/activate && \
curl -ssLo /usr/local/bin/rebar3 https://github.com/erlang/rebar3/releases/download/${ERLANG_REBAR_VERSION}/rebar3 && chmod +x /usr/local/bin/rebar3 && \
rebar3 --version
-ENV PATH /usr/local/lib/otp/bin:$PATH
+ENV PATH=/usr/local/lib/otp/bin:$PATH
RUN apt-get install -y --no-install-recommends \
`# GlibC dependencies` \
libglib2.0-dev
# golang
-ENV GOLANG_VERSION 1.24.3
-ENV GOLANG_DOWNLOAD_URL https://go.dev/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
-ENV GOLANG_DOWNLOAD_SHA256 3333f6ea53afa971e9078895eaa4ac7204a8c6b5c68c10e6bc9a33e8e391bdd8
+ENV GOLANG_VERSION=1.24.3
+ENV GOLANG_DOWNLOAD_URL=https://go.dev/dl/go$GOLANG_VERSION.linux-amd64.tar.gz
+ENV GOLANG_DOWNLOAD_SHA256=3333f6ea53afa971e9078895eaa4ac7204a8c6b5c68c10e6bc9a33e8e391bdd8
RUN curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz && \
echo "$GOLANG_DOWNLOAD_SHA256 golang.tar.gz" | sha256sum -c - && \
tar -C /usr/local -xzf golang.tar.gz && \
@@ -182,7 +183,7 @@ RUN cd $HOME && \
tar xvf neko-${NEKO_VERSION}-linux64.tar.gz && \
rm neko-${NEKO_VERSION}-linux64.tar.gz && \
mv neko-* /opt/neko
-ENV PATH /opt/haxe:/opt/neko:$PATH
+ENV PATH=/opt/haxe:/opt/neko:$PATH
RUN echo "/opt/neko" > /etc/ld.so.conf.d/neko.conf && \
ldconfig
USER ${user}
@@ -277,7 +278,7 @@ RUN apt-get install -y --no-install-recommends \
USER ${user}
RUN `# Rust dependencies` \
curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.83.0 -y
-ENV PATH /home/${user}/.cargo/bin:$PATH
+ENV PATH=/home/${user}/.cargo/bin:$PATH
USER root
# Swift on Linux for cross tests
@@ -292,7 +293,7 @@ RUN apt-get install -yq \
mv swift-5.7-RELEASE-ubuntu20.04 /usr/share/swift && \
rm swift-5.7-RELEASE-ubuntu20.04.tar.gz
-ENV PATH /usr/share/swift/usr/bin:$PATH
+ENV PATH=/usr/share/swift/usr/bin:$PATH
RUN swift --version
# Locale(s) for cpp unit tests
@@ -316,7 +317,7 @@ RUN apt-get install -y --no-install-recommends \
# rm -rf /tmp/* && \
# rm -rf /var/tmp/*
-ENV THRIFT_ROOT /thrift
+ENV THRIFT_ROOT=/thrift
RUN mkdir -p $THRIFT_ROOT/src && \
chown -R ${uid}:${uid} $THRIFT_ROOT/
COPY Dockerfile $THRIFT_ROOT/
(thrift) 03/03: Fix ubuntu-noble Docker build: modernize NodeSource GPG setup
Posted by je...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
jensg pushed a commit to branch 0.23.0
in repository https://gitbox.apache.org/repos/asf/thrift.git
commit cca235164e9cf81062c13881058c5ddb1cd3af1e
Author: Jens Geyer <je...@apache.org>
AuthorDate: Thu Apr 9 00:29:28 2026 +0200
Fix ubuntu-noble Docker build: modernize NodeSource GPG setup
Replace deprecated apt-key NodeSource setup with modern gpg keyring
method using signed-by, consistent with ubuntu-focal and ubuntu-jammy.
Client: build
Co-Authored-By: Claude Sonnet 4.6 <no...@anthropic.com>
Generated-by: Claude Sonnet 4.6
---
build/docker/ubuntu-noble/Dockerfile | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/build/docker/ubuntu-noble/Dockerfile b/build/docker/ubuntu-noble/Dockerfile
index ebf638f60..bdfb6c2c5 100644
--- a/build/docker/ubuntu-noble/Dockerfile
+++ b/build/docker/ubuntu-noble/Dockerfile
@@ -52,8 +52,9 @@ RUN curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - &
/etc/apt/sources.list.d/dart_stable.list
# node.js
-RUN curl -sL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | apt-key add - && \
- echo "deb https://deb.nodesource.com/node_20.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list
+RUN mkdir -p /etc/apt/keyrings && \
+ curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg && \
+ echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list
### install general dependencies
RUN apt-get update -yq && \