290 lines
6.8 KiB
YAML
290 lines
6.8 KiB
YAML
#
|
|
# Configuration
|
|
#
|
|
#
|
|
# Build Matrix
|
|
#
|
|
branches:
|
|
only:
|
|
- master
|
|
- develop
|
|
- coverity_scan
|
|
- /^.*ci-.*$/
|
|
|
|
matrix:
|
|
- os: linux
|
|
dist: focal
|
|
language: c
|
|
|
|
git:
|
|
- depth: 1
|
|
|
|
compiler: gcc
|
|
env: DESC="linux/gcc build and test"
|
|
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- build-essential
|
|
- cmake
|
|
- net-tools
|
|
- python3-pip
|
|
- python3-setuptools
|
|
- valgrind
|
|
- psmisc
|
|
- unixodbc
|
|
- unixodbc-dev
|
|
- mono-complete
|
|
|
|
before_script:
|
|
- export TZ=Asia/Harbin
|
|
- date
|
|
- cd ${TRAVIS_BUILD_DIR}
|
|
- mkdir debug
|
|
- cd debug
|
|
|
|
script:
|
|
- cmake .. > /dev/null
|
|
- make > /dev/null
|
|
|
|
after_success:
|
|
- travis_wait 20
|
|
- |-
|
|
case $TRAVIS_OS_NAME in
|
|
linux)
|
|
cd ${TRAVIS_BUILD_DIR}/debug
|
|
make install > /dev/null || travis_terminate $?
|
|
|
|
py3ver=`python3 --version|awk '{print $2}'|cut -d "." -f 1,2` && apt install python$py3ver-dev
|
|
pip3 install psutil
|
|
pip3 install guppy3
|
|
pip3 install --user ${TRAVIS_BUILD_DIR}/src/connector/python/linux/python3/
|
|
|
|
cd ${TRAVIS_BUILD_DIR}/tests/examples/C#/taosdemo
|
|
mcs -out:taosdemo *.cs || travis_terminate $?
|
|
pkill -TERM -x taosd
|
|
fuser -k -n tcp 6030
|
|
sleep 1
|
|
${TRAVIS_BUILD_DIR}/debug/build/bin/taosd -c ${TRAVIS_BUILD_DIR}/debug/test/cfg > /dev/null &
|
|
sleep 5
|
|
mono taosdemo -Q DEFAULT -y || travis_terminate $?
|
|
pkill -KILL -x taosd
|
|
fuser -k -n tcp 6030
|
|
sleep 1
|
|
|
|
cd ${TRAVIS_BUILD_DIR}/tests
|
|
./test-all.sh smoke || travis_terminate $?
|
|
sleep 1
|
|
|
|
cd ${TRAVIS_BUILD_DIR}/tests/pytest
|
|
pkill -TERM -x taosd
|
|
fuser -k -n tcp 6030
|
|
sleep 1
|
|
./crash_gen.sh -a -p -t 4 -s 2000|| travis_terminate $?
|
|
sleep 1
|
|
|
|
cd ${TRAVIS_BUILD_DIR}/tests/pytest
|
|
./valgrind-test.sh 2>&1 > mem-error-out.log
|
|
sleep 1
|
|
|
|
|
|
# Color setting
|
|
RED='\033[0;31m'
|
|
GREEN='\033[1;32m'
|
|
GREEN_DARK='\033[0;32m'
|
|
GREEN_UNDERLINE='\033[4;32m'
|
|
NC='\033[0m'
|
|
|
|
grep 'start to execute\|ERROR SUMMARY' mem-error-out.log|grep -v 'grep'|uniq|tee uniq-mem-error-out.log
|
|
|
|
for memError in `grep 'ERROR SUMMARY' uniq-mem-error-out.log | awk '{print $4}'`
|
|
do
|
|
if [ -n "$memError" ]; then
|
|
if [ "$memError" -gt 12 ]; then
|
|
echo -e "${RED} ## Memory errors number valgrind reports is $memError.\
|
|
More than our threshold! ## ${NC}"
|
|
travis_terminate $memError
|
|
fi
|
|
fi
|
|
done
|
|
|
|
grep 'start to execute\|definitely lost:' mem-error-out.log|grep -v 'grep'|uniq|tee uniq-definitely-lost-out.log
|
|
for defiMemError in `grep 'definitely lost:' uniq-definitely-lost-out.log | awk '{print $7}'`
|
|
do
|
|
if [ -n "$defiMemError" ]; then
|
|
if [ "$defiMemError" -gt 13 ]; then
|
|
echo -e "${RED} ## Memory errors number valgrind reports \
|
|
Definitely lost is $defiMemError. More than our threshold! ## ${NC}"
|
|
travis_terminate $defiMemError
|
|
fi
|
|
fi
|
|
done
|
|
|
|
;;
|
|
esac
|
|
|
|
- os: linux
|
|
dist: bionic
|
|
language: c
|
|
compiler: gcc
|
|
env: COVERITY_SCAN=true
|
|
git:
|
|
- depth: 1
|
|
|
|
script:
|
|
- echo "this job is for coverity scan"
|
|
|
|
addons:
|
|
coverity_scan:
|
|
# GitHub project metadata
|
|
# ** specific to your project **
|
|
project:
|
|
name: TDengine
|
|
version: 2.x
|
|
description: TDengine
|
|
|
|
# Where email notification of build analysis results will be sent
|
|
notification_email: sdsang@taosdata.com, slguan@taosdata.com
|
|
|
|
# Commands to prepare for build_command
|
|
# ** likely specific to your build **
|
|
build_command_prepend: cmake . > /dev/null
|
|
|
|
# The command that will be added as an argument to "cov-build" to compile your project for analysis,
|
|
# ** likely specific to your build **
|
|
build_command: make
|
|
|
|
# Pattern to match selecting branches that will run analysis. We recommend leaving this set to 'coverity_scan'.
|
|
# Take care in resource usage, and consider the build frequency allowances per
|
|
# https://scan.coverity.com/faq#frequency
|
|
branch_pattern: coverity_scan
|
|
|
|
- os: linux
|
|
dist: trusty
|
|
language: c
|
|
git:
|
|
- depth: 1
|
|
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- build-essential
|
|
- cmake
|
|
- binutils-2.26
|
|
env:
|
|
- DESC="trusty/gcc-4.8/bintuils-2.26 build"
|
|
|
|
before_script:
|
|
- export TZ=Asia/Harbin
|
|
- date
|
|
- cd ${TRAVIS_BUILD_DIR}
|
|
- mkdir debug
|
|
- cd debug
|
|
|
|
script:
|
|
- cmake .. > /dev/null
|
|
- export PATH=/usr/lib/binutils-2.26/bin:$PATH && make
|
|
|
|
- os: linux
|
|
dist: bionic
|
|
language: c
|
|
compiler: clang
|
|
env: DESC="linux/clang build"
|
|
git:
|
|
- depth: 1
|
|
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- build-essential
|
|
- cmake
|
|
|
|
before_script:
|
|
- export TZ=Asia/Harbin
|
|
- date
|
|
- cd ${TRAVIS_BUILD_DIR}
|
|
- mkdir debug
|
|
- cd debug
|
|
|
|
script:
|
|
- cmake .. > /dev/null
|
|
- make > /dev/null
|
|
|
|
- os: linux
|
|
arch: arm64
|
|
dist: bionic
|
|
language: c
|
|
compiler: clang
|
|
env: DESC="arm64 linux/clang build"
|
|
git:
|
|
- depth: 1
|
|
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- build-essential
|
|
- cmake
|
|
|
|
before_script:
|
|
- export TZ=Asia/Harbin
|
|
- date
|
|
- cd ${TRAVIS_BUILD_DIR}
|
|
- mkdir debug
|
|
- cd debug
|
|
|
|
script:
|
|
- if [ "${TRAVIS_CPU_ARCH}" == "arm64" ]; then
|
|
cmake .. -DCPUTYPE=aarch64 > /dev/null;
|
|
else
|
|
cmake .. > /dev/null;
|
|
fi
|
|
- make > /dev/null
|
|
|
|
- os: linux
|
|
arch: arm64
|
|
dist: xenial
|
|
language: c
|
|
git:
|
|
- depth: 1
|
|
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- build-essential
|
|
- cmake
|
|
env:
|
|
- DESC="arm64 xenial build"
|
|
|
|
before_script:
|
|
- export TZ=Asia/Harbin
|
|
- date
|
|
- cd ${TRAVIS_BUILD_DIR}
|
|
- mkdir debug
|
|
- cd debug
|
|
|
|
script:
|
|
- if [ "${TRAVIS_CPU_ARCH}" == "arm64" ]; then
|
|
cmake .. -DCPUTYPE=aarch64 > /dev/null;
|
|
else
|
|
cmake .. > /dev/null;
|
|
fi
|
|
- make > /dev/null
|
|
|
|
- os: osx
|
|
osx_image: xcode11.4
|
|
language: c
|
|
compiler: clang
|
|
env: DESC="mac/clang build"
|
|
git:
|
|
- depth: 1
|
|
addons:
|
|
homebrew:
|
|
- cmake
|
|
|
|
script:
|
|
- cd ${TRAVIS_BUILD_DIR}
|
|
- mkdir debug
|
|
- cd debug
|
|
- cmake .. > /dev/null
|
|
- make > /dev/null
|