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/09/30 18:53:14 UTC
[pulsar-client-cpp] branch main updated: Fixed RPM / Deb / APK packages and enabled CI build (#11)
This is an automated email from the ASF dual-hosted git repository.
mmerli pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pulsar-client-cpp.git
The following commit(s) were added to refs/heads/main by this push:
new 40c7406 Fixed RPM / Deb / APK packages and enabled CI build (#11)
40c7406 is described below
commit 40c7406cb587906d3a07f7ddb59256d17ea4c67c
Author: Matteo Merli <mm...@apache.org>
AuthorDate: Fri Sep 30 11:53:10 2022 -0700
Fixed RPM / Deb / APK packages and enabled CI build (#11)
* Fixed RPM / Deb / APK packages and enabled CI build
* Fixed main branch name
* Tweaking ci job
* Fixed lib names
* Fixed RPM path
* Fixed vcpkg cache path
---
.github/workflows/ci-pr-validation.yaml | 201 +++++++++++++++++++++
.gitignore | 6 +
.../generate-source-archive.sh | 10 +-
docker-build-centos7.sh | 8 +-
pkg/apk/.gitignore | 1 +
pkg/apk/APKBUILD | 7 +-
pkg/apk/build-apk.sh | 17 +-
pkg/apk/docker-build-apk.sh | 4 +-
pkg/deb/build-deb.sh | 23 +--
pkg/deb/docker-build-deb.sh | 15 +-
pkg/rpm/Dockerfile | 2 +-
pkg/rpm/SPECS/pulsar-client.spec | 21 +--
pkg/rpm/build-rpm.sh | 8 +-
pkg/rpm/docker-build-rpm.sh | 15 +-
14 files changed, 263 insertions(+), 75 deletions(-)
diff --git a/.github/workflows/ci-pr-validation.yaml b/.github/workflows/ci-pr-validation.yaml
new file mode 100644
index 0000000..e0a9c7f
--- /dev/null
+++ b/.github/workflows/ci-pr-validation.yaml
@@ -0,0 +1,201 @@
+#
+# 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.
+#
+
+name: CI - C++ Build - PR validation
+on:
+ pull_request:
+ branches:
+ - main
+ push:
+ branches:
+ - main
+
+concurrency:
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: true
+
+jobs:
+
+ cpp-build-centos7:
+ name: Build CPP Client on CentOS7
+ runs-on: ubuntu-20.04
+ timeout-minutes: 120
+
+ steps:
+ - name: checkout
+ uses: actions/checkout@v2
+
+ - name: build cpp client on centos 7
+ run: |
+ echo "Build C++ client library on CentOS 7"
+ ./docker-build-centos7.sh
+
+ cpp-build-windows:
+ timeout-minutes: 120
+ name: Build CPP Client on ${{ matrix.name }}
+ runs-on: ${{ matrix.os }}
+ env:
+ VCPKG_ROOT: '${{ github.workspace }}/vcpkg'
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - name: 'Windows x64'
+ os: windows-2022
+ triplet: x64-windows
+ vcpkg_dir: 'C:\vcpkg'
+ suffix: 'windows-win64'
+ generator: 'Visual Studio 17 2022'
+ arch: '-A x64'
+ - name: 'Windows x86'
+ os: windows-2022
+ triplet: x86-windows
+ vcpkg_dir: 'C:\vcpkg'
+ suffix: 'windows-win32'
+ generator: 'Visual Studio 17 2022'
+ arch: '-A Win32'
+
+ steps:
+ - name: checkout
+ uses: actions/checkout@v2
+
+ - name: Restore vcpkg and its artifacts.
+ uses: actions/cache@v2
+ id: vcpkg-cache
+ with:
+ path: |
+ ${{ env.VCPKG_ROOT }}
+ vcpkg_installed
+ !${{ env.VCPKG_ROOT }}/.git
+ !${{ env.VCPKG_ROOT }}/buildtrees
+ !${{ env.VCPKG_ROOT }}/packages
+ !${{ env.VCPKG_ROOT }}/downloads
+ key: |
+ ${{ runner.os }}-${{ matrix.triplet}}-${{ hashFiles( 'pulsar-client-cpp/vcpkg.json' ) }}
+
+ - name: Get vcpkg(windows)
+ if: ${{ runner.os == 'Windows' && steps.vcpkg-cache.outputs.cache-hit != 'true' }}
+ run: |
+ cd ${{ github.workspace }}
+ mkdir build -force
+ git clone https://github.com/Microsoft/vcpkg.git
+ cd vcpkg
+ .\bootstrap-vcpkg.bat
+
+ - name: remove system vcpkg(windows)
+ if: runner.os == 'Windows'
+ run: rm -rf "$VCPKG_INSTALLATION_ROOT"
+ shell: bash
+
+ - name: Install vcpkg packages
+ run: |
+ ${{ env.VCPKG_ROOT }}\vcpkg.exe install --triplet ${{ matrix.triplet }}
+
+ - name: Configure (default)
+
+ shell: bash
+ run: |
+ if [ "$RUNNER_OS" == "Windows" ]; then
+ cmake \
+ -B ./build-0 \
+ -G "${{ matrix.generator }}" ${{ matrix.arch }} \
+ -DBUILD_TESTS=OFF \
+ -DVCPKG_TRIPLET=${{ matrix.triplet }} \
+ -DCMAKE_BUILD_TYPE=Release \
+ -S .
+ fi
+
+ - name: Compile
+ shell: bash
+ run: |
+ if [ "$RUNNER_OS" == "Windows" ]; then
+ cmake --build ./build-0 --parallel --config Release
+ fi
+
+ - name: Configure (dynamic library only)
+ shell: bash
+ run: |
+ if [ "$RUNNER_OS" == "Windows" ]; then
+ cmake \
+ -B ./build-1 \
+ -G "${{ matrix.generator }}" ${{ matrix.arch }} \
+ -DBUILD_TESTS=OFF \
+ -DVCPKG_TRIPLET=${{ matrix.triplet }} \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DBUILD_STATIC_LIB=OFF \
+ -S .
+ fi
+
+ - name: Compile
+ shell: bash
+ run: |
+ if [ "$RUNNER_OS" == "Windows" ]; then
+ cmake --build ./build-1 --parallel --config Release
+ fi
+
+ deb-packaging:
+ name: Build Debian Package
+ runs-on: ubuntu-20.04
+ timeout-minutes: 120
+
+ steps:
+ - name: checkout
+ uses: actions/checkout@v2
+
+ - name: Package Pulsar source
+ run: build-support/generate-source-archive.sh
+
+ - name: Build Debian packages
+ run: |
+ echo "Build Debian packages"
+ BUILD_IMAGE=1 pkg/deb/docker-build-deb.sh
+
+ rpm-packaging:
+ name: Build RPM Package
+ runs-on: ubuntu-20.04
+ timeout-minutes: 120
+
+ steps:
+ - name: checkout
+ uses: actions/checkout@v2
+
+ - name: Package Pulsar source
+ run: build-support/generate-source-archive.sh
+
+ - name: Build RPM packages
+ run: |
+ echo "Build RPM packages"
+ BUILD_IMAGE=1 pkg/rpm/docker-build-rpm.sh
+
+# apk-packaging:
+# name: Build Alpine Linux APK Package
+# runs-on: ubuntu-20.04
+# timeout-minutes: 120
+#
+# steps:
+# - name: checkout
+# uses: actions/checkout@v2
+#
+# - name: Package Pulsar source
+# run: build-support/generate-source-archive.sh
+#
+# - name: Build APK packages
+# run: |
+# echo "Build APK packages"
+# BUILD_IMAGE=1 pkg/apk/docker-build-apk.sh
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
index 8c8c065..5b3f666 100644
--- a/.gitignore
+++ b/.gitignore
@@ -33,6 +33,8 @@ lib*.so*
# Linux swap file
*.swp
+apache-pulsar-client-cpp-*.tar.gz
+
# Exclude compiled executables
/examples/SampleProducer
/examples/SampleProducerCApi
@@ -89,3 +91,7 @@ CMakeSettings.json
# vcpkg dependencies directory
vcpkg_installed/
+
+
+*.orig
+*.rej
diff --git a/pkg/apk/docker-build-apk.sh b/build-support/generate-source-archive.sh
similarity index 83%
copy from pkg/apk/docker-build-apk.sh
copy to build-support/generate-source-archive.sh
index e458d4a..d88f081 100755
--- a/pkg/apk/docker-build-apk.sh
+++ b/build-support/generate-source-archive.sh
@@ -18,12 +18,10 @@
# under the License.
#
-set -e
-
ROOT_DIR=$(git rev-parse --show-toplevel)
-IMAGE=apachepulsar/pulsar-build:alpine-3.11
-docker pull $IMAGE
+VERSION=$(cat ${ROOT_DIR}/version.txt)
+
+NAME=apache-pulsar-client-cpp-$VERSION
-docker run -i -v $ROOT_DIR:/pulsar $IMAGE \
- /pulsar/pulsar-client-cpp/pkg/apk/build-apk.sh
+git archive --format=tar.gz --prefix ${NAME}/ -o ${NAME}.tar.gz HEAD
diff --git a/docker-build-centos7.sh b/docker-build-centos7.sh
index f93d379..4996e4f 100755
--- a/docker-build-centos7.sh
+++ b/docker-build-centos7.sh
@@ -23,15 +23,15 @@
set -e
ROOT_DIR=$(git rev-parse --show-toplevel)
-cd $ROOT_DIR/pulsar-client-cpp
+cd $ROOT_DIR
IMAGE="${BUILD_IMAGE_NAME:-apachepulsar/pulsar-cpp-build-centos7}"
docker pull "${IMAGE}"
-VOLUME_OPTION=${VOLUME_OPTION:-"-v $ROOT_DIR:/pulsar"}
-COMMAND="cd /pulsar/pulsar-client-cpp && mkdir -p _builds && cd _builds &&
- /opt/cmake/cmake-3.4.0-Linux-x86_64/bin/cmake .. -DBUILD_PYTHON_WRAPPER=OFF -DBUILD_TESTS=ON && make -j8"
+VOLUME_OPTION=${VOLUME_OPTION:-"-v $ROOT_DIR:/pulsar-client-cpp"}
+COMMAND="cd /pulsar-client-cpp && mkdir -p _builds && cd _builds &&
+ /opt/cmake/cmake-3.4.0-Linux-x86_64/bin/cmake .. -DBUILD_TESTS=ON && make -j8"
DOCKER_CMD="docker run -i ${VOLUME_OPTION} ${IMAGE}"
diff --git a/pkg/apk/.gitignore b/pkg/apk/.gitignore
index 7012f3a..842209a 100644
--- a/pkg/apk/.gitignore
+++ b/pkg/apk/.gitignore
@@ -2,3 +2,4 @@ pkg
perf
examples
lib
+src
diff --git a/pkg/apk/APKBUILD b/pkg/apk/APKBUILD
index 10bdd72..e3ae244 100644
--- a/pkg/apk/APKBUILD
+++ b/pkg/apk/APKBUILD
@@ -20,7 +20,7 @@
# Maintainer: "Apache Pulsar <de...@pulsar.apache.org>"
pkgname="apache-pulsar-client"
-pkgver="$POM_VERSION"
+pkgver="$VERSION"
pkgrel=0
pkgdesc="Apache Pulsar - distributed pub-sub messaging system"
url="https://pulsar.apache.org"
@@ -46,9 +46,8 @@ build() {
-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
-DCMAKE_C_FLAGS="$CFLAGS" \
-DBUILD_TESTS=OFF \
- -DBUILD_PYTHON_WRAPPER=OFF \
- -DLINK_STATIC=ON \
- ${CMAKE_CROSSOPTS} ${SRC_ROOT_DIR}/pulsar-client-cpp
+ -DLINK_STATIC=ON \
+ ${CMAKE_CROSSOPTS} ${ROOT_DIR}
make
}
diff --git a/pkg/apk/build-apk.sh b/pkg/apk/build-apk.sh
index c316d18..b31a131 100755
--- a/pkg/apk/build-apk.sh
+++ b/pkg/apk/build-apk.sh
@@ -20,14 +20,21 @@
set -e -x
-export SRC_ROOT_DIR=$(git rev-parse --show-toplevel)
-cd $SRC_ROOT_DIR/pulsar-client-cpp/pkg/apk
+cd /pulsar-client-cpp
+export ROOT_DIR=$(pwd)
-VERSION=`python3 $SRC_ROOT_DIR/src/get-project-version.py`
+rm -f CMakeCache.txt
+rm -rf CMakeFiles
+
+cd $ROOT_DIR/pkg/apk
+
+
+
+POM_VERSION=`cat $ROOT_DIR/version.txt | xargs`
# Sanitize the version string
-export POM_VERSION=`echo $VERSION | sed -E 's/-[a-z]+-/./' | sed -E 's/.[A-Z]+././'`
+export VERSION=`echo $POM_VERSION | sed -E 's/\-[a-zA-Z]+//'`
-echo "POM_VERSION: $POM_VERSION"
+echo "VERSION: $VERSION"
abuild-keygen -a -i -n
chmod 755 ~
diff --git a/pkg/apk/docker-build-apk.sh b/pkg/apk/docker-build-apk.sh
index e458d4a..c400c7d 100755
--- a/pkg/apk/docker-build-apk.sh
+++ b/pkg/apk/docker-build-apk.sh
@@ -25,5 +25,5 @@ IMAGE=apachepulsar/pulsar-build:alpine-3.11
docker pull $IMAGE
-docker run -i -v $ROOT_DIR:/pulsar $IMAGE \
- /pulsar/pulsar-client-cpp/pkg/apk/build-apk.sh
+docker run -i -v $ROOT_DIR:/pulsar-client-cpp $IMAGE \
+ /pulsar-client-cpp/pkg/apk/build-apk.sh
diff --git a/pkg/deb/build-deb.sh b/pkg/deb/build-deb.sh
index b7409de..5835714 100755
--- a/pkg/deb/build-deb.sh
+++ b/pkg/deb/build-deb.sh
@@ -20,28 +20,28 @@
set -e -x
-cd /pulsar
+cd /pulsar-client-cpp
SRC_ROOT_DIR=$(pwd)
-cd $SRC_ROOT_DIR/pulsar-client-cpp/pkg/deb
+cd pkg/deb
-POM_VERSION=`$SRC_ROOT_DIR/src/get-project-version.py`
+POM_VERSION=`cat $SRC_ROOT_DIR/version.txt | xargs`
# Sanitize VERSION by removing `SNAPSHOT` if any since it's not legal in DEB
VERSION=`echo $POM_VERSION | awk -F- '{print $1}'`
-ROOT_DIR=apache-pulsar-$POM_VERSION-src
-CPP_DIR=$ROOT_DIR/pulsar-client-cpp
+ROOT_DIR=apache-pulsar-client-cpp-$POM_VERSION
+CPP_DIR=$ROOT_DIR
rm -rf BUILD
mkdir BUILD
cd BUILD
-tar xfz $SRC_ROOT_DIR/target/apache-pulsar-$POM_VERSION-src.tar.gz
+tar xfz $SRC_ROOT_DIR/apache-pulsar-client-cpp-$POM_VERSION.tar.gz
pushd $CPP_DIR
# link libraries for protoc
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
chmod +x $(find . -name "*.sh")
-cmake . -DBUILD_TESTS=OFF -DBUILD_PYTHON_WRAPPER=OFF -DBUILD_PERF_TOOLS=OFF -DLINK_STATIC=ON
+cmake . -DBUILD_TESTS=OFF -DBUILD_PERF_TOOLS=OFF -DLINK_STATIC=ON
make pulsarShared pulsarSharedNossl pulsarStatic pulsarStaticWithDeps -j 3
popd
@@ -77,13 +77,8 @@ ls $CPP_DIR/lib/libpulsar*
cp -ar $CPP_DIR/include/pulsar $DEVEL_DEST_DIR/usr/include/
cp $CPP_DIR/lib/libpulsar.a $DEVEL_DEST_DIR/usr/lib
cp $CPP_DIR/lib/libpulsarwithdeps.a $DEVEL_DEST_DIR/usr/lib
-cp $CPP_DIR/lib/libpulsar.so.$POM_VERSION $DEST_DIR/usr/lib
-cp $CPP_DIR/lib/libpulsarnossl.so.$POM_VERSION $DEST_DIR/usr/lib
-
-pushd $DEST_DIR/usr/lib
-ln -s libpulsar.so.$POM_VERSION libpulsar.so
-ln -s libpulsarnossl.so.$POM_VERSION libpulsarnossl.so
-popd
+cp $CPP_DIR/lib/libpulsar.so $DEST_DIR/usr/lib
+cp $CPP_DIR/lib/libpulsarnossl.so $DEST_DIR/usr/lib
cp $ROOT_DIR/NOTICE $DEST_DIR/usr/share/doc/pulsar-client-$VERSION
cp $CPP_DIR/pkg/licenses/* $DEST_DIR/usr/share/doc/pulsar-client-$VERSION
diff --git a/pkg/deb/docker-build-deb.sh b/pkg/deb/docker-build-deb.sh
index bc7f422..85e4cef 100755
--- a/pkg/deb/docker-build-deb.sh
+++ b/pkg/deb/docker-build-deb.sh
@@ -20,15 +20,10 @@
set -ex
-ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )"/../../.. &> /dev/null && pwd )"
-IMAGE_NAME=apachepulsar/pulsar-build:debian-9-2.11
+ROOT_DIR=$(git rev-parse --show-toplevel)
-if [[ -z $BUILD_IMAGE ]]; then
- # pull the image from DockerHub by default
- docker pull $IMAGE_NAME
-else
- docker build --platform linux/amd64 -t $IMAGE_NAME $ROOT_DIR/pulsar-client-cpp/pkg/deb
-fi
+IMAGE_NAME=apachepulsar/pulsar-build:debian-9-2.11-x86_64
-docker run --platform linux/amd64 -v $ROOT_DIR:/pulsar $IMAGE_NAME \
- /pulsar/pulsar-client-cpp/pkg/deb/build-deb.sh
+docker pull $IMAGE_NAME
+docker run -v $ROOT_DIR:/pulsar-client-cpp $IMAGE_NAME \
+ /pulsar-client-cpp/pkg/deb/build-deb.sh
diff --git a/pkg/rpm/Dockerfile b/pkg/rpm/Dockerfile
index 9e4a057..246ca23 100644
--- a/pkg/rpm/Dockerfile
+++ b/pkg/rpm/Dockerfile
@@ -19,7 +19,7 @@
# Build pulsar client library in Centos with tools to build static RPM
-FROM --platform=linux/amd64 centos:7
+FROM centos:7
RUN yum update -y && \
yum install -y gcc-c++ make rpm-build which \
diff --git a/pkg/rpm/SPECS/pulsar-client.spec b/pkg/rpm/SPECS/pulsar-client.spec
index b23fd41..b4ae946 100644
--- a/pkg/rpm/SPECS/pulsar-client.spec
+++ b/pkg/rpm/SPECS/pulsar-client.spec
@@ -28,7 +28,7 @@ License: Apache License v2
Name: %{name}
Version: %{version}
Release: %{release}
-Source: apache-pulsar-%{pom_version}-src.tar.gz
+Source: apache-pulsar-client-cpp-%{pom_version}.tar.gz
Prefix: /usr
AutoReq: no
@@ -49,16 +49,13 @@ The devel package contains C++ and C API headers and `libpulsar.a`
static library.
%prep
-%setup -q -n apache-pulsar-%{pom_version}-src
+%setup -q -n apache-pulsar-client-cpp-%{pom_version}
%build
-cd pulsar-client-cpp
-chmod +x $(find . -name "*.sh")
-cmake . -DBUILD_TESTS=OFF -DLINK_STATIC=ON -DBUILD_PYTHON_WRAPPER=OFF
+cmake . -DBUILD_TESTS=OFF -DLINK_STATIC=ON
make pulsarShared pulsarSharedNossl pulsarStatic pulsarStaticWithDeps -j 3
%install
-cd pulsar-client-cpp
INCLUDE_DIR=$RPM_BUILD_ROOT/usr/include
LIB_DIR=$RPM_BUILD_ROOT/usr/lib
DOC_DIR=$RPM_BUILD_ROOT/usr/share/doc/pulsar-client-%{version}
@@ -68,25 +65,19 @@ mkdir -p $INCLUDE_DIR $LIB_DIR $DOC_DIR $DOC_DEVEL_DIR
cp -ar include/pulsar $INCLUDE_DIR
cp lib/libpulsar.a $LIB_DIR
cp lib/libpulsarwithdeps.a $LIB_DIR
-cp lib/libpulsar.so.%{pom_version} $LIB_DIR
-cp lib/libpulsarnossl.so.%{pom_version} $LIB_DIR
+cp lib/libpulsar.so $LIB_DIR
+cp lib/libpulsarnossl.so $LIB_DIR
# Copy LICENSE files
-cp ../NOTICE $DOC_DIR
+cp NOTICE $DOC_DIR
cp pkg/licenses/* $DOC_DIR
cp $DOC_DIR/* $DOC_DEVEL_DIR/
-cd $LIB_DIR
-ln -s libpulsar.so.%{pom_version} libpulsar.so
-ln -s libpulsarnossl.so.%{pom_version} libpulsarnossl.so
-
%files
%defattr(-,root,root)
/usr/lib/libpulsar.so
-/usr/lib/libpulsar.so.%{pom_version}
/usr/lib/libpulsarnossl.so
-/usr/lib/libpulsarnossl.so.%{pom_version}
/usr/share/doc/pulsar-client-%{version}
%files devel
diff --git a/pkg/rpm/build-rpm.sh b/pkg/rpm/build-rpm.sh
index 97647a1..977ae72 100755
--- a/pkg/rpm/build-rpm.sh
+++ b/pkg/rpm/build-rpm.sh
@@ -20,18 +20,18 @@
set -e
-cd /pulsar
+cd /pulsar-client-cpp
ROOT_DIR=$(pwd)
-cd $ROOT_DIR/pulsar-client-cpp/pkg/rpm
+cd $ROOT_DIR/pkg/rpm
-POM_VERSION=`$ROOT_DIR/src/get-project-version.py`
+POM_VERSION=`cat $ROOT_DIR/version.txt | xargs`
# Sanitize VERSION by removing `-incubating` since it's not legal in RPM
VERSION=`echo $POM_VERSION | awk -F- '{print $1}'`
mkdir -p BUILD RPMS SOURCES SPECS SRPMS
-cp $ROOT_DIR/target/apache-pulsar-$POM_VERSION-src.tar.gz SOURCES
+cp $ROOT_DIR/apache-pulsar-client-cpp-$POM_VERSION.tar.gz SOURCES
rpmbuild -v -bb --clean \
--define "version $VERSION" \
diff --git a/pkg/rpm/docker-build-rpm.sh b/pkg/rpm/docker-build-rpm.sh
index 4ba02af..3c50a51 100755
--- a/pkg/rpm/docker-build-rpm.sh
+++ b/pkg/rpm/docker-build-rpm.sh
@@ -20,15 +20,10 @@
set -ex
-ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )"/../../.. &> /dev/null && pwd )"
-IMAGE_NAME=apachepulsar/pulsar-build:centos-7-2.11
+ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )"/../.. &> /dev/null && pwd )"
+IMAGE_NAME=apachepulsar/pulsar-build:centos-7-2.11-x86_64
-if [[ -z $BUILD_IMAGE ]]; then
- # pull the image from DockerHub by default
- docker pull $IMAGE_NAME
-else
- docker build --platform linux/amd64 -t $IMAGE_NAME $ROOT_DIR/pulsar-client-cpp/pkg/rpm
-fi
+docker pull $IMAGE_NAME
-docker run --platform linux/amd64 -v $ROOT_DIR:/pulsar $IMAGE_NAME \
- /pulsar/pulsar-client-cpp/pkg/rpm/build-rpm.sh
+docker run -v $ROOT_DIR:/pulsar-client-cpp $IMAGE_NAME \
+ /pulsar-client-cpp/pkg/rpm/build-rpm.sh