From 2a367dfd7d36cd86ac40ed19448af81ce8caddc1 Mon Sep 17 00:00:00 2001 From: openeuler_bot Date: Tue, 11 Nov 2025 00:11:44 +0000 Subject: [PATCH] 24.03-lts-sp2 update mesos to 1.11.0 --- Bigdata/mesos/1.11.0/24.03-lts-sp2/Dockerfile | 54 +++++++++ .../mesos/1.11.0/24.03-lts-sp2/entrypoint.sh | 28 +++++ .../1.11.0/24.03-lts-sp2/grpc-1.10.0.patch | 112 ++++++++++++++++++ .../mesos/1.11.0/24.03-lts-sp2/pysetup.patch | 17 +++ Bigdata/mesos/README.md | 1 + Bigdata/mesos/doc/image-info.yml | 1 + Bigdata/mesos/meta.yml | 4 +- 7 files changed, 216 insertions(+), 1 deletion(-) create mode 100644 Bigdata/mesos/1.11.0/24.03-lts-sp2/Dockerfile create mode 100644 Bigdata/mesos/1.11.0/24.03-lts-sp2/entrypoint.sh create mode 100644 Bigdata/mesos/1.11.0/24.03-lts-sp2/grpc-1.10.0.patch create mode 100644 Bigdata/mesos/1.11.0/24.03-lts-sp2/pysetup.patch diff --git a/Bigdata/mesos/1.11.0/24.03-lts-sp2/Dockerfile b/Bigdata/mesos/1.11.0/24.03-lts-sp2/Dockerfile new file mode 100644 index 00000000..a0f9c9cc --- /dev/null +++ b/Bigdata/mesos/1.11.0/24.03-lts-sp2/Dockerfile @@ -0,0 +1,54 @@ +ARG BASE=openeuler/openeuler:24.03-lts-sp2 +FROM ${BASE} + +ARG VERSION=1.11.0 +ARG TARGETARCH +ARG BUILDARCH + +WORKDIR / + +RUN yum install -y \ + wget maven \ + python-six python-virtualenv \ + java-devel zlib-devel libcurl-devel \ + cyrus-sasl-devel cyrus-sasl-md5 \ + apr-devel subversion-devel apr-util-devel \ + gcc make libtool libsysfs \ + patch g++ net-tools && \ + yum clean all + +RUN wget https://www.openssl.org/source/old/1.0.2/openssl-1.0.2k.tar.gz && \ + tar -zxvf openssl-1.0.2k.tar.gz && \ + cd openssl-1.0.2k && \ + ./config shared --prefix=/usr/local/openssl-1.0.2k && \ + make -j$(nproc) && make install + +COPY pysetup.patch / +RUN wget https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tgz && \ + tar -zxvf Python-2.7.18.tgz && \ + cd Python-2.7.18 && \ + patch Modules/Setup.dist < /pysetup.patch && \ + ./configure \ + --prefix=/usr/local/python-2.7 \ + --enable-unicode=ucs4 \ + --enable-shared \ + LDFLAGS="-L/usr/local/openssl-1.0.2k/lib" \ + CPPFLAGS="-I/usr/local/openssl-1.0.2k/include" \ + LD_LIBRARY_PATH=/usr/local/openssl-1.0.2k/lib && \ + make -j$(nproc) && make install && \ + ln -s /usr/local/python-2.7/bin/python /usr/bin/python2 + +ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/python-2.7/lib/:/usr/local/openssl-1.0.2k/lib +RUN wget https://downloads.apache.org/mesos/${VERSION}/mesos-${VERSION}.tar.gz && \ + tar -zxf mesos-${VERSION}.tar.gz +COPY grpc-1.10.0.patch /mesos-${VERSION}/3rdparty/grpc-1.10.0.patch +COPY entrypoint.sh / +RUN cd /mesos-${VERSION} && \ + CXXFLAGS="-Wno-nonnull -Wno-deprecated-declarations -Wno-parentheses" ./configure && \ + make -j 2 && make install && \ + chmod +x /entrypoint.sh + +ENV PATH $PATH:/mesos/bin + +EXPOSE 5050 5051 +ENTRYPOINT ["/entrypoint.sh"] diff --git a/Bigdata/mesos/1.11.0/24.03-lts-sp2/entrypoint.sh b/Bigdata/mesos/1.11.0/24.03-lts-sp2/entrypoint.sh new file mode 100644 index 00000000..e8428f5f --- /dev/null +++ b/Bigdata/mesos/1.11.0/24.03-lts-sp2/entrypoint.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash + +set -euo pipefail +[ -n "${DEBUG:-}" ] && set -x + +if [ $# -gt 0 ]; then + exec "$@" +else + # This only runs a master + #/usr/bin/mesos-local + echo "Starting Mesos Master:" + mesos master --work_dir=/var/lib/mesos --log_dir=/tmp/mesos-master-logs --cluster=myCluster & + sleep 2 + echo "Starting Mesos Worker:" + set +eo pipefail + ip_address="$(ifconfig | awk '/inet /{print $2; exit}' | sed 's/.*://')" + if [ -z "$ip_address" ]; then + echo "FAILED to find IP Address, cannot launch worker as will get expected master mismatch" + exit 1 + fi + set -eo pipefail + mesos slave --master="$ip_address:5050" --work_dir=/var/lib/mesos --log_dir=/tmp/mesos-slave-logs --no-systemd_enable_support --launcher=posix & + sleep 1 + echo "=================" + cat /tmp/mesos-master-logs/* || : + cat /tmp/mesos-slave-logs/* || : + tail -f /dev/null /tmp/mesos-master-logs/* /tmp/mesos-slave-logs/* +fi \ No newline at end of file diff --git a/Bigdata/mesos/1.11.0/24.03-lts-sp2/grpc-1.10.0.patch b/Bigdata/mesos/1.11.0/24.03-lts-sp2/grpc-1.10.0.patch new file mode 100644 index 00000000..7f03145a --- /dev/null +++ b/Bigdata/mesos/1.11.0/24.03-lts-sp2/grpc-1.10.0.patch @@ -0,0 +1,112 @@ +From 90869cffbd0cd05ee663e1b81cda169dd40cdf22 Mon Sep 17 00:00:00 2001 +From: Chun-Hung Hsiao +Date: Thu, 19 Apr 2018 14:15:10 -0700 +Subject: [PATCH] Fixed undefined `_WIN32_WINNT` for Windows compilation. + + +diff --git a/include/grpc/impl/codegen/port_platform.h b/include/grpc/impl/codegen/port_platform.h +index 819d17ce2a..77b587dac3 100644 +--- a/include/grpc/impl/codegen/port_platform.h ++++ b/include/grpc/impl/codegen/port_platform.h +@@ -39,6 +39,8 @@ + #define NOMINMAX + #endif /* NOMINMAX */ + ++#include ++ + #ifndef _WIN32_WINNT + #error \ + "Please compile grpc with _WIN32_WINNT of at least 0x600 (aka Windows Vista)" +@@ -49,8 +51,6 @@ + #endif /* _WIN32_WINNT < 0x0600 */ + #endif /* defined(_WIN32_WINNT) */ + +-#include +- + #ifdef GRPC_WIN32_LEAN_AND_MEAN_WAS_NOT_DEFINED + #undef GRPC_WIN32_LEAN_AND_MEAN_WAS_NOT_DEFINED + #undef WIN32_LEAN_AND_MEAN +-- +2.17.2 (Apple Git-113) + + +From 6531532de6a35ed8e00e24d3b60e88fd90d01335 Mon Sep 17 00:00:00 2001 +From: Chun-Hung Hsiao +Date: Fri, 10 Aug 2018 14:00:03 -0700 +Subject: [PATCH] Removed unnecessary dependencies of `codegen_init.o` for + unsecure build. + +`codegen_init.cc` is listed in `LIBGRPC++_UNSECURE_SRC`, which are +compiled without SSL, but in `Makefile` lists SSL-required libraries as +its dependencies. Since the file itself does not use any bits from those +libraries, it is safe to remove those dependencies. + +diff --git a/Makefile b/Makefile +index 8bab9c3afd..9f8261f0a4 100644 +--- a/Makefile ++++ b/Makefile +@@ -15461,8 +15461,6 @@ $(OBJDIR)/$(CONFIG)/src/proto/grpc/testing/stats.o: $(LIBDIR)/$(CONFIG)/libgrpc + + $(OBJDIR)/$(CONFIG)/test/cpp/codegen/codegen_test_minimal.o: $(LIBDIR)/$(CONFIG)/libgrpc++_core_stats.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a + +-$(OBJDIR)/$(CONFIG)/src/cpp/codegen/codegen_init.o: $(LIBDIR)/$(CONFIG)/libgrpc++_core_stats.a $(LIBDIR)/$(CONFIG)/libgrpc.a $(LIBDIR)/$(CONFIG)/libgpr.a +- + deps_codegen_test_minimal: $(CODEGEN_TEST_MINIMAL_OBJS:.o=.dep) + + ifneq ($(NO_SECURE),true) +-- +2.17.2 (Apple Git-113) + + +From 5c13ad2a3df1108184c716379818eab6fc0ba72d Mon Sep 17 00:00:00 2001 +From: Chun-Hung Hsiao +Date: Thu, 10 Jan 2019 14:26:11 -0800 +Subject: [PATCH] CMake: Automatic fallbacking on system's OpenSSL if it only + has NPN. + +Since ALPN is not supported on some old systems that come with OpenSSL +version 1.0.1 or older, gRPC needs to fall back to NPN when being built +with these systems' OpenSSL. + +diff --git a/cmake/ssl.cmake b/cmake/ssl.cmake +index 83f642a675..8e2253fb39 100644 +--- a/cmake/ssl.cmake ++++ b/cmake/ssl.cmake +@@ -36,6 +36,10 @@ elseif("${gRPC_SSL_PROVIDER}" STREQUAL "package") + # project itself does not provide installation support in its CMakeLists.txt + # See https://cmake.org/cmake/help/v3.6/module/FindOpenSSL.html + find_package(OpenSSL REQUIRED) ++ ++ if (OPENSSL_VERSION VERSION_LESS "1.0.2") ++ add_definitions(-DTSI_OPENSSL_ALPN_SUPPORT=0) ++ endif() + + if(TARGET OpenSSL::SSL) + set(_gRPC_SSL_LIBRARIES OpenSSL::SSL OpenSSL::Crypto) +-- +2.17.2 (Apple Git-113) + +diff --git a/src/core/lib/gpr/log_linux.cc b/src/core/lib/gpr/log_linux.cc +index d743eedf38..9980d4893d 100644 +--- a/src/core/lib/gpr/log_linux.cc ++++ b/src/core/lib/gpr/log_linux.cc +@@ -39,7 +39,7 @@ + #include + #include + +-static long gettid(void) { return syscall(__NR_gettid); } ++static long sy_gettid(void) { return syscall(__NR_gettid); } + + void gpr_log(const char* file, int line, gpr_log_severity severity, + const char* format, ...) { +@@ -65,7 +65,7 @@ void gpr_default_log(gpr_log_func_args* args) { + gpr_timespec now = gpr_now(GPR_CLOCK_REALTIME); + struct tm tm; + static __thread long tid = 0; +- if (tid == 0) tid = gettid(); ++ if (tid == 0) tid = sy_gettid(); + + timer = static_cast(now.tv_sec); + final_slash = strrchr(args->file, '/'); +-- +2.17.2 (Apple Git-113) \ No newline at end of file diff --git a/Bigdata/mesos/1.11.0/24.03-lts-sp2/pysetup.patch b/Bigdata/mesos/1.11.0/24.03-lts-sp2/pysetup.patch new file mode 100644 index 00000000..90f715b8 --- /dev/null +++ b/Bigdata/mesos/1.11.0/24.03-lts-sp2/pysetup.patch @@ -0,0 +1,17 @@ +--- a/Setup.dist 2025-03-26 15:31:41 ++++ b/Setup.dist 2025-03-26 15:32:39 +@@ -215,10 +215,10 @@ + + # Socket module helper for SSL support; you must comment out the other + # socket line above, and possibly edit the SSL variable: +-#SSL=/usr/local/ssl +-#_ssl _ssl.c \ +-# -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \ +-# -L$(SSL)/lib -lssl -lcrypto ++SSL=/usr/local/ssl ++_ssl _ssl.c \ ++ -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \ ++ -L$(SSL)/lib -lssl -lcrypto + + # The crypt module is now disabled by default because it breaks builds + # on many systems (where -lcrypt is needed), e.g. Linux (I believe). diff --git a/Bigdata/mesos/README.md b/Bigdata/mesos/README.md index 7e5b43d2..0df24c2b 100644 --- a/Bigdata/mesos/README.md +++ b/Bigdata/mesos/README.md @@ -16,6 +16,7 @@ For more information about mesos, please visit [http://mesos.apache.org/](http:/ The tag of each mesos docker image is consist of the version of mesos and the version of basic image. The details are as follows | Tags | Currently | Architectures| |--|--|--| +|[1.11.0-oe2403sp2](https://gitee.com/openeuler/openeuler-docker-images/blob/master/Bigdata/mesos/1.11.0/24.03-lts-sp2/Dockerfile) | mesos 1.11.0 on openEuler 24.03-LTS-SP2 | amd64, arm64 | |[1.11.0-oe2403sp1](https://gitee.com/openeuler/openeuler-docker-images/blob/master/Bigdata/mesos/1.11.0/24.03-lts-sp1/Dockerfile)| Apache Mesos 1.11.0 on openEuler 24.03-LTS-SP1 | amd64, arm64 | # Usage diff --git a/Bigdata/mesos/doc/image-info.yml b/Bigdata/mesos/doc/image-info.yml index 9ad73ba8..94c97278 100644 --- a/Bigdata/mesos/doc/image-info.yml +++ b/Bigdata/mesos/doc/image-info.yml @@ -11,6 +11,7 @@ tags: | | Tags | Currently | Architectures| |------|-----------|---------------| + |[1.11.0-oe2403sp2](https://gitee.com/openeuler/openeuler-docker-images/blob/master/Bigdata/mesos/1.11.0/24.03-lts-sp2/Dockerfile) | mesos 1.11.0 on openEuler 24.03-LTS-SP2 | amd64, arm64 | |[1.11.0-oe2403sp1](https://gitee.com/openeuler/openeuler-docker-images/blob/master/Bigdata/mesos/1.11.0/24.03-lts-sp1/Dockerfile)| Apache Mesos 1.11.0 on openEuler 24.03-LTS-SP1 | amd64, arm64 | download: | diff --git a/Bigdata/mesos/meta.yml b/Bigdata/mesos/meta.yml index 28bcd150..3cdf5c48 100644 --- a/Bigdata/mesos/meta.yml +++ b/Bigdata/mesos/meta.yml @@ -1,2 +1,4 @@ 1.11.0-oe2403sp1: - path: 1.11.0/24.03-lts-sp1/Dockerfile \ No newline at end of file + path: 1.11.0/24.03-lts-sp1/Dockerfile +1.11.0-oe2403sp2: + path: 1.11.0/24.03-lts-sp2/Dockerfile \ No newline at end of file -- Gitee