Skip to content

Commit c0fb213

Browse files
committed
dockerfile: ensuring CMake version is not greater than the latest supported one.
Signed-off-by: Marat Abrarov <[email protected]>
1 parent 7025da1 commit c0fb213

File tree

2 files changed

+35
-2
lines changed

2 files changed

+35
-2
lines changed

dockerfiles/Dockerfile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ RUN echo "deb http://deb.debian.org/debian bookworm-backports main" >> /etc/apt/
4141
build-essential \
4242
curl \
4343
ca-certificates \
44-
cmake \
4544
git \
4645
make \
4746
tar \
@@ -56,6 +55,7 @@ RUN echo "deb http://deb.debian.org/debian bookworm-backports main" >> /etc/apt/
5655
flex \
5756
bison \
5857
libyaml-dev \
58+
&& apt-get satisfy -y cmake "cmake (<< 4.0)" \
5959
&& apt-get clean \
6060
&& rm -rf /var/lib/apt/lists/*
6161

@@ -254,8 +254,9 @@ RUN echo "deb http://deb.debian.org/debian bookworm-backports main" >> /etc/apt/
254254
net-tools mtr netcat-openbsd bridge-utils iperf ngrep \
255255
openssl \
256256
htop atop strace iotop sysstat ncdu logrotate hdparm pciutils psmisc tree pv \
257-
cmake make tar flex bison \
257+
make tar flex bison \
258258
libssl-dev libsasl2-dev libsystemd-dev/bookworm-backports zlib1g-dev libpq-dev libyaml-dev postgresql-server-dev-all \
259+
&& apt-get satisfy -y cmake "cmake (<< 4.0)" \
259260
&& apt-get clean \
260261
&& rm -rf /var/lib/apt/lists/*
261262

dockerfiles/Dockerfile.windows

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,38 @@ ENV VCPKG_LIBRARY_LINKAGE=static
6969
RUN vcpkg install --recurse openssl --triplet x64-windows-static; `
7070
vcpkg install --recurse libyaml --triplet x64-windows-static;
7171

72+
# CMake of required version
73+
ENV CMAKE_VERSION="3.31.6" `
74+
CMAKE_HOME="C:\cmake" `
75+
CMAKE_DOWNLOAD_URL="https://github.com/Kitware/CMake/releases/download"
76+
RUN if ([System.Version] \"${env:CMAKE_VERSION}\" -ge [System.Version] \"3.20.0\") { `
77+
$cmake_dist_base_name=\"cmake-${env:CMAKE_VERSION}-windows-x86_64\" `
78+
} else { `
79+
if ([System.Version] \"${env:CMAKE_VERSION}\" -ge [System.Version] \"3.6.0\") { `
80+
$cmake_dist_base_name=\"cmake-${env:CMAKE_VERSION}-win64-x64\" `
81+
} else { `
82+
$cmake_dist_base_name=\"cmake-${env:CMAKE_VERSION}-win32-x86\" `
83+
} `
84+
}; `
85+
$cmake_dist_name=\"${cmake_dist_base_name}.zip\"; `
86+
$cmake_dist=\"${env:TMP}\${cmake_dist_name}\"; `
87+
$cmake_url=\"${env:CMAKE_DOWNLOAD_URL}/v${env:CMAKE_VERSION}/${cmake_dist_name}\"; `
88+
Write-Host \"Downloading cmake...\"; `
89+
Write-Host \"${cmake_url}->${cmake_dist}\"; `
90+
Invoke-WebRequest -OutFile \"${cmake_dist}\" \"${cmake_url}\"; `
91+
$cmake_temp_dir=\"${env:TMP}\${cmake_dist_base_name}\"; `
92+
Write-Host \"Extracting cmake...\"; `
93+
Write-Host \"${cmake_dist}->${cmake_temp_dir}\"; `
94+
Expand-Archive \"${cmake_dist}\" -Destination \"${env:TMP}\"; `
95+
Remove-Item -Force \"${cmake_dist}\"; `
96+
Write-Host \"Moving cmake...\"; `
97+
Write-Host \"${cmake_temp_dir}->${env:CMAKE_HOME}\"; `
98+
[System.IO.Directory]::Move(\"${cmake_temp_dir}\", \"${env:CMAKE_HOME}\"); `
99+
$env:Path=\"${env:CMAKE_HOME}\bin;${env:PATH}\"; `
100+
Write-Host \"Setting PATH...\"; `
101+
Write-Host \"${env:Path}\"; `
102+
[Environment]::SetEnvironmentVariable(\"PATH\", \"${env:CMAKE_HOME}\bin;${env:PATH}\", [EnvironmentVariableTarget]::Machine);
103+
72104
FROM builder-base AS builder
73105

74106
# Build Fluent Bit from source - context must be the root of the Git repo

0 commit comments

Comments
 (0)