120 lines
3.0 KiB
YAML
120 lines
3.0 KiB
YAML
name: TDengine Release Build
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- 'main'
|
|
- '3.*'
|
|
paths-ignore:
|
|
- 'docs/**'
|
|
- 'packaging/**'
|
|
- 'tests/**'
|
|
- '**/*.md'
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
build:
|
|
name: Run on ${{ matrix.os }}
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-22.04
|
|
- macos-14
|
|
|
|
steps:
|
|
- name: Checkout the repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v5
|
|
with:
|
|
go-version: 1.18
|
|
|
|
- name: Install dependencies on Linux
|
|
if: runner.os == 'Linux'
|
|
run: |
|
|
sudo apt update -y
|
|
sudo apt install -y \
|
|
build-essential \
|
|
cmake \
|
|
gawk \
|
|
libgeos-dev \
|
|
libjansson-dev \
|
|
liblzma-dev \
|
|
libsnappy-dev \
|
|
libssl-dev \
|
|
libz-dev \
|
|
pkg-config \
|
|
zlib1g
|
|
|
|
- name: Install dependencies on macOS
|
|
if: runner.os == 'macOS'
|
|
run: |
|
|
brew update
|
|
brew install \
|
|
argp-standalone \
|
|
gawk \
|
|
gflags \
|
|
geos \
|
|
jansson \
|
|
openssl \
|
|
pkg-config \
|
|
snappy \
|
|
zlib
|
|
|
|
- name: Prepare install path
|
|
run: |
|
|
sudo mkdir -p /usr/local/lib
|
|
sudo mkdir -p /usr/local/include
|
|
|
|
- name: Build and install TDengine
|
|
run: |
|
|
mkdir debug && cd debug
|
|
cmake .. -DBUILD_TOOLS=true \
|
|
-DBUILD_KEEPER=true \
|
|
-DBUILD_HTTP=false \
|
|
-DBUILD_TEST=true \
|
|
-DWEBSOCKET=true \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DBUILD_DEPENDENCY_TESTS=false
|
|
make -j 4
|
|
sudo make install
|
|
which taosd
|
|
which taosadapter
|
|
which taoskeeper
|
|
|
|
- name: Statistics ldd
|
|
run: |
|
|
find ${{ github.workspace }}/debug/build/lib -type f -name "*.so" -print0 | xargs -0 ldd || true
|
|
find ${{ github.workspace }}/debug/build/bin -type f -print0 | xargs -0 ldd || true
|
|
|
|
- name: Statistics size
|
|
run: |
|
|
find ${{ github.workspace }}/debug/build/lib -type f -print0 | xargs -0 ls -lhrS
|
|
find ${{ github.workspace }}/debug/build/bin -type f -print0 | xargs -0 ls -lhrS
|
|
|
|
- name: Start taosd
|
|
run: |
|
|
cp /etc/taos/taos.cfg ./
|
|
sudo echo "supportVnodes 256" >> taos.cfg
|
|
nohup sudo taosd -c taos.cfg &
|
|
|
|
- name: Start taosadapter
|
|
run: nohup sudo taosadapter &
|
|
|
|
- name: Run tests with taosBenchmark
|
|
run: |
|
|
taosBenchmark -t 10 -n 10 -y
|
|
taos -s "select count(*) from test.meters"
|
|
|
|
- name: Clean up
|
|
if: always()
|
|
run: |
|
|
if pgrep taosd; then sudo pkill taosd; fi
|
|
if pgrep taosadapter; then sudo pkill taosadapter; fi
|