chore: bump version to 1.0.4 in package.json #21
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build Addons | |
| on: | |
| push: | |
| branches: | |
| - master | |
| pull_request: | |
| jobs: | |
| linux-gnu: | |
| runs-on: ubuntu-latest | |
| container: | |
| image: alibaba-cloud-linux-3-registry.cn-hangzhou.cr.aliyuncs.com/alinux3/alinux3:latest | |
| steps: | |
| - name: Install prerequisites | |
| run: | | |
| set -eux | |
| yum install -y git curl wget xz tar unzip rsync which python3 python3-pip python3-setuptools autoconf automake libtool pkgconfig gcc gcc-c++ make ninja-build cmake file vim procps-ng iputils | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install Node.js via NodeSource | |
| run: | | |
| set -eux | |
| curl -fsSL https://rpm.nodesource.com/setup_18.x | bash - | |
| yum install -y nodejs | |
| node -v | |
| npm -v | |
| - name: Install npm dependencies | |
| run: | | |
| set -eux | |
| npm install --no-audit --prefer-offline | |
| - name: Build RocketMQ native deps | |
| run: | | |
| set -eux | |
| ./deps/rocketmq/build.sh | |
| - name: Build addon (glibc) | |
| run: | | |
| set -eux | |
| npx cmake-js compile --CDCMAKE_BUILD_TYPE=Release | |
| - name: Detect architecture | |
| run: echo "arch=$(uname -m)" >> $GITHUB_OUTPUT | |
| id: detect_arch | |
| - name: Package artifact | |
| run: | | |
| set -eux | |
| mkdir -p Release | |
| cp build/rocketmq.node Release/linux-${{ steps.detect_arch.outputs.arch }}-gnu-debug-rocketmq.node | |
| strip --strip-all build/rocketmq.node | |
| cp build/rocketmq.node Release/linux-${{ steps.detect_arch.outputs.arch }}-gnu-rocketmq.node | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: linux-${{ steps.detect_arch.outputs.arch }}-gnu | |
| path: | | |
| Release/linux-${{ steps.detect_arch.outputs.arch }}-gnu-rocketmq.node | |
| Release/linux-${{ steps.detect_arch.outputs.arch }}-gnu-debug-rocketmq.node | |
| linux-musl: | |
| runs-on: ubuntu-latest | |
| container: | |
| image: alpine:latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install system dependencies | |
| run: | | |
| apk add --no-cache nodejs npm bash build-base cmake ninja python3 curl unzip git autoconf automake libtool pkgconfig ninja-build | |
| - name: Install npm dependencies | |
| run: npm install --no-audit --prefer-offline | |
| - name: Build RocketMQ native deps | |
| run: ./deps/rocketmq/build.sh | |
| - name: Build addon (musl) | |
| run: npx cmake-js compile --CDCMAKE_BUILD_TYPE=Release | |
| - name: Detect architecture | |
| run: echo "arch=$(uname -m)" >> $GITHUB_OUTPUT | |
| id: detect_arch | |
| - name: Package artifact | |
| run: | | |
| mkdir -p Release | |
| cp build/rocketmq.node Release/linux-${{ steps.detect_arch.outputs.arch }}-musl-debug-rocketmq.node | |
| strip --strip-all build/rocketmq.node | |
| cp build/rocketmq.node Release/linux-${{ steps.detect_arch.outputs.arch }}-musl-rocketmq.node | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: linux-${{ steps.detect_arch.outputs.arch }}-musl | |
| path: | | |
| Release/linux-${{ steps.detect_arch.outputs.arch }}-musl-rocketmq.node | |
| Release/linux-${{ steps.detect_arch.outputs.arch }}-musl-debug-rocketmq.node | |
| macos-universal: | |
| runs-on: macos-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 18 | |
| - name: Install build tools | |
| run: brew install cmake ninja xz autoconf automake libtool pkg-config | |
| - name: Install npm dependencies | |
| run: npm install --no-audit --prefer-offline | |
| - name: Build RocketMQ native deps | |
| run: ./deps/rocketmq/build.sh | |
| - name: Build addon (Darwin universal) | |
| run: | | |
| npx cmake-js compile --CDCMAKE_BUILD_TYPE=Release \ | |
| --CDCMAKE_OSX_ARCHITECTURES="arm64;x86_64" \ | |
| --CDCMAKE_OSX_DEPLOYMENT_TARGET=11 \ | |
| --CDCMAKE_SKIP_DEPENDENCY_TRACKING=ON | |
| - name: Package artifact | |
| run: | | |
| mkdir -p Release | |
| cp build/rocketmq.node Release/darwin-universal-debug-rocketmq.node | |
| strip -S -x build/rocketmq.node | |
| cp build/rocketmq.node Release/darwin-universal-rocketmq.node | |
| - name: Upload artifact | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: darwin-universal | |
| path: | | |
| Release/darwin-universal-rocketmq.node | |
| Release/darwin-universal-debug-rocketmq.node |