You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by mm...@apache.org on 2022/10/12 22:00:42 UTC

[pulsar-client-cpp] branch branch-3.0 updated (1eb861f -> d9706b3)

This is an automated email from the ASF dual-hosted git repository.

mmerli pushed a change to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/pulsar-client-cpp.git


    from 1eb861f  Use Alpine 3.12 to build APKs (#39)
     new 624cac1  Fix Ubuntu and macOS build guide (#44)
     new 3e1a722  Removed docker-build.sh script (#46)
     new d9706b3  Fixed typos in stage-release.sh (#47)

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 README.md                      | 70 ++++-----------------------------
 build-support/stage-release.sh |  7 ++--
 docker-build.sh                | 49 -----------------------
 docker-format.sh               | 47 ----------------------
 docker-tests.sh                | 88 ------------------------------------------
 5 files changed, 11 insertions(+), 250 deletions(-)
 delete mode 100755 docker-build.sh
 delete mode 100755 docker-format.sh
 delete mode 100755 docker-tests.sh


[pulsar-client-cpp] 03/03: Fixed typos in stage-release.sh (#47)

Posted by mm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mmerli pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/pulsar-client-cpp.git

commit d9706b379a28731556a51e97c1cf251d3ffcd461
Author: Matteo Merli <mm...@apache.org>
AuthorDate: Wed Oct 12 11:31:09 2022 -0700

    Fixed typos in stage-release.sh (#47)
---
 build-support/stage-release.sh | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/build-support/stage-release.sh b/build-support/stage-release.sh
index d435ca2..93b5c41 100755
--- a/build-support/stage-release.sh
+++ b/build-support/stage-release.sh
@@ -25,8 +25,8 @@ if [ $# -neq 2 ]; then
     exit 1
 fi
 
-DEST_PATH=$1
-WORKFLOW_ID=$1
+DEST_PATH=$(readlink -f $1)
+WORKFLOW_ID=$2
 
 pushd $(dirname "$0")
 PULSAR_CPP_PATH=$(git rev-parse --show-toplevel)
@@ -34,8 +34,7 @@ popd
 
 mkdir -p $DEST_PATH
 
-cd PULSAR_CPP_PATH
-VERSION=$(cat version.txt | xargs)
+cd $PULSAR_CPP_PATH
 
 build-support/generate-source-archive.sh $DEST_PATH
 build-support/download-release-artifacts.py $WORKFLOW_ID $DEST_PATH


[pulsar-client-cpp] 02/03: Removed docker-build.sh script (#46)

Posted by mm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mmerli pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/pulsar-client-cpp.git

commit 3e1a72240fabb4bebef03a63597dde531e358aef
Author: Matteo Merli <mm...@apache.org>
AuthorDate: Wed Oct 12 10:07:36 2022 -0700

    Removed docker-build.sh script (#46)
    
    * Removed docker-build.sh script
    
    * Removed ref to docker-format.sh
---
 README.md        | 18 +-----------
 docker-build.sh  | 49 -------------------------------
 docker-format.sh | 47 ------------------------------
 docker-tests.sh  | 88 --------------------------------------------------------
 4 files changed, 1 insertion(+), 201 deletions(-)

diff --git a/README.md b/README.md
index c7fc302..4cea378 100644
--- a/README.md
+++ b/README.md
@@ -73,21 +73,7 @@ Pulsar C++ Client Library has been tested on:
 
 ## Compilation
 
-### Compile within a Docker container
-
-You can compile the C++ client library within a Docker container that already
-contains all the required dependencies.
-
-```shell
-./docker-build.sh
-```
-
-Run unit tests:
-```shell
-./docker-tests.sh
-```
-
-### Compile on Ubuntu Server 20.04
+### Compile on Ubuntu
 
 #### Install all dependencies:
 
@@ -238,6 +224,4 @@ cd tests
 
 It's required to install [LLVM](https://llvm.org/builds/) for `clang-tidy` and `clang-format`. Pulsar C++ client use `clang-format` 6.0+ to format files.  `make format` automatically formats the files.
 
-Use `pulsar-client-cpp/docker-format.sh` to ensure the C++ sources are correctly formatted.
-
 We welcome contributions from the open source community, kindly make sure your changes are backward compatible with GCC 4.8 and Boost 1.53.
diff --git a/docker-build.sh b/docker-build.sh
deleted file mode 100755
index 796bf9b..0000000
--- a/docker-build.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.
-#
-
-# Build Pulsar C++ client within a Docker container
-
-# Fail script in case of errors
-set -e
-
-ROOT_DIR=$(git rev-parse --show-toplevel)
-cd $ROOT_DIR
-
-BUILD_IMAGE_NAME="${BUILD_IMAGE_NAME:-apachepulsar/pulsar-build}"
-BUILD_IMAGE_VERSION="${BUILD_IMAGE_VERSION:-ubuntu-20.04}"
-
-IMAGE="$BUILD_IMAGE_NAME:$BUILD_IMAGE_VERSION"
-
-echo "---- Build Pulsar C++ client using image $IMAGE (pass <skip-clean> for incremental build)"
-
-docker pull $IMAGE
-
-VOLUME_OPTION=${VOLUME_OPTION:-"-v $ROOT_DIR:/pulsar-client-cpp"}
-COMMAND="cd /pulsar-client-cpp && cmake . $CMAKE_ARGS && make check-format && make -j8"
-
-DOCKER_CMD="docker run -i ${VOLUME_OPTION} ${IMAGE}"
-
-# Remove any cached CMake relate file from previous builds
-if [ "$1" != "skip-clean" ]; then
-	find . -name CMakeCache.txt | xargs rm -f
-	find . -name CMakeFiles | xargs rm -rf
-fi
-
-$DOCKER_CMD bash -c "${COMMAND}"
diff --git a/docker-format.sh b/docker-format.sh
deleted file mode 100755
index 56a805f..0000000
--- a/docker-format.sh
+++ /dev/null
@@ -1,47 +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.
-#
-
-# Build Pulsar C++ client within a Docker container
-
-# Fail script in case of errors
-set -e
-
-ROOT_DIR=$(git rev-parse --show-toplevel)
-cd $ROOT_DIR
-
-BUILD_IMAGE_NAME="${BUILD_IMAGE_NAME:-apachepulsar/pulsar-build}"
-BUILD_IMAGE_VERSION="${BUILD_IMAGE_VERSION:-ubuntu-20.04}"
-
-IMAGE="$BUILD_IMAGE_NAME:$BUILD_IMAGE_VERSION"
-
-echo "---- Build Pulsar C++ client using image $IMAGE"
-
-docker pull $IMAGE
-
-VOLUME_OPTION=${VOLUME_OPTION:-"-v $ROOT_DIR:/pulsar-client-cpp"}
-COMMAND="cd /pulsar-client-cpp && cmake . $CMAKE_ARGS && make format"
-
-DOCKER_CMD="docker run -i ${VOLUME_OPTION} ${IMAGE}"
-
-# Remove any cached CMake relate file from previous builds
-find . -name CMakeCache.txt | xargs rm -f
-find . -name CMakeFiles | xargs rm -rf
-
-$DOCKER_CMD bash -c "${COMMAND}"
diff --git a/docker-tests.sh b/docker-tests.sh
deleted file mode 100755
index 2095eb4..0000000
--- a/docker-tests.sh
+++ /dev/null
@@ -1,88 +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.
-#
-
-# Run C++ unit tests within a Docker container
-
-# Fail script in case of errors
-set -e -x
-
-if [ "$1" = "--help" ]; then
-    echo "Usage:"
-    echo "--tests=\"<test-regex>\" (eg: --test=\"BasicEndToEndTest.*\")"
-    exit 0
-fi
-
-
-ROOT_DIR=$(git rev-parse --show-toplevel)
-cd $ROOT_DIR
-
-BUILD_IMAGE_NAME="${BUILD_IMAGE_NAME:-apachepulsar/pulsar-build}"
-BUILD_IMAGE_VERSION="${BUILD_IMAGE_VERSION:-ubuntu-20.04}"
-
-IMAGE="$BUILD_IMAGE_NAME:$BUILD_IMAGE_VERSION"
-
-echo "---- Testing Pulsar C++ client using image $IMAGE (type --help for more options)"
-
-docker pull $IMAGE
-
-CONTAINER_LABEL="pulsartests=$$"
-export GTEST_COLOR=${GTEST_COLOR:-no}
-DOCKER_CMD="docker run -e GTEST_COLOR -i -l $CONTAINER_LABEL -v $ROOT_DIR:/pulsar-client-cpp $IMAGE"
-
-
-for args in "$@"
-do
-    arg=$(echo $args | cut -f1 -d=)
-    val=$(echo $args | cut -f2 -d=)
-
-    case "$arg" in
-            --tests)   tests=${val} ;;
-            *)
-    esac
-done
-
-# Start 2 Pulsar standalone instances (one with TLS and one without)
-# and execute the tests
-set +e
-DISABLE_COLOR_OUTPUT=""
-if [ "$GTEST_COLOR" = "no" ]; then
-  DISABLE_COLOR_OUTPUT="| cat"
-fi
-
-# Java17 is required for CLI e.g) bin/pulsar create-token
-$DOCKER_CMD bash -c "apt-get -y install openjdk-17-jre-headless &&\
- set -o pipefail; cd /pulsar-client-cpp && git config --global --add safe.directory /pulsar-client-cpp && ./run-unit-tests.sh ${tests} $DISABLE_COLOR_OUTPUT"
-RES=$?
-if [ $RES -ne 0 ]; then
-  (
-  cd "$ROOT_DIR"
-  mkdir -p test-logs
-  cd test-logs
-  container_id=$(docker ps -a -q --filter "label=$CONTAINER_LABEL")
-  if [ -n "$container_id" ]; then
-    # copy logs from the container that ran the tests
-    docker commit $container_id pulsartests/$container_id
-    docker run -i --rm pulsartests/$container_id \
-      bash -c "cd /tmp; tar zcf - gtest-parallel-logs gtest_parallel_results.json pulsar-test-dist/logs" \
-      | tar zxvf -
-  fi
-  )
-fi
-exit $RES


[pulsar-client-cpp] 01/03: Fix Ubuntu and macOS build guide (#44)

Posted by mm...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

mmerli pushed a commit to branch branch-3.0
in repository https://gitbox.apache.org/repos/asf/pulsar-client-cpp.git

commit 624cac14b91d7dcbc944d3e0358443c8a58b21c8
Author: Kai Wang <kw...@apache.org>
AuthorDate: Thu Oct 13 01:06:08 2022 +0800

    Fix Ubuntu and macOS build guide (#44)
    
    * Fix Ubuntu and macOS build guide
    
    * Fixed readme
    
    Co-authored-by: Matteo Merli <mm...@apache.org>
---
 README.md | 52 +++++++---------------------------------------------
 1 file changed, 7 insertions(+), 45 deletions(-)

diff --git a/README.md b/README.md
index dbad721..c7fc302 100644
--- a/README.md
+++ b/README.md
@@ -92,37 +92,11 @@ Run unit tests:
 #### Install all dependencies:
 
 ```shell
-apt-get install -y g++ cmake libssl-dev libcurl4-openssl-dev \
-                libprotobuf-dev libboost-all-dev libgtest-dev google-mock \
+sudo apt-get install -y g++ cmake libssl-dev libcurl4-openssl-dev \
+                libprotobuf-dev libboost-all-dev libgtest-dev libgmock-dev \
                 protobuf-compiler
 ```
 
-#### Compile and install Google Test:
-
-```shell
-cd /usr/src/gtest
-sudo cmake .
-sudo make
-
-# Copy the libraries you just built to the OS library path.
-sudo cp lib/*.a /usr/lib
-```
-
-
-#### Compile and install Google Mock:
-
-```shell
-cd /usr/src/gmock
-sudo cmake .
-sudo make
-
-# Copy the gmock headers to the OS include path.
-sudo cp -r include/gmock /usr/include/
-# Copy the libraries you just built to the OS brary path.
-sudo cp lib/*.a /usr/lib
-```
-
-
 #### Compile Pulsar client library:
 
 ```shell
@@ -149,17 +123,7 @@ perf/perfConsumer
 
 #### Install all dependencies:
 ```shell
-# For openSSL
-brew install openssl
-export OPENSSL_INCLUDE_DIR=/usr/local/opt/openssl/include/
-export OPENSSL_ROOT_DIR=/usr/local/opt/openssl/
-
-# For Protobuf
-brew install protobuf boost boost-python log4cxx jsoncpp
-// If you are using python3, you need to install boost-python3
-
-# For GoogleTest
-brew install googletest
+brew install openssl protobuf boost boost-python3 googletest zstd snappy
 ```
 
 #### Compile Pulsar client library:
@@ -258,18 +222,16 @@ pulsar-client-cpp/build/examples/Release
 
 ## Tests
 ```shell
-# Source code
-pulsar-client-cpp/tests/
-
 # Execution
 # Start standalone broker
-pulsar-test-service-start.sh
+./pulsar-test-service-start.sh
 
 # Run the tests
-pulsar-client-cpp/tests/main
+cd tests
+./pulsar-tests
 
 # When no longer needed, stop standalone broker
-pulsar-test-service-stop.sh
+./pulsar-test-service-stop.sh
 ```
 
 ## Requirements for Contributors