Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion docker/linux/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

set -o pipefail

UBUNTU_DOCKER_VARIANTS=("ci" "mobile" "test")
UBUNTU_DOCKER_VARIANTS=("ci" "mobile" "test" "openssl")
IMAGE_TAGS=${IMAGE_TAGS:-}


Expand Down Expand Up @@ -65,6 +65,7 @@ if [[ -z "${NO_BUILD_VARIANTS}" ]]; then
build_and_push_variants
fi


if [[ -n "${IMAGE_TAGS}" ]]; then
for IMAGE_TAG in "${IMAGE_TAGS[@]}"; do
if [[ "$IMAGE_TAG" == *"|"* ]]; then
Expand Down
9 changes: 9 additions & 0 deletions docker/linux/ubuntu/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -88,4 +88,13 @@ RUN --mount=type=tmpfs,target=/var/cache/apt \
&& mobile_install


# OpenSSL
FROM full AS openssl
RUN --mount=type=bind,source=/common_fun.sh,target=/common_fun.sh \
--mount=type=bind,source=/ubuntu/fun.sh,target=/ubuntu/fun.sh \
. ./ubuntu/fun.sh \
&& install_openssl 3.0.16 57e03c50feab5d31b152af2b764f10379aecd8ee92f16c985983ce4a99f7ef86 \
&& install_openssl 3.2.4 b23ad7fd9f73e43ad1767e636040e88ba7c9e5775bfa5618436a0dd2c17c3716


FROM full
21 changes: 21 additions & 0 deletions docker/linux/ubuntu/fun.sh
Original file line number Diff line number Diff line change
Expand Up @@ -200,3 +200,24 @@ install_llvm () {
install_san
install_gn
}

install_openssl () {
local version=$1
local sha256sum=$2
local major_minor_version="${version%.*}"
local openssl_dir="/opt/openssl${major_minor_version}"
local source_dir="${openssl_dir}/src"

download_and_check openssl.tar.gz "https://github.com/openssl/openssl/releases/download/openssl-${version}/openssl-${version}.tar.gz" "${sha256sum}"
mkdir -p "${source_dir}"
tar zxf openssl.tar.gz --strip-components=1 -C "${source_dir}"
rm openssl.tar.gz

pushd "${source_dir}"
./config -d --prefix="${openssl_dir}" --openssldir="${openssl_dir}"
make -j && make install_sw
popd
rm -rf "${source_dir}"

chown -R root:root "${openssl_dir}"
}
2 changes: 2 additions & 0 deletions docker/push.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@
set -e

IMAGE_PREFIX="${IMAGE_PREFIX:-envoyproxy/envoy-build-}"
OS_FAMILY="${OS_FAMILY:-linux}"
OS_DISTRO="${OS_DISTRO:-ubuntu}"
GCR_IMAGE_PREFIX=gcr.io/envoy-ci/
# Enable docker experimental
export DOCKER_CLI_EXPERIMENTAL=enabled
Expand Down