Ubuntu (2.x taosbenchmark native debug) #1453
This file contains 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: Ubuntu (2.x taosbenchmark native debug) | |
on: | |
schedule: | |
- cron: "10 16 * * *" | |
push: | |
branches: [ develop ] | |
pull_request: | |
branches: [ develop ] | |
env: | |
TOOLS_BUILD_TYPE: Debug | |
PR_NUMBER: ${{ github.event.number }} | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Step that prints name of pull request's base branch | |
run: | | |
echo "Pull request's base branch is: ${BASE_BRANCH}" | |
echo "Pull request's branch is: ${GITHUB_REF##*/}" | |
echo "Pull request's head ref is: ${GITHUB_HEAD_REF}" | |
env: | |
BASE_BRANCH: ${{ github.base_ref }} | |
if: github.event_name == 'pull_request' | |
- uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 # OR "2" -> To retrieve the preceding commit. | |
- name: Get changed files | |
id: changed-files | |
uses: tj-actions/[email protected] | |
- name: List all changed files | |
run: | | |
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do | |
echo "$file was changed" | |
done | |
- name: Get specific changed files | |
id: changed-files-specific | |
uses: tj-actions/[email protected] | |
with: | |
files: | | |
src/bench* | |
tests/taosbenchmark* | |
packaging/tools/* | |
inc/* | |
.github/workflows/2.x-taosbenchmark-debug.yml | |
- name: Run step if any of the listed files above change | |
if: steps.changed-files-specific.outputs.any_changed == 'true' | |
run: | | |
echo "One or more files listed above has changed." | |
- name: Checkout TDengine 2.6 | |
if: steps.changed-files-specific.outputs.any_changed == 'true' | |
uses: actions/checkout@v2 | |
with: | |
submodules: recursive | |
repository: 'taosdata/TDengine' | |
path: 'TDengine' | |
ref: '2.6' | |
- name: Change time zone | |
if: steps.changed-files-specific.outputs.any_changed == 'true' | |
run: | | |
sudo timedatectl set-timezone Asia/Shanghai | |
sudo date | |
- name: Checkout TDengine's taos-tools to PR number | |
if: | | |
(steps.changed-files-specific.outputs.any_changed == 'true' && | |
github.event_name == 'pull_request') | |
run: | | |
cd TDengine/src/kit/taos-tools | |
git fetch origin +refs/pull/${{env.PR_NUMBER}}/merge | |
git checkout -qf FETCH_HEAD | |
- name: Set up Go | |
if: steps.changed-files-specific.outputs.any_changed == 'true' | |
uses: actions/setup-go@v3 | |
with: | |
go-version: 1.17 | |
- name: Build & Install TDengine | |
if: steps.changed-files-specific.outputs.any_changed == 'true' | |
run: | | |
sudo apt install libjansson-dev libsnappy-dev liblzma-dev libz-dev zlib1g pkg-config -y | |
cd TDengine && mkdir debug && cd debug && cmake .. -DBUILD_JDBC=false -DBUILD_TOOLS=true -DTOOLS_BUILD_TYPE=${{env.TOOLS_BUILD_TYPE}} -DTOOLS_SANITIZE=true -DBUILD_HTTP=false && make -j8 && sudo make install | |
if [[ ! -f /usr/local/bin/taosdump ]] && [[ ! -f /usr/local/bin/taosBenchmark ]] | |
then | |
echo "taos-tools build failure" | |
exit 1 | |
fi | |
pip3 install decorator numpy fabric2 psutil pandas faker toml taospy > /dev/null | |
sudo pkill -9 taosadapter || : | |
sudo pkill -9 taosd || : | |
- name: taosBenchmark Test | |
if: steps.changed-files-specific.outputs.any_changed == 'true' | |
run: | | |
cd TDengine/src/kit/taos-tools/tests | |
sudo pkill -9 taosadapter || : | |
sudo pkill -9 taosd || : | |
if find taosbenchmark -name "*.py"|grep -Ev "v3"|grep -q .; | |
then | |
for i in `find taosbenchmark -name "*.py"|grep -Ev "v3"|sort`; \ | |
do python3 ./test.py -f $i \ | |
&& echo -e "\033[32m taosbenchmark-debug-test/$i success! \033[0m" \ | |
| tee -a ~/taosbenchmark-debug-success.txt \ | |
|| echo -e "\033[31m taosbenchmark-debug-test/$i failed! \033[0m" \ | |
| tee -a ~/taosbenchmark-debug-failed.txt ; \ | |
done | |
fi | |
- name: Check Test Result | |
if: steps.changed-files-specific.outputs.any_changed == 'true' | |
run: | | |
if [ -f ~/taosbenchmark-debug-failed.txt ]; then | |
cat ~/taosbenchmark-debug-failed.txt | |
exit 1 | |
elif [ -f ~/taosbenchmark-debug-success.txt ]; then | |
cat ~/taosbenchmark-debug-success.txt | |
fi |