This is an automated email from the ASF dual-hosted git repository. xyz pushed a commit to branch branch-3.0 in repository https://gitbox.apache.org/repos/asf/pulsar-client-cpp.git
commit 80c8ab2d7d05911ae880602017dc4ac360164dad Author: Baodi Shi <[email protected]> AuthorDate: Sun Oct 30 10:39:01 2022 +0800 [refactor] Remove useless config file. (#76) (cherry picked from commit 74ebc10337e6b33b4427a6b126edc0b9f8424bb0) --- README.md | 4 +- docker/alpine/Dockerfile | 99 ------------------------- docker/alpine/Dockerfile-alpine-3.8 | 99 ------------------------- docker/alpine/build-alpine-image.sh | 33 --------- docker/alpine/build-wheel-file-within-docker.sh | 38 ---------- docker/alpine/build-wheel.sh | 34 --------- docker/build-client-lib-within-docker.sh | 34 --------- docker/build-client-lib.sh | 49 ------------ docker/centos-7/Dockerfile | 47 ------------ docker/push-images.sh | 46 ------------ 10 files changed, 1 insertion(+), 482 deletions(-) diff --git a/README.md b/README.md index 5d75ba2..9b0c2bf 100644 --- a/README.md +++ b/README.md @@ -47,8 +47,6 @@ If you want to enable other compression types, you need to install: If you want to build and run the tests, you need to install [GTest](https://github.com/google/googletest). Otherwise, you need to add CMake option `-DBUILD_TESTS=OFF`. -If you don't want to build Python client since `boost-python` may not be easy to install, you need to add CMake option `-DBUILD_PYTHON_WRAPPER=OFF`. - If you want to use `ClientConfiguration::setLogConfFilePath`, you need to install the [Log4CXX](https://logging.apache.org/log4cxx) and add CMake option `-DUSE_LOG4CXX=ON`. ## Platforms @@ -156,7 +154,7 @@ With `vcpkg`, you only need to run two commands: cmake \ -B ./build \ -A x64 \ - -DBUILD_PYTHON_WRAPPER=OFF -DBUILD_TESTS=OFF \ + -DBUILD_TESTS=OFF \ -DVCPKG_TRIPLET=x64-windows \ -DCMAKE_BUILD_TYPE=Release \ -S . diff --git a/docker/alpine/Dockerfile b/docker/alpine/Dockerfile deleted file mode 100644 index c1c2974..0000000 --- a/docker/alpine/Dockerfile +++ /dev/null @@ -1,99 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - - -FROM alpine:3.11 - -RUN apk update \ - && apk upgrade \ - && apk add --no-cache \ - cmake make build-base curl \ - python3-dev \ - libffi-dev \ - perl linux-headers bash \ - alpine-sdk - -#################################### -# These dependencies can be found in Ubuntu but they're not compiled with -fPIC, -# so they cannot be statically linked into a shared library -#################################### - -# Download and compile boost -RUN curl -O -L https://boostorg.jfrog.io/artifactory/main/release/1.72.0/source/boost_1_72_0.tar.gz && \ - tar xfz boost_1_72_0.tar.gz && \ - cd /boost_1_72_0 && \ - ./bootstrap.sh --with-libraries=program_options,regex,system,python --with-python=/usr/bin/python3 && \ - ./b2 cxxflags=-fPIC link=static threading=multi variant=release install && \ - rm -rf /boost_1_72_0.tar.gz /boost_1_72_0 - -# ZLib -RUN curl -O -L https://zlib.net/zlib-1.2.12.tar.gz && \ - tar xfz zlib-1.2.12.tar.gz && \ - cd zlib-1.2.12 && \ - CFLAGS="-fPIC -O3" ./configure && \ - make -j4 && make install && \ - rm -rf /zlib-1.2.12.tar.gz /zlib-1.2.12 - -# Compile OpenSSL -RUN curl -O -L https://github.com/openssl/openssl/archive/OpenSSL_1_1_1n.tar.gz && \ - tar xfz OpenSSL_1_1_1n.tar.gz && \ - cd openssl-OpenSSL_1_1_1n/ && \ - ./Configure -fPIC no-shared linux-x86_64 && \ - make -j8 && make install && \ - rm -rf /OpenSSL_1_1_1n.tar.gz /openssl-OpenSSL_1_1_1n - -ENV LD_LIBRARY_PATH /usr/local/ssl/lib/: - -# Download and copile protoubf -RUN curl -O -L https://github.com/google/protobuf/releases/download/v3.20.0/protobuf-cpp-3.20.0.tar.gz && \ - tar xvfz protobuf-cpp-3.20.0.tar.gz && \ - cd protobuf-3.20.0/ && \ - CXXFLAGS=-fPIC ./configure && \ - make -j8 && make install && \ - rm -rf /protobuf-cpp-3.20.0.tar.gz /protobuf-3.20.0 - -# LibCurl -RUN curl -O -L https://github.com/curl/curl/releases/download/curl-7_61_0/curl-7.61.0.tar.gz && \ - tar xvfz curl-7.61.0.tar.gz && \ - cd curl-7.61.0 && \ - CFLAGS=-fPIC ./configure && \ - make -j8 && make install && \ - rm -rf /curl-7.61.0.tar.gz /curl-7.61.0 - -# Zstandard -RUN curl -O -L https://github.com/facebook/zstd/releases/download/v1.3.7/zstd-1.3.7.tar.gz && \ - tar xvfz zstd-1.3.7.tar.gz && \ - cd zstd-1.3.7 && \ - CFLAGS="-fPIC -O3" make -j8 && \ - make install && \ - rm -rf /zstd-1.3.7 /zstd-1.3.7.tar.gz - -# Snappy -RUN curl -L https://github.com/google/snappy/archive/1.1.8.tar.gz --output snappy-1.1.8.tar.gz && \ - tar xvfz snappy-1.1.8.tar.gz && \ - cd snappy-1.1.8 && \ - CXXFLAGS="-fPIC -O3" cmake . && \ - make -j8 && make install && \ - rm -rf /snappy-1.1.8 /snappy-1.1.8.tar.gz - - -RUN pip3 install wheel twine - -RUN adduser pulsar -D && \ - addgroup pulsar abuild diff --git a/docker/alpine/Dockerfile-alpine-3.8 b/docker/alpine/Dockerfile-alpine-3.8 deleted file mode 100644 index fb5cc08..0000000 --- a/docker/alpine/Dockerfile-alpine-3.8 +++ /dev/null @@ -1,99 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - - -FROM alpine:3.8 - -RUN apk update \ - && apk upgrade \ - && apk add --no-cache \ - cmake make build-base curl \ - python3-dev \ - libffi-dev \ - perl linux-headers bash \ - alpine-sdk - -#################################### -# These dependencies can be found in Ubuntu but they're not compiled with -fPIC, -# so they cannot be statically linked into a shared library -#################################### - -# Download and compile boost -RUN curl -O -L https://boostorg.jfrog.io/artifactory/main/release/1.72.0/source/boost_1_72_0.tar.gz && \ - tar xfz boost_1_72_0.tar.gz && \ - cd /boost_1_72_0 && \ - ./bootstrap.sh --with-libraries=program_options,regex,system,python --with-python=/usr/bin/python3 && \ - ./b2 cxxflags=" -fPIC -I/usr/include/python3.6m" link=static threading=multi variant=release install && \ - rm -rf /boost_1_72_0.tar.gz /boost_1_72_0 - -# ZLib -RUN curl -O -L https://zlib.net/zlib-1.2.12.tar.gz && \ - tar xfz zlib-1.2.12.tar.gz && \ - cd zlib-1.2.12 && \ - CFLAGS="-fPIC -O3" ./configure && \ - make -j4 && make install && \ - rm -rf /zlib-1.2.12.tar.gz /zlib-1.2.12 - -# Compile OpenSSL -RUN curl -O -L https://github.com/openssl/openssl/archive/OpenSSL_1_1_1n.tar.gz && \ - tar xfz OpenSSL_1_1_1n.tar.gz && \ - cd openssl-OpenSSL_1_1_1n/ && \ - ./Configure -fPIC no-shared linux-x86_64 && \ - make -j8 && make install && \ - rm -rf /OpenSSL_1_1_1n.tar.gz /openssl-OpenSSL_1_1_1n - -ENV LD_LIBRARY_PATH /usr/local/ssl/lib/: - -# Download and copile protoubf -RUN curl -O -L https://github.com/google/protobuf/releases/download/v3.20.0/protobuf-cpp-3.20.0.tar.gz && \ - tar xvfz protobuf-cpp-3.20.0.tar.gz && \ - cd protobuf-3.20.0/ && \ - CXXFLAGS=-fPIC ./configure && \ - make -j8 && make install && \ - rm -rf /protobuf-cpp-3.20.0.tar.gz /protobuf-3.20.0 - -# LibCurl -RUN curl -O -L https://github.com/curl/curl/releases/download/curl-7_61_0/curl-7.61.0.tar.gz && \ - tar xvfz curl-7.61.0.tar.gz && \ - cd curl-7.61.0 && \ - CFLAGS=-fPIC ./configure && \ - make -j8 && make install && \ - rm -rf /curl-7.61.0.tar.gz /curl-7.61.0 - -# Zstandard -RUN curl -O -L https://github.com/facebook/zstd/releases/download/v1.4.4/zstd-1.4.4.tar.gz && \ - tar xvfz zstd-1.4.4.tar.gz && \ - cd zstd-1.4.4 && \ - CFLAGS="-fPIC -O3" make -j8 && \ - make install && \ - rm -rf /zstd-1.4.4 /zstd-1.4.4.tar.gz - -# Snappy -RUN curl -L https://github.com/google/snappy/archive/1.1.8.tar.gz --output snappy-1.1.8.tar.gz && \ - tar xvfz snappy-1.1.8.tar.gz && \ - cd snappy-1.1.8 && \ - CXXFLAGS="-fPIC -O3" cmake . && \ - make -j8 && make install && \ - rm -rf /snappy-1.1.8 /snappy-1.1.8.tar.gz - - -RUN pip3 install wheel twine - -RUN adduser pulsar -D && \ - addgroup pulsar abuild diff --git a/docker/alpine/build-alpine-image.sh b/docker/alpine/build-alpine-image.sh deleted file mode 100755 index 2bde393..0000000 --- a/docker/alpine/build-alpine-image.sh +++ /dev/null @@ -1,33 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -# Build Alpine Image with pulsar python3 and cpp client libraries - -set -e - -ROOT_DIR=$(git rev-parse --show-toplevel) - -IMAGE_NAME=${IMAGE_NAME:-apachepulsar/pulsar-build:alpine-3.11} - -echo "==== Building image $IMAGE_NAME" - -cd $ROOT_DIR/pulsar-client-cpp/docker/alpine -docker build -t $IMAGE_NAME -f $ROOT_DIR/pulsar-client-cpp/docker/alpine/Dockerfile . - -echo "==== Successfully built image $IMAGE_NAME" diff --git a/docker/alpine/build-wheel-file-within-docker.sh b/docker/alpine/build-wheel-file-within-docker.sh deleted file mode 100755 index 63d4819..0000000 --- a/docker/alpine/build-wheel-file-within-docker.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/env bash -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -set -e -x - -ROOT_DIR=$(git rev-parse --show-toplevel) -cd $ROOT_DIR/pulsar-client-cpp -PYTHON_INCLUDE_DIR=${PYTHON_INCLUDE_DIR:-/usr/include/python3.8} -PYTHON_LIBRARY=${PYTHON_LIBRARY:-/usr/lib/python3.8} - -cmake . -DBUILD_TESTS=OFF \ - -DBUILD_PYTHON_WRAPPER=ON \ - -DCMAKE_BUILD_TYPE=Release \ - -DLINK_STATIC=ON \ - -DPYTHON_INCLUDE_DIR=${PYTHON_INCLUDE_DIR} \ - -DPYTHON_LIBRARY=${PYTHON_LIBRARY} - -make -j2 _pulsar - -cd python -python3 setup.py bdist_wheel diff --git a/docker/alpine/build-wheel.sh b/docker/alpine/build-wheel.sh deleted file mode 100755 index 953a1a3..0000000 --- a/docker/alpine/build-wheel.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env bash -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -set -e - -ROOT_DIR=$(git rev-parse --show-toplevel) -PROJECT_VERSION=$(python $ROOT_DIR/src/get-project-version.py) -IMAGE_NAME=${IMAGE_NAME:-apachepulsar/pulsar-build:alpine-3.11} - -ROOT_DIR=$(git rev-parse --show-toplevel) -cd $ROOT_DIR - -echo "Using image: $IMAGE_NAME" -VOLUME_OPTION=${VOLUME_OPTION:-"-v $ROOT_DIR:/pulsar"} -COMMAND="/pulsar/pulsar-client-cpp/docker/alpine/build-wheel-file-within-docker.sh" -DOCKER_CMD="docker run -i ${VOLUME_OPTION} ${IMAGE_NAME}" -$DOCKER_CMD bash -c "${COMMAND}" diff --git a/docker/build-client-lib-within-docker.sh b/docker/build-client-lib-within-docker.sh deleted file mode 100755 index 7329e7a..0000000 --- a/docker/build-client-lib-within-docker.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/usr/bin/env bash -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - - -set -e -x - -cd /pulsar/pulsar-client-cpp - -find . -name CMakeCache.txt | xargs -r rm -find . -name CMakeFiles | xargs -r rm -rf -rm -f lib/*.pb.* - -cmake . -DBUILD_TESTS=OFF -DBUILD_WIRESHARK=OFF -DLINK_STATIC=ON \ - -DPYTHON_INCLUDE_DIR=/opt/python/$PYTHON_SPEC/include/python$PYTHON_VERSION \ - -DPYTHON_LIBRARY=/opt/python/$PYTHON_SPEC/lib \ - -make pulsarShared pulsarStatic -j4 diff --git a/docker/build-client-lib.sh b/docker/build-client-lib.sh deleted file mode 100755 index 97cfc6a..0000000 --- a/docker/build-client-lib.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/usr/bin/env bash -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - - -set -e - -BUILD_IMAGE_NAME="${BUILD_IMAGE_NAME:-apachepulsar/pulsar-build}" - -ROOT_DIR=$(git rev-parse --show-toplevel) -cd $ROOT_DIR - -PYTHON_VERSIONS=( - '3.6 cp36-cp36m' -) - -for line in "${PYTHON_VERSIONS[@]}"; do - read -r -a PY <<< "$line" - PYTHON_VERSION=${PY[0]} - PYTHON_SPEC=${PY[1]} - echo "--------- Build Client library" - - IMAGE_NAME=$BUILD_IMAGE_NAME:manylinux-$PYTHON_SPEC - - echo "Using image: $IMAGE_NAME" - - VOLUME_OPTION=${VOLUME_OPTION:-"-v $ROOT_DIR:/pulsar"} - COMMAND="/pulsar/pulsar-client-cpp/docker/build-client-lib-within-docker.sh" - DOCKER_CMD="docker run -i ${VOLUME_OPTION} ${IMAGE_NAME}" - - $DOCKER_CMD bash -c "${COMMAND}" - -done diff --git a/docker/centos-7/Dockerfile b/docker/centos-7/Dockerfile deleted file mode 100644 index f1fa8b2..0000000 --- a/docker/centos-7/Dockerfile +++ /dev/null @@ -1,47 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - - -FROM centos:7.6.1810 - -RUN yum install -y gcc gcc-c++ make \ - protobuf-devel.x86_64 \ - libcurl-devel openssl-devel \ - boost boost-devel - -RUN curl -O -L https://github.com/protocolbuffers/protobuf/releases/download/v3.20.0/protobuf-cpp-3.20.0.tar.gz && \ - tar xfz protobuf-cpp-3.20.0.tar.gz && \ - cd protobuf-3.20.0/ && \ - CXXFLAGS=-fPIC ./configure && \ - make -j8 && make install && \ - cd .. && rm -rf protobuf-3.20.0/ protobuf-cpp-3.20.0.tar.gz -RUN mkdir -p /opt/cmake -WORKDIR /opt/cmake -RUN curl -L -O https://cmake.org/files/v3.4/cmake-3.4.0-Linux-x86_64.tar.gz \ - && tar zxf cmake-3.4.0-Linux-x86_64.tar.gz - -# googletest -RUN curl -O -L https://github.com/google/googletest/archive/refs/tags/release-1.10.0.tar.gz \ - && tar zxf release-1.10.0.tar.gz \ - && cd googletest-release-1.10.0 \ - && mkdir build && cd build \ - && /opt/cmake/cmake-3.4.0-Linux-x86_64/bin/cmake .. && make install - - -RUN yum install -y python3 \ No newline at end of file diff --git a/docker/push-images.sh b/docker/push-images.sh deleted file mode 100755 index a1806fa..0000000 --- a/docker/push-images.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/env bash -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - - -# Create all the Docker images for variations of Python versions - -set -e - -source python-versions.sh - -DOCKER_ORG=apachepulsar - -for line in "${PYTHON_VERSIONS[@]}"; do - read -r -a PY <<< "$line" - PYTHON_VERSION=${PY[0]} - PYTHON_SPEC=${PY[1]} - BASE_IMAGE=${PY[2]} - ARCH=${PY[3]} - - IMAGE_NAME=pulsar-build:$BASE_IMAGE-$PYTHON_SPEC-$ARCH - FULL_NAME=$DOCKER_ORG/$IMAGE_NAME - - echo "IMAGE_NAME: $IMAGE_NAME" - echo "FULL_NAME: $FULL_NAME" - docker tag $IMAGE_NAME $FULL_NAME - docker push $FULL_NAME - - echo "==== Successfully pushed image $FULL_NAME" -done
