# # 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 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 --user ${TRAVIS_BUILD_DIR}/src/connector/python/linux/python3/ cd ${TRAVIS_BUILD_DIR}/tests ./test-all.sh full || 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 env: - DESC="trusty/gcc-4.8 build" before_script: - export TZ=Asia/Harbin - date - cd ${TRAVIS_BUILD_DIR} - mkdir debug - cd debug script: - cmake .. > /dev/null - 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="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: trusty language: c git: - depth: 1 addons: apt: packages: - build-essential - cmake env: - DESC="trusty/gcc-4.8 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 # 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