Skip to content

Commit 2ba111d

Browse files
committed
Update Protobuf to 6.31.1, remove unnecessary args to grpc cmake command
Signed-off-by: Lacewell, Chaunte W <[email protected]>
1 parent 2669c6a commit 2ba111d

File tree

6 files changed

+105
-95
lines changed

6 files changed

+105
-95
lines changed

.github/scripts/Dockerfile.checkin

Lines changed: 4 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ ENV DEBIAN_FRONTEND=noninteractive
2121
ENV DEBCONF_NOWARNINGS="yes"
2222
ENV PYTHON_BASE="3.12"
2323
ENV PYTHON_VERSION="${PYTHON_BASE}.3"
24-
ENV PROTOBUF_VERSION="31.0"
24+
ENV PROTOBUF_VERSION="6.31.1"
2525
ENV NUMPY_MIN_VERSION="1.26.0"
2626
ENV VIRTUAL_ENV=/opt/venv
2727

@@ -80,10 +80,10 @@ ENV ABSEIL_VERSION="20250512.1" \
8080
FAISS_VERSION="v1.9.0" \
8181
GRPC_VERSION="v1.75.1" \
8282
GTEST_VERSION="52eb8108c5bdec04579160ae17225d66034bd723" \
83-
PROTOBUF_VERSION="74211c0dfc2777318ab53c2cd2c317a2ef9012de" \
8483
LIBEDIT_VERSION="20230828-3.1" \
8584
OPENCV_VERSION="4.9.0" \
8685
PEG_VERSION="0.1.19" \
86+
PROTOBUF_VERSION_COMMIT="74211c0dfc2777318ab53c2cd2c317a2ef9012de" \
8787
TILEDB_VERSION="2.14.1" \
8888
VALIJSON_VERSION="v0.6"
8989

@@ -110,15 +110,14 @@ RUN git clone https://github.com/google/googletest.git /dependencies/googletest
110110
-DABSL_FIND_GOOGLETEST=ON -DCMAKE_CXX_STANDARD=17 .. && \
111111
make ${BUILD_THREADS} && make install && ldconfig /opt/dist/usr/local/lib && \
112112
git clone --recurse-submodules https://github.com/protocolbuffers/protobuf.git /dependencies/protobuf && \
113-
cd /dependencies/protobuf && git checkout ${PROTOBUF_VERSION} && \
113+
cd /dependencies/protobuf && git checkout ${PROTOBUF_VERSION_COMMIT} && \
114114
cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=/opt/dist/usr/local \
115115
-DCMAKE_CXX_STANDARD=17 -Dprotobuf_BUILD_SHARED_LIBS=ON \
116116
-Dprotobuf_ABSL_PROVIDER=package \
117117
-Dprotobuf_GTEST_PROVIDER=package \
118118
-Dprotobuf_BUILD_TESTS=ON \
119119
-Dabsl_DIR=/opt/dist/usr/local/lib/cmake/absl . && \
120120
make ${BUILD_THREADS} && make install
121-
# -DBUILD_SHARED_LIBS=ON \
122121

123122
# AUTOCONF VERSION FOR NEO4J
124123
# hadolint ignore=DL3003,SC2086
@@ -135,20 +134,8 @@ RUN ldconfig && git clone -b ${GRPC_VERSION} --depth 1 --recursive https://githu
135134
-DCMAKE_INSTALL_PREFIX=/opt/dist/usr/local \
136135
-DgRPC_ABSL_PROVIDER=package \
137136
-DgRPC_PROTOBUF_PROVIDER=package \
138-
# -DgRPC_CARES_PROVIDER=module \
139-
# -DgRPC_RE2_PROVIDER=module \
140-
# -DgRPC_SSL_PROVIDER=module \
141-
# -DgRPC_ZLIB_PROVIDER=module \
142-
# -DgRPC_BUILD_GRPC_CPP_PLUGIN=ON \
143-
# -DgRPC_BUILD_GRPC_PHP_PLUGIN=OFF \
144-
# -DgRPC_BUILD_GRPC_NODE_PLUGIN=OFF \
145-
# -DgRPC_BUILD_GRPC_RUBY_PLUGIN=OFF \
146-
# -DgRPC_BUILD_GRPC_PYTHON_PLUGIN=ON \
147-
# -DgRPC_BUILD_GRPC_CSHARP_PLUGIN=OFF \
148-
# -DgRPC_BUILD_GRPC_OBJECTIVE_C_PLUGIN=OFF \
149137
../.. && \
150138
cmake --build . -- -j && cmake --install .
151-
# make ${BUILD_THREADS} && make install
152139

153140
# OPENCV
154141
# hadolint ignore=DL3003,SC2086
@@ -187,12 +174,6 @@ RUN curl -L -O https://github.com/TileDB-Inc/TileDB/archive/refs/tags/${TILEDB_V
187174
-DBUILD_ONLY="s3" -DCUSTOM_MEMORY_MANAGEMENT=OFF -DENABLE_TESTING=OFF && \
188175
make ${BUILD_THREADS} && make install DESTDIR=/opt/dist && make install
189176

190-
# AUTOCONF VERSION FOR NEO4J
191-
# hadolint ignore=DL3003,SC2086
192-
# RUN curl -O https://ftp.gnu.org/gnu/autoconf/autoconf-${AUTOCONF_VERSION}.tar.xz && \
193-
# tar -xf autoconf-${AUTOCONF_VERSION}.tar.xz && cd autoconf-${AUTOCONF_VERSION} && \
194-
# ./configure && make ${BUILD_THREADS} && make install DESTDIR=/opt/dist && make install
195-
196177
# LIB-OMNI FOR NEO4J QUERY HANDLER
197178
# hadolint ignore=DL3003,SC2086
198179
RUN curl -L -O https://github.com/gpakosz/peg/releases/download/${PEG_VERSION}/peg-${PEG_VERSION}.tar.gz && \
@@ -295,7 +276,7 @@ RUN apt-get update -y && apt-get upgrade -y && \
295276
apt-get --purge remove -y python3.11 && apt-get autoremove -y && \
296277
apt-get clean && rm -rf /var/lib/apt/lists/* && \
297278
echo "/usr/local/lib" >> /etc/ld.so.conf.d/all-libs.conf && ldconfig && \
298-
python3 -m pip install --no-cache-dir "numpy>=${NUMPY_MIN_VERSION},<2.0.0" "protobuf==6.${PROTOBUF_VERSION}" \
279+
python3 -m pip install --no-cache-dir "numpy>=${NUMPY_MIN_VERSION},<2.0.0" "protobuf==${PROTOBUF_VERSION}" \
299280
"coverage>=7.3.1" "cryptography>=44.0.1"
300281

301282
WORKDIR /vdms

.github/scripts/setup_vdms.sh

Lines changed: 43 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -190,15 +190,19 @@ fi
190190
#######################################################################################################################
191191
# INSTALL DEPENDENCIES
192192
#######################################################################################################################
193+
ABSEIL_VERSION="20250512.1"
193194
AUTOCONF_VERSION="2.71"
194195
AWS_SDK_VERSION="1.11.336"
195196
CMAKE_VERSION="v3.28.5"
196197
FAISS_VERSION="v1.9.0"
198+
GRPC_VERSION="v1.75.1"
199+
GTEST_VERSION="52eb8108c5bdec04579160ae17225d66034bd723"
197200
LIBEDIT_VERSION="20230828-3.1"
198201
NUMPY_MIN_VERSION="1.26.0"
199202
OPENCV_VERSION="4.9.0"
200203
PEG_VERSION="0.1.19"
201-
PROTOBUF_VERSION="25.8"
204+
PROTOBUF_VERSION="6.31.1"
205+
PROTOBUF_VERSION_COMMIT="74211c0dfc2777318ab53c2cd2c317a2ef9012de"
202206
TILEDB_VERSION="2.14.1"
203207
VALIJSON_VERSION="v0.6"
204208
@@ -213,36 +217,64 @@ make ${BUILD_THREADS}
213217
make install
214218
215219
216-
# INSTALL PROTOBUF & ITS DEPENDENCIES
217-
git clone -b "v${PROTOBUF_VERSION}" --recurse-submodules https://github.com/protocolbuffers/protobuf.git $VDMS_DEP_DIR/protobuf
218-
cd $VDMS_DEP_DIR/protobuf/third_party/googletest
220+
# INSTALL PROTOBUF & ITS DEPENDENCIES (GOOGLETEST, ABSEIL-CPP)
221+
git git clone https://github.com/google/googletest.git $VDMS_DEP_DIR/googletest
222+
cd $VDMS_DEP_DIR/googletest && git checkout ${GTEST_VERSION}
219223
mkdir build && cd build/
220224
cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release \
221-
-DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=/usr/local \
225+
-DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=/opt/dist/usr/local \
222226
-DBUILD_GMOCK=ON -DCMAKE_CXX_STANDARD=17 ..
223227
make ${BUILD_THREADS}
224228
make install
225229
226-
cd $VDMS_DEP_DIR/protobuf/third_party/abseil-cpp
230+
git clone -b ${ABSEIL_VERSION} https://github.com/abseil/abseil-cpp.git $VDMS_DEP_DIR/abseil-cpp
231+
cd $VDMS_DEP_DIR/abseil-cpp
227232
mkdir build && cd build
228233
cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=ON \
229-
-DCMAKE_INSTALL_PREFIX=/usr/local -DABSL_BUILD_TESTING=ON \
234+
-DCMAKE_INSTALL_PREFIX=/opt/dist/usr/local -DABSL_BUILD_TESTING=ON \
230235
-DABSL_USE_EXTERNAL_GOOGLETEST=ON \
231236
-DABSL_FIND_GOOGLETEST=ON -DCMAKE_CXX_STANDARD=17 ..
232237
make ${BUILD_THREADS}
233238
make install
234239
ldconfig /usr/local/lib
235240
236-
cd $VDMS_DEP_DIR/protobuf
237-
cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=/usr/local \
241+
git clone --recurse-submodules https://github.com/protocolbuffers/protobuf.git $VDMS_DEP_DIR/protobuf
242+
cd $VDMS_DEP_DIR/protobuf && git checkout ${PROTOBUF_VERSION_COMMIT}
243+
cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=/opt/dist/usr/local \
238244
-DCMAKE_CXX_STANDARD=17 -Dprotobuf_BUILD_SHARED_LIBS=ON \
239245
-Dprotobuf_ABSL_PROVIDER=package \
246+
-Dprotobuf_GTEST_PROVIDER=package \
240247
-Dprotobuf_BUILD_TESTS=ON \
241-
-Dabsl_DIR=/usr/local/lib/cmake/absl .
248+
-Dabsl_DIR=/opt/dist/usr/local/lib/cmake/absl .
242249
make ${BUILD_THREADS}
243250
make install
244251
245252
253+
# INSTALL AUTOCONF
254+
curl -L -o $VDMS_DEP_DIR/autoconf-${AUTOCONF_VERSION}.tar.gz http://ftpmirror.gnu.org/autoconf/autoconf-${AUTOCONF_VERSION}.tar.gz
255+
cd $VDMS_DEP_DIR
256+
tar -xzf autoconf-${AUTOCONF_VERSION}.tar.gz
257+
cd autoconf-${AUTOCONF_VERSION}
258+
./configure
259+
make ${BUILD_THREADS}
260+
make install
261+
262+
263+
# INSTALL gRPC
264+
ldconfig
265+
git clone -b ${GRPC_VERSION} --depth 1 --recursive https://github.com/grpc/grpc $VDMS_DEP_DIR/grpc
266+
cd $VDMS_DEP_DIR/grpc
267+
mkdir -p cmake/build && cd cmake/build
268+
cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=ON \
269+
-DCMAKE_CXX_STANDARD=17 -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF \
270+
-DCMAKE_INSTALL_PREFIX=/opt/dist/usr/local \
271+
-DgRPC_ABSL_PROVIDER=package \
272+
-DgRPC_PROTOBUF_PROVIDER=package \
273+
../..
274+
cmake --build . -- -j
275+
cmake --install .
276+
277+
246278
# INSTALL OPENCV
247279
git clone https://github.com/opencv/opencv.git $VDMS_DEP_DIR/opencv
248280
cd $VDMS_DEP_DIR/opencv
@@ -255,7 +287,7 @@ make install
255287
256288
# INSTALL PYTHON PACKAGES
257289
python -m pip install --no-cache-dir "numpy>=${NUMPY_MIN_VERSION},<2.0.0" "coverage>=7.3.1" \
258-
"protobuf==4.${PROTOBUF_VERSION}" "cryptography>=44.0.1"
290+
"protobuf==${PROTOBUF_VERSION}" "cryptography>=44.0.1"
259291
260292
261293
# INSTALL VALIJSON
@@ -302,16 +334,6 @@ make ${BUILD_THREADS}
302334
make install
303335
304336
305-
# INSTALL AUTOCONF
306-
curl -L -o $VDMS_DEP_DIR/autoconf-${AUTOCONF_VERSION}.tar.xz https://ftp.gnu.org/gnu/autoconf/autoconf-${AUTOCONF_VERSION}.tar.xz
307-
cd $VDMS_DEP_DIR
308-
tar -xf autoconf-${AUTOCONF_VERSION}.tar.xz
309-
cd autoconf-${AUTOCONF_VERSION}
310-
./configure
311-
make ${BUILD_THREADS}
312-
make install
313-
314-
315337
# INSTALL NEO4J CLIENTS
316338
curl -L -o $VDMS_DEP_DIR/peg-${PEG_VERSION}.tar.gz https://github.com/gpakosz/peg/releases/download/${PEG_VERSION}/peg-${PEG_VERSION}.tar.gz
317339
cd $VDMS_DEP_DIR/

client/python/setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
author="Chaunté W. Lacewell",
1010
author_email="[email protected]",
1111
description="VDMS Client Module",
12-
install_requires=["protobuf==6.31.0"],
12+
install_requires=["protobuf==6.31.1"],
1313
long_description=long_description,
1414
long_description_content_type="text/markdown",
1515
url="https://github.com/IntelLabs/vdms",

docker/base/Dockerfile

Lines changed: 23 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ ENV DEBIAN_FRONTEND=noninteractive
2121
ENV DEBCONF_NOWARNINGS="yes"
2222
ENV PYTHON_BASE="3.12"
2323
ENV PYTHON_VERSION="${PYTHON_BASE}.3"
24-
ENV PROTOBUF_VERSION="31.0"
24+
ENV PROTOBUF_VERSION="6.31.1"
2525
ENV NUMPY_MIN_VERSION="1.26.0"
2626
ENV VIRTUAL_ENV=/opt/venv
2727

@@ -78,11 +78,12 @@ ENV ABSEIL_VERSION="20250512.1" \
7878
AWS_SDK_VERSION="1.11.336" \
7979
CMAKE_VERSION="v3.28.5" \
8080
FAISS_VERSION="v1.9.0" \
81-
GRPC_VERSION="v1.73.0" \
82-
GTEST_VERSION="v1.12.0" \
81+
GRPC_VERSION="v1.75.1" \
82+
GTEST_VERSION="52eb8108c5bdec04579160ae17225d66034bd723" \
8383
LIBEDIT_VERSION="20230828-3.1" \
8484
OPENCV_VERSION="4.9.0" \
8585
PEG_VERSION="0.1.19" \
86+
PROTOBUF_VERSION_COMMIT="74211c0dfc2777318ab53c2cd2c317a2ef9012de" \
8687
TILEDB_VERSION="2.14.1" \
8788
VALIJSON_VERSION="v0.6"
8889

@@ -94,8 +95,9 @@ RUN git clone --branch ${CMAKE_VERSION} https://github.com/Kitware/CMake.git /de
9495

9596
# PROTOBUF & ITS DEPENDENCIES (GOOGLETEST, ABSEIL-CPP)
9697
# hadolint ignore=DL3003,SC2086
97-
RUN git clone -b ${GTEST_VERSION} https://github.com/google/googletest.git /dependencies/googletest && \
98-
cd /dependencies/googletest && mkdir build && cd build && \
98+
RUN git clone https://github.com/google/googletest.git /dependencies/googletest && \
99+
cd /dependencies/googletest && git checkout ${GTEST_VERSION} && \
100+
mkdir build && cd build && \
99101
cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_BUILD_TYPE=Release \
100102
-DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=/opt/dist/usr/local \
101103
-DBUILD_GMOCK=ON -DCMAKE_CXX_STANDARD=17 .. && \
@@ -107,25 +109,33 @@ RUN git clone -b ${GTEST_VERSION} https://github.com/google/googletest.git /depe
107109
-DABSL_USE_EXTERNAL_GOOGLETEST=ON \
108110
-DABSL_FIND_GOOGLETEST=ON -DCMAKE_CXX_STANDARD=17 .. && \
109111
make ${BUILD_THREADS} && make install && ldconfig /opt/dist/usr/local/lib && \
110-
git clone -b "v${PROTOBUF_VERSION}" --recurse-submodules https://github.com/protocolbuffers/protobuf.git /dependencies/protobuf && \
111-
cd /dependencies/protobuf && \
112+
git clone --recurse-submodules https://github.com/protocolbuffers/protobuf.git /dependencies/protobuf && \
113+
cd /dependencies/protobuf && git checkout ${PROTOBUF_VERSION_COMMIT} && \
112114
cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_INSTALL_PREFIX=/opt/dist/usr/local \
113115
-DCMAKE_CXX_STANDARD=17 -Dprotobuf_BUILD_SHARED_LIBS=ON \
114116
-Dprotobuf_ABSL_PROVIDER=package \
117+
-Dprotobuf_GTEST_PROVIDER=package \
115118
-Dprotobuf_BUILD_TESTS=ON \
116119
-Dabsl_DIR=/opt/dist/usr/local/lib/cmake/absl . && \
117120
make ${BUILD_THREADS} && make install
118121

122+
# AUTOCONF VERSION FOR NEO4J
123+
# hadolint ignore=DL3003,SC2086
124+
RUN curl -L -O http://ftpmirror.gnu.org/autoconf/autoconf-${AUTOCONF_VERSION}.tar.gz && \
125+
tar -xzf autoconf-${AUTOCONF_VERSION}.tar.gz && cd autoconf-${AUTOCONF_VERSION} && \
126+
./configure && make ${BUILD_THREADS} && make install DESTDIR=/opt/dist && make install
127+
119128
# gRPC
120-
RUN git clone -b ${GRPC_VERSION} https://github.com/grpc/grpc /dependencies/grpc && \
129+
RUN ldconfig && git clone -b ${GRPC_VERSION} --depth 1 --recursive https://github.com/grpc/grpc /dependencies/grpc && \
121130
cd /dependencies/grpc && \
122-
git submodule update --init && mkdir -p cmake/build && cd cmake/build && \
131+
mkdir -p cmake/build && cd cmake/build && \
123132
cmake -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=ON \
124-
-DCMAKE_CXX_STANDARD=17 -DgRPC_INSTALL=ON \
133+
-DCMAKE_CXX_STANDARD=17 -DgRPC_INSTALL=ON -DgRPC_BUILD_TESTS=OFF \
125134
-DCMAKE_INSTALL_PREFIX=/opt/dist/usr/local \
126135
-DgRPC_ABSL_PROVIDER=package \
127-
-DgRPC_PROTOBUF_PROVIDER=package ../.. && \
128-
make ${BUILD_THREADS} && make install
136+
-DgRPC_PROTOBUF_PROVIDER=package \
137+
../.. && \
138+
cmake --build . -- -j && cmake --install .
129139

130140
# OPENCV
131141
# hadolint ignore=DL3003,SC2086
@@ -164,12 +174,6 @@ RUN curl -L -O https://github.com/TileDB-Inc/TileDB/archive/refs/tags/${TILEDB_V
164174
-DBUILD_ONLY="s3" -DCUSTOM_MEMORY_MANAGEMENT=OFF -DENABLE_TESTING=OFF && \
165175
make ${BUILD_THREADS} && make install DESTDIR=/opt/dist && make install
166176

167-
# AUTOCONF VERSION FOR NEO4J
168-
# hadolint ignore=DL3003,SC2086
169-
RUN curl -O https://ftp.gnu.org/gnu/autoconf/autoconf-${AUTOCONF_VERSION}.tar.xz && \
170-
tar -xf autoconf-${AUTOCONF_VERSION}.tar.xz && cd autoconf-${AUTOCONF_VERSION} && \
171-
./configure && make ${BUILD_THREADS} && make install DESTDIR=/opt/dist && make install
172-
173177
# LIB-OMNI FOR NEO4J QUERY HANDLER
174178
# hadolint ignore=DL3003,SC2086
175179
RUN curl -L -O https://github.com/gpakosz/peg/releases/download/${PEG_VERSION}/peg-${PEG_VERSION}.tar.gz && \
@@ -248,7 +252,7 @@ RUN apt-get update -y && apt-get upgrade -y && \
248252
apt-get --purge remove -y python3.11 && apt-get autoremove -y && \
249253
apt-get clean && rm -rf /var/lib/apt/lists/* && \
250254
echo "/usr/local/lib" >> /etc/ld.so.conf.d/all-libs.conf && ldconfig && \
251-
python3 -m pip install --no-cache-dir "numpy>=${NUMPY_MIN_VERSION},<2.0.0" "protobuf==6.${PROTOBUF_VERSION}" \
255+
python3 -m pip install --no-cache-dir "numpy>=${NUMPY_MIN_VERSION},<2.0.0" "protobuf==${PROTOBUF_VERSION}" \
252256
"coverage>=7.3.1" "cryptography>=44.0.1"
253257

254258
WORKDIR /vdms

0 commit comments

Comments
 (0)