2022-02-08 01:29:49 +00:00
|
|
|
import hudson.model.Result
|
|
|
|
|
import hudson.model.*;
|
|
|
|
|
import jenkins.model.CauseOfInterruption
|
2022-08-22 06:30:44 +00:00
|
|
|
docs_only=0
|
2022-02-08 01:29:49 +00:00
|
|
|
node {
|
|
|
|
|
}
|
|
|
|
|
def abortPreviousBuilds() {
|
2022-04-28 06:55:31 +00:00
|
|
|
def currentJobName = env.JOB_NAME
|
|
|
|
|
def currentBuildNumber = env.BUILD_NUMBER.toInteger()
|
|
|
|
|
def jobs = Jenkins.instance.getItemByFullName(currentJobName)
|
|
|
|
|
def builds = jobs.getBuilds()
|
2022-02-08 01:29:49 +00:00
|
|
|
|
2022-04-28 06:55:31 +00:00
|
|
|
for (build in builds) {
|
|
|
|
|
if (!build.isBuilding()) {
|
|
|
|
|
continue;
|
|
|
|
|
}
|
2022-02-08 01:29:49 +00:00
|
|
|
|
2022-04-28 06:55:31 +00:00
|
|
|
if (currentBuildNumber == build.getNumber().toInteger()) {
|
|
|
|
|
continue;
|
|
|
|
|
}
|
2022-02-08 01:29:49 +00:00
|
|
|
|
2022-04-28 06:55:31 +00:00
|
|
|
build.doKill() //doTerm(),doKill(),doTerm()
|
|
|
|
|
}
|
2022-02-08 01:29:49 +00:00
|
|
|
}
|
|
|
|
|
// abort previous build
|
|
|
|
|
abortPreviousBuilds()
|
|
|
|
|
def abort_previous(){
|
2022-04-28 06:55:31 +00:00
|
|
|
def buildNumber = env.BUILD_NUMBER as int
|
|
|
|
|
if (buildNumber > 1) milestone(buildNumber - 1)
|
|
|
|
|
milestone(buildNumber)
|
2022-02-08 01:29:49 +00:00
|
|
|
}
|
2022-08-22 06:30:44 +00:00
|
|
|
def check_docs() {
|
|
|
|
|
if (env.CHANGE_URL =~ /\/TDengine\//) {
|
|
|
|
|
sh '''
|
|
|
|
|
hostname
|
|
|
|
|
date
|
|
|
|
|
env
|
|
|
|
|
'''
|
|
|
|
|
sh '''
|
|
|
|
|
cd ${WKC}
|
|
|
|
|
git reset --hard
|
2023-03-02 16:38:53 +00:00
|
|
|
git clean -f
|
2022-08-22 06:30:44 +00:00
|
|
|
rm -rf examples/rust/
|
|
|
|
|
git remote prune origin
|
|
|
|
|
git fetch
|
|
|
|
|
'''
|
|
|
|
|
script {
|
|
|
|
|
sh '''
|
|
|
|
|
cd ${WKC}
|
|
|
|
|
git checkout ''' + env.CHANGE_TARGET + '''
|
|
|
|
|
'''
|
|
|
|
|
}
|
|
|
|
|
sh '''
|
|
|
|
|
cd ${WKC}
|
2022-08-23 10:15:28 +00:00
|
|
|
git remote prune origin
|
2022-08-22 06:30:44 +00:00
|
|
|
git pull >/dev/null
|
|
|
|
|
git fetch origin +refs/pull/${CHANGE_ID}/merge
|
|
|
|
|
git checkout -qf FETCH_HEAD
|
|
|
|
|
'''
|
2024-08-01 07:36:30 +00:00
|
|
|
def file_changed = sh (
|
2022-08-22 06:30:44 +00:00
|
|
|
script: '''
|
|
|
|
|
cd ${WKC}
|
2022-08-22 08:05:46 +00:00
|
|
|
git --no-pager diff --name-only FETCH_HEAD `git merge-base FETCH_HEAD ${CHANGE_TARGET}`|grep -v "^docs/en/"|grep -v "^docs/zh/" || :
|
2022-08-22 06:30:44 +00:00
|
|
|
''',
|
|
|
|
|
returnStdout: true
|
|
|
|
|
).trim()
|
|
|
|
|
if (file_changed == '') {
|
|
|
|
|
echo "docs PR"
|
|
|
|
|
docs_only=1
|
|
|
|
|
} else {
|
2024-08-01 06:46:43 +00:00
|
|
|
echo file_changed
|
2022-08-22 06:30:44 +00:00
|
|
|
}
|
2024-08-01 07:36:30 +00:00
|
|
|
env.FILE_CHANGED = file_changed
|
2022-08-22 06:30:44 +00:00
|
|
|
}
|
|
|
|
|
}
|
2022-02-08 01:29:49 +00:00
|
|
|
def pre_test(){
|
2022-05-13 13:10:34 +00:00
|
|
|
sh '''
|
|
|
|
|
hostname
|
|
|
|
|
date
|
2022-06-15 05:50:13 +00:00
|
|
|
env
|
2022-05-13 13:10:34 +00:00
|
|
|
'''
|
|
|
|
|
sh '''
|
|
|
|
|
cd ${WK}
|
|
|
|
|
git reset --hard
|
2022-08-11 03:20:57 +00:00
|
|
|
git remote prune origin
|
|
|
|
|
git fetch
|
2022-05-13 13:10:34 +00:00
|
|
|
cd ${WKC}
|
|
|
|
|
git reset --hard
|
2023-03-02 16:38:53 +00:00
|
|
|
git clean -f
|
2022-08-18 07:33:12 +00:00
|
|
|
rm -rf examples/rust/
|
2022-08-11 03:20:57 +00:00
|
|
|
git remote prune origin
|
|
|
|
|
git fetch
|
2022-05-13 13:10:34 +00:00
|
|
|
'''
|
2022-02-08 01:29:49 +00:00
|
|
|
script {
|
2022-08-11 03:20:57 +00:00
|
|
|
sh '''
|
|
|
|
|
cd ${WK}
|
|
|
|
|
git checkout ''' + env.CHANGE_TARGET + '''
|
|
|
|
|
cd ${WKC}
|
|
|
|
|
git checkout ''' + env.CHANGE_TARGET + '''
|
|
|
|
|
'''
|
2022-04-28 06:55:31 +00:00
|
|
|
}
|
2022-05-11 03:40:04 +00:00
|
|
|
if (env.CHANGE_URL =~ /\/TDengine\//) {
|
|
|
|
|
sh '''
|
|
|
|
|
cd ${WKC}
|
2022-06-24 07:17:17 +00:00
|
|
|
git remote prune origin
|
2022-05-11 03:40:04 +00:00
|
|
|
git pull >/dev/null
|
2022-06-14 08:32:17 +00:00
|
|
|
git log -5
|
2022-06-15 05:50:13 +00:00
|
|
|
echo "`date "+%Y%m%d-%H%M%S"` ${JOB_NAME}:${BRANCH_NAME}:${BUILD_ID}:${CHANGE_TARGET}" >>${WKDIR}/jenkins.log
|
2022-06-25 09:33:24 +00:00
|
|
|
echo "CHANGE_BRANCH:${CHANGE_BRANCH}" >>${WKDIR}/jenkins.log
|
2022-06-15 05:50:13 +00:00
|
|
|
echo "community log: `git log -5`" >>${WKDIR}/jenkins.log
|
2022-05-11 03:40:04 +00:00
|
|
|
git fetch origin +refs/pull/${CHANGE_ID}/merge
|
|
|
|
|
git checkout -qf FETCH_HEAD
|
2022-05-13 06:04:21 +00:00
|
|
|
git log -5
|
2022-06-15 05:50:13 +00:00
|
|
|
echo "community log merged: `git log -5`" >>${WKDIR}/jenkins.log
|
2022-05-11 04:26:46 +00:00
|
|
|
cd ${WK}
|
|
|
|
|
git pull >/dev/null
|
2022-05-13 06:04:21 +00:00
|
|
|
git log -5
|
2022-06-15 05:50:13 +00:00
|
|
|
echo "tdinternal log: `git log -5`" >>${WKDIR}/jenkins.log
|
2022-05-11 03:40:04 +00:00
|
|
|
'''
|
|
|
|
|
} else if (env.CHANGE_URL =~ /\/TDinternal\//) {
|
|
|
|
|
sh '''
|
|
|
|
|
cd ${WK}
|
|
|
|
|
git pull >/dev/null
|
2022-06-14 08:32:17 +00:00
|
|
|
git log -5
|
2022-06-15 05:50:13 +00:00
|
|
|
echo "`date "+%Y%m%d-%H%M%S"` ${JOB_NAME}:${BRANCH_NAME}:${BUILD_ID}:${CHANGE_TARGET}" >>${WKDIR}/jenkins.log
|
2022-06-25 09:33:24 +00:00
|
|
|
echo "CHANGE_BRANCH:${CHANGE_BRANCH}" >>${WKDIR}/jenkins.log
|
2022-06-15 05:50:13 +00:00
|
|
|
echo "tdinternal log: `git log -5`" >>${WKDIR}/jenkins.log
|
2022-05-11 03:40:04 +00:00
|
|
|
git fetch origin +refs/pull/${CHANGE_ID}/merge
|
|
|
|
|
git checkout -qf FETCH_HEAD
|
2022-05-13 06:04:21 +00:00
|
|
|
git log -5
|
2022-06-15 05:50:13 +00:00
|
|
|
echo "tdinternal log merged: `git log -5`" >>${WKDIR}/jenkins.log
|
2022-05-11 04:26:46 +00:00
|
|
|
cd ${WKC}
|
2022-06-24 07:17:17 +00:00
|
|
|
git remote prune origin
|
2022-05-11 04:26:46 +00:00
|
|
|
git pull >/dev/null
|
2022-05-13 06:04:21 +00:00
|
|
|
git log -5
|
2022-06-15 05:50:13 +00:00
|
|
|
echo "community log: `git log -5`" >>${WKDIR}/jenkins.log
|
2022-05-11 03:40:04 +00:00
|
|
|
'''
|
|
|
|
|
} else {
|
|
|
|
|
sh '''
|
2024-08-02 08:54:54 +00:00
|
|
|
echo "unmatched repository ${CHANGE_URL}"
|
2022-05-11 03:40:04 +00:00
|
|
|
'''
|
|
|
|
|
}
|
2022-07-27 11:15:54 +00:00
|
|
|
sh '''
|
|
|
|
|
cd ${WKC}
|
|
|
|
|
git rm --cached tools/taos-tools 2>/dev/null || :
|
|
|
|
|
git rm --cached tools/taosadapter 2>/dev/null || :
|
|
|
|
|
git rm --cached tools/taosws-rs 2>/dev/null || :
|
2022-07-30 01:12:40 +00:00
|
|
|
git rm --cached examples/rust 2>/dev/null || :
|
2022-07-27 11:15:54 +00:00
|
|
|
'''
|
2022-04-28 06:55:31 +00:00
|
|
|
sh '''
|
2022-02-08 01:29:49 +00:00
|
|
|
cd ${WKC}
|
2022-04-28 06:55:31 +00:00
|
|
|
git submodule update --init --recursive
|
|
|
|
|
'''
|
|
|
|
|
return 1
|
|
|
|
|
}
|
2022-07-04 02:46:03 +00:00
|
|
|
def pre_test_build_mac() {
|
|
|
|
|
sh '''
|
|
|
|
|
hostname
|
|
|
|
|
date
|
|
|
|
|
'''
|
|
|
|
|
sh '''
|
|
|
|
|
cd ${WK}
|
|
|
|
|
rm -rf debug
|
|
|
|
|
mkdir debug
|
|
|
|
|
'''
|
|
|
|
|
sh '''
|
|
|
|
|
cd ${WK}/debug
|
2022-12-19 11:31:02 +00:00
|
|
|
cmake .. -DBUILD_TEST=true -DBUILD_HTTPS=false -DCMAKE_BUILD_TYPE=Release
|
2022-10-25 11:20:58 +00:00
|
|
|
make -j10
|
2022-10-28 08:45:26 +00:00
|
|
|
ctest -j10 || exit 7
|
2022-07-04 02:46:03 +00:00
|
|
|
'''
|
|
|
|
|
sh '''
|
|
|
|
|
date
|
|
|
|
|
'''
|
|
|
|
|
}
|
2022-04-28 06:55:31 +00:00
|
|
|
def pre_test_win(){
|
|
|
|
|
bat '''
|
|
|
|
|
hostname
|
2022-06-29 09:10:09 +00:00
|
|
|
taskkill /f /t /im python.exe
|
|
|
|
|
taskkill /f /t /im bash.exe
|
|
|
|
|
taskkill /f /t /im taosd.exe
|
2022-05-18 07:11:54 +00:00
|
|
|
ipconfig
|
|
|
|
|
set
|
2022-04-28 06:55:31 +00:00
|
|
|
date /t
|
|
|
|
|
time /t
|
2022-06-24 07:17:17 +00:00
|
|
|
rd /s /Q %WIN_INTERNAL_ROOT%\\debug || exit 0
|
2022-04-28 06:55:31 +00:00
|
|
|
'''
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_INTERNAL_ROOT%
|
2022-05-13 06:04:21 +00:00
|
|
|
git reset --hard
|
2022-08-11 03:20:57 +00:00
|
|
|
git remote prune origin
|
|
|
|
|
git fetch
|
2022-05-18 07:11:54 +00:00
|
|
|
'''
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_COMMUNITY_ROOT%
|
2023-03-02 16:38:53 +00:00
|
|
|
git clean -f
|
2022-04-28 06:55:31 +00:00
|
|
|
git reset --hard
|
2022-08-11 03:20:57 +00:00
|
|
|
git remote prune origin
|
|
|
|
|
git fetch
|
2022-04-28 06:55:31 +00:00
|
|
|
'''
|
|
|
|
|
script {
|
2022-08-11 03:20:57 +00:00
|
|
|
bat '''
|
|
|
|
|
cd %WIN_INTERNAL_ROOT%
|
|
|
|
|
git checkout ''' + env.CHANGE_TARGET + '''
|
|
|
|
|
'''
|
|
|
|
|
bat '''
|
|
|
|
|
cd %WIN_COMMUNITY_ROOT%
|
|
|
|
|
git checkout ''' + env.CHANGE_TARGET + '''
|
|
|
|
|
'''
|
2022-04-28 06:55:31 +00:00
|
|
|
}
|
2022-05-13 06:04:21 +00:00
|
|
|
script {
|
|
|
|
|
if (env.CHANGE_URL =~ /\/TDengine\//) {
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_INTERNAL_ROOT%
|
2022-09-20 14:24:33 +00:00
|
|
|
git pull origin ''' + env.CHANGE_TARGET + '''
|
2022-05-18 07:11:54 +00:00
|
|
|
'''
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_COMMUNITY_ROOT%
|
|
|
|
|
git remote prune origin
|
2022-09-20 14:24:33 +00:00
|
|
|
git pull origin ''' + env.CHANGE_TARGET + '''
|
2022-05-18 07:11:54 +00:00
|
|
|
'''
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_COMMUNITY_ROOT%
|
2022-05-18 07:11:54 +00:00
|
|
|
git fetch origin +refs/pull/%CHANGE_ID%/merge
|
|
|
|
|
'''
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_COMMUNITY_ROOT%
|
2022-05-13 06:04:21 +00:00
|
|
|
git checkout -qf FETCH_HEAD
|
|
|
|
|
'''
|
|
|
|
|
} else if (env.CHANGE_URL =~ /\/TDinternal\//) {
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_INTERNAL_ROOT%
|
2022-09-20 14:24:33 +00:00
|
|
|
git pull origin ''' + env.CHANGE_TARGET + '''
|
2022-05-18 07:11:54 +00:00
|
|
|
'''
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_INTERNAL_ROOT%
|
2022-05-18 07:11:54 +00:00
|
|
|
git fetch origin +refs/pull/%CHANGE_ID%/merge
|
|
|
|
|
'''
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_INTERNAL_ROOT%
|
2022-05-13 06:04:21 +00:00
|
|
|
git checkout -qf FETCH_HEAD
|
2022-05-18 07:11:54 +00:00
|
|
|
'''
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_COMMUNITY_ROOT%
|
|
|
|
|
git remote prune origin
|
2022-05-13 06:04:21 +00:00
|
|
|
git pull
|
|
|
|
|
'''
|
|
|
|
|
} else {
|
2022-05-18 07:11:54 +00:00
|
|
|
bat '''
|
2024-08-02 08:54:54 +00:00
|
|
|
echo "unmatched repository %CHANGE_URL%"
|
2022-05-13 06:04:21 +00:00
|
|
|
'''
|
|
|
|
|
}
|
|
|
|
|
}
|
2022-05-18 07:11:54 +00:00
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_INTERNAL_ROOT%
|
2022-05-18 07:51:59 +00:00
|
|
|
git branch
|
2022-05-18 07:11:54 +00:00
|
|
|
git log -5
|
|
|
|
|
'''
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_COMMUNITY_ROOT%
|
2022-05-18 07:51:59 +00:00
|
|
|
git branch
|
2022-05-18 07:11:54 +00:00
|
|
|
git log -5
|
|
|
|
|
'''
|
2022-07-27 11:15:54 +00:00
|
|
|
bat '''
|
|
|
|
|
cd %WIN_COMMUNITY_ROOT%
|
|
|
|
|
git rm --cached tools/taos-tools 2>nul
|
|
|
|
|
git rm --cached tools/taosadapter 2>nul
|
|
|
|
|
git rm --cached tools/taosws-rs 2>nul
|
2022-07-30 01:12:40 +00:00
|
|
|
git rm --cached examples/rust 2>nul
|
2022-07-27 11:15:54 +00:00
|
|
|
exit 0
|
|
|
|
|
'''
|
2022-04-28 06:55:31 +00:00
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_COMMUNITY_ROOT%
|
2022-05-13 06:04:21 +00:00
|
|
|
git submodule update --init --recursive
|
2022-04-28 06:55:31 +00:00
|
|
|
'''
|
2022-06-01 08:44:29 +00:00
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_CONNECTOR_ROOT%
|
2022-06-01 08:44:29 +00:00
|
|
|
git branch
|
|
|
|
|
git reset --hard
|
|
|
|
|
git pull
|
|
|
|
|
'''
|
|
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_CONNECTOR_ROOT%
|
2022-06-01 08:44:29 +00:00
|
|
|
git log -5
|
|
|
|
|
'''
|
2022-04-28 06:55:31 +00:00
|
|
|
}
|
|
|
|
|
def pre_test_build_win() {
|
|
|
|
|
bat '''
|
|
|
|
|
echo "building ..."
|
|
|
|
|
time /t
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_INTERNAL_ROOT%
|
2022-04-28 06:55:31 +00:00
|
|
|
mkdir debug
|
|
|
|
|
cd debug
|
2022-05-18 07:51:59 +00:00
|
|
|
time /t
|
2022-04-28 06:55:31 +00:00
|
|
|
call "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Auxiliary\\Build\\vcvarsall.bat" x64
|
|
|
|
|
set CL=/MP8
|
2022-05-18 07:51:59 +00:00
|
|
|
echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> cmake"
|
|
|
|
|
time /t
|
2022-11-23 01:09:51 +00:00
|
|
|
cmake .. -G "NMake Makefiles JOM" -DBUILD_TEST=true -DBUILD_TOOLS=true || exit 7
|
2022-05-18 07:51:59 +00:00
|
|
|
echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> jom -j 6"
|
2022-05-18 08:10:35 +00:00
|
|
|
time /t
|
2022-05-18 07:33:15 +00:00
|
|
|
jom -j 6 || exit 8
|
2022-04-28 06:55:31 +00:00
|
|
|
time /t
|
2022-04-24 07:02:32 +00:00
|
|
|
'''
|
2022-06-01 08:44:29 +00:00
|
|
|
bat '''
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_CONNECTOR_ROOT%
|
2022-08-11 11:53:39 +00:00
|
|
|
python.exe -m pip install --upgrade pip
|
2023-03-11 02:38:21 +00:00
|
|
|
python -m pip uninstall taospy -y
|
2024-01-26 07:50:33 +00:00
|
|
|
python -m pip install taospy==2.7.13
|
2023-09-06 08:14:50 +00:00
|
|
|
python -m pip uninstall taos-ws-py -y
|
2023-11-07 02:37:39 +00:00
|
|
|
python -m pip install taos-ws-py==0.3.1
|
2024-08-02 08:54:54 +00:00
|
|
|
xcopy /e/y/i/f %WIN_INTERNAL_ROOT%\\debug\\build\\lib\\taos.dll C:\\Windows\\System32
|
2022-06-01 08:44:29 +00:00
|
|
|
'''
|
2022-02-08 01:29:49 +00:00
|
|
|
return 1
|
|
|
|
|
}
|
2022-06-01 06:54:31 +00:00
|
|
|
def run_win_ctest() {
|
2022-05-31 08:33:46 +00:00
|
|
|
bat '''
|
|
|
|
|
echo "windows ctest ..."
|
|
|
|
|
time /t
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_INTERNAL_ROOT%\\debug
|
2022-06-04 01:50:15 +00:00
|
|
|
ctest -j 1 || exit 7
|
2022-05-31 08:33:46 +00:00
|
|
|
time /t
|
|
|
|
|
'''
|
|
|
|
|
}
|
2022-06-01 06:54:31 +00:00
|
|
|
def run_win_test() {
|
|
|
|
|
bat '''
|
|
|
|
|
echo "windows test ..."
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_CONNECTOR_ROOT%
|
|
|
|
|
xcopy /e/y/i/f %WIN_INTERNAL_ROOT%\\debug\\build\\lib\\taos.dll C:\\Windows\\System32
|
2022-06-04 04:13:42 +00:00
|
|
|
ls -l C:\\Windows\\System32\\taos.dll
|
2022-06-01 06:54:31 +00:00
|
|
|
time /t
|
2022-06-24 07:17:17 +00:00
|
|
|
cd %WIN_SYSTEM_TEST_ROOT%
|
2022-06-01 06:54:31 +00:00
|
|
|
echo "testing ..."
|
2022-06-25 05:46:53 +00:00
|
|
|
test-all.bat ci
|
2022-06-01 06:54:31 +00:00
|
|
|
time /t
|
|
|
|
|
'''
|
|
|
|
|
}
|
2022-02-08 01:29:49 +00:00
|
|
|
|
|
|
|
|
pipeline {
|
2022-04-28 06:55:31 +00:00
|
|
|
agent none
|
|
|
|
|
options { skipDefaultCheckout() }
|
|
|
|
|
environment{
|
2022-05-11 11:12:35 +00:00
|
|
|
WKDIR = '/var/lib/jenkins/workspace'
|
2022-04-28 06:55:31 +00:00
|
|
|
WK = '/var/lib/jenkins/workspace/TDinternal'
|
2022-05-11 03:40:04 +00:00
|
|
|
WKC = '/var/lib/jenkins/workspace/TDinternal/community'
|
|
|
|
|
WKPY = '/var/lib/jenkins/workspace/taos-connector-python'
|
2022-04-28 06:55:31 +00:00
|
|
|
}
|
|
|
|
|
stages {
|
2022-08-22 06:30:44 +00:00
|
|
|
stage('check') {
|
|
|
|
|
when {
|
|
|
|
|
allOf {
|
|
|
|
|
not { expression { env.CHANGE_BRANCH =~ /docs\// }}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
parallel {
|
|
|
|
|
stage('check docs') {
|
2023-11-28 07:18:06 +00:00
|
|
|
agent{label " slave1_47 || slave1_48 || slave1_49 || slave1_50 || slave1_52 || slave1_59 || slave1_63 || worker03 || slave215 || slave217 || slave219 || Mac_catalina "}
|
2022-08-22 06:43:22 +00:00
|
|
|
steps {
|
|
|
|
|
check_docs()
|
|
|
|
|
}
|
2022-08-22 06:30:44 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2022-04-28 06:55:31 +00:00
|
|
|
stage('run test') {
|
2022-07-18 02:46:40 +00:00
|
|
|
when {
|
|
|
|
|
allOf {
|
|
|
|
|
not { expression { env.CHANGE_BRANCH =~ /docs\// }}
|
2022-08-22 06:30:44 +00:00
|
|
|
expression { docs_only == 0 }
|
2022-07-18 02:46:40 +00:00
|
|
|
}
|
|
|
|
|
}
|
2022-04-28 06:55:31 +00:00
|
|
|
parallel {
|
2022-05-18 06:46:30 +00:00
|
|
|
stage('windows test') {
|
|
|
|
|
agent{label " windows10_01 || windows10_02 || windows10_03 || windows10_04 "}
|
2022-06-24 07:17:17 +00:00
|
|
|
environment{
|
|
|
|
|
WIN_INTERNAL_ROOT="C:\\workspace\\${env.EXECUTOR_NUMBER}\\TDinternal"
|
|
|
|
|
WIN_COMMUNITY_ROOT="C:\\workspace\\${env.EXECUTOR_NUMBER}\\TDinternal\\community"
|
|
|
|
|
WIN_SYSTEM_TEST_ROOT="C:\\workspace\\${env.EXECUTOR_NUMBER}\\TDinternal\\community\\tests\\system-test"
|
|
|
|
|
WIN_CONNECTOR_ROOT="C:\\workspace\\${env.EXECUTOR_NUMBER}\\taos-connector-python"
|
|
|
|
|
}
|
2022-05-18 06:46:30 +00:00
|
|
|
steps {
|
2022-06-01 06:54:31 +00:00
|
|
|
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
|
2023-02-26 09:50:35 +00:00
|
|
|
timeout(time: 126, unit: 'MINUTES'){
|
2022-06-01 06:54:31 +00:00
|
|
|
pre_test_win()
|
|
|
|
|
pre_test_build_win()
|
|
|
|
|
run_win_ctest()
|
|
|
|
|
run_win_test()
|
|
|
|
|
}
|
|
|
|
|
}
|
2022-05-18 06:46:30 +00:00
|
|
|
}
|
|
|
|
|
}
|
2022-07-04 02:46:03 +00:00
|
|
|
stage('mac test') {
|
|
|
|
|
agent{label " Mac_catalina "}
|
|
|
|
|
steps {
|
|
|
|
|
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
|
2024-04-30 07:05:11 +00:00
|
|
|
timeout(time: 60, unit: 'MINUTES'){
|
2022-07-04 02:46:03 +00:00
|
|
|
pre_test()
|
|
|
|
|
pre_test_build_mac()
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2022-04-28 06:55:31 +00:00
|
|
|
stage('linux test') {
|
2024-08-01 18:12:46 +00:00
|
|
|
agent{label "slave1_47 || slave1_48 || slave1_49 || slave1_50 || slave1_52 || slave1_59 || slave1_63 || worker03 || slave215 || slave217 || slave219 "}
|
2022-04-28 06:55:31 +00:00
|
|
|
options { skipDefaultCheckout() }
|
|
|
|
|
when {
|
|
|
|
|
changeRequest()
|
|
|
|
|
}
|
|
|
|
|
steps {
|
2022-06-27 03:42:25 +00:00
|
|
|
script {
|
|
|
|
|
def linux_node_ip = sh (
|
|
|
|
|
script: 'ip addr|grep 192|grep -v virbr|awk "{print \\\$2}"|sed "s/\\/.*//"',
|
|
|
|
|
returnStdout: true
|
|
|
|
|
).trim()
|
|
|
|
|
echo "${linux_node_ip}"
|
|
|
|
|
echo "${WKDIR}/restore.sh -p ${BRANCH_NAME} -n ${BUILD_ID} -c {container name}"
|
|
|
|
|
}
|
2022-06-02 05:55:14 +00:00
|
|
|
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
|
2024-07-20 07:16:47 +00:00
|
|
|
timeout(time: 200, unit: 'MINUTES'){
|
2022-06-02 06:43:05 +00:00
|
|
|
pre_test()
|
2022-06-02 05:55:14 +00:00
|
|
|
script {
|
2024-08-01 07:17:25 +00:00
|
|
|
sh '''
|
2024-08-02 05:22:10 +00:00
|
|
|
mkdir -p ${WKDIR}/tmp/${BRANCH_NAME}_${BUILD_ID}
|
|
|
|
|
echo "''' + env.FILE_CHANGED + '''" > ${WKDIR}/tmp/${BRANCH_NAME}_${BUILD_ID}/docs_changed.txt
|
2024-08-01 07:17:25 +00:00
|
|
|
'''
|
2024-08-01 12:46:49 +00:00
|
|
|
sh '''
|
|
|
|
|
date
|
|
|
|
|
rm -rf ${WKC}/debug
|
|
|
|
|
cd ${WKC}/tests/parallel_test
|
|
|
|
|
time ./container_build.sh -w ${WKDIR} -e
|
|
|
|
|
'''
|
2022-06-24 07:17:17 +00:00
|
|
|
def extra_param = ""
|
|
|
|
|
def log_server_file = "/home/log_server.json"
|
|
|
|
|
def timeout_cmd = ""
|
|
|
|
|
if (fileExists(log_server_file)) {
|
|
|
|
|
def log_server_enabled = sh (
|
|
|
|
|
script: 'jq .enabled ' + log_server_file,
|
|
|
|
|
returnStdout: true
|
|
|
|
|
).trim()
|
|
|
|
|
def timeout_param = sh (
|
|
|
|
|
script: 'jq .timeout ' + log_server_file,
|
|
|
|
|
returnStdout: true
|
|
|
|
|
).trim()
|
|
|
|
|
if (timeout_param != "null" && timeout_param != "0") {
|
|
|
|
|
timeout_cmd = "timeout " + timeout_param
|
|
|
|
|
}
|
|
|
|
|
if (log_server_enabled == "1") {
|
|
|
|
|
def log_server = sh (
|
|
|
|
|
script: 'jq .server ' + log_server_file + ' | sed "s/\\\"//g"',
|
|
|
|
|
returnStdout: true
|
|
|
|
|
).trim()
|
|
|
|
|
if (log_server != "null" && log_server != "") {
|
|
|
|
|
extra_param = "-w " + log_server
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2024-08-01 16:48:49 +00:00
|
|
|
sh '''
|
2024-08-01 17:12:47 +00:00
|
|
|
cd ${WKC}/tests/parallel_test
|
2024-08-02 05:22:10 +00:00
|
|
|
./run_scan_container.sh -d ${WKDIR} -b ${BRANCH_NAME}_${BUILD_ID} -f ${WKDIR}/tmp/${BRANCH_NAME}_${BUILD_ID}/docs_changed.txt ''' + extra_param + '''
|
2024-08-01 16:48:49 +00:00
|
|
|
'''
|
2022-06-02 05:55:14 +00:00
|
|
|
sh '''
|
|
|
|
|
cd ${WKC}/tests/parallel_test
|
|
|
|
|
export DEFAULT_RETRY_TIME=2
|
|
|
|
|
date
|
2024-07-19 07:56:51 +00:00
|
|
|
''' + timeout_cmd + ''' time ./run.sh -e -m /home/m.json -t cases.task -b ${BRANCH_NAME}_${BUILD_ID} -l ${WKDIR}/log -o 1200 ''' + extra_param + '''
|
2022-06-02 05:55:14 +00:00
|
|
|
'''
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2022-07-28 10:00:33 +00:00
|
|
|
/*catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
|
2022-06-01 07:50:14 +00:00
|
|
|
timeout(time: 15, unit: 'MINUTES'){
|
2022-06-01 06:54:31 +00:00
|
|
|
script {
|
|
|
|
|
sh '''
|
|
|
|
|
echo "packaging ..."
|
|
|
|
|
date
|
2022-06-02 00:58:20 +00:00
|
|
|
rm -rf ${WKC}/release/*
|
2022-06-01 06:54:31 +00:00
|
|
|
cd ${WKC}/packaging
|
|
|
|
|
./release.sh -v cluster -n 3.0.0.100 -s static
|
2022-06-04 01:50:15 +00:00
|
|
|
'''
|
2022-06-01 07:12:22 +00:00
|
|
|
}
|
|
|
|
|
}
|
2022-07-28 10:00:33 +00:00
|
|
|
}*/
|
2022-04-28 06:55:31 +00:00
|
|
|
}
|
|
|
|
|
}
|
2022-02-08 01:29:49 +00:00
|
|
|
}
|
2022-04-28 06:55:31 +00:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
post {
|
2022-02-08 01:29:49 +00:00
|
|
|
success {
|
|
|
|
|
emailext (
|
|
|
|
|
subject: "PR-result: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]' SUCCESS",
|
|
|
|
|
body: """<!DOCTYPE html>
|
|
|
|
|
<html>
|
|
|
|
|
<head>
|
|
|
|
|
<meta charset="UTF-8">
|
|
|
|
|
</head>
|
|
|
|
|
<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0">
|
|
|
|
|
<table width="95%" cellpadding="0" cellspacing="0" style="font-size: 16pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
|
|
|
|
|
<tr>
|
|
|
|
|
<td><br />
|
|
|
|
|
<b><font color="#0B610B"><font size="6">构建信息</font></font></b>
|
|
|
|
|
<hr size="2" width="100%" align="center" /></td>
|
|
|
|
|
</tr>
|
|
|
|
|
<tr>
|
|
|
|
|
<td>
|
|
|
|
|
<ul>
|
|
|
|
|
<div style="font-size:18px">
|
|
|
|
|
<li>构建名称>>分支:${env.BRANCH_NAME}</li>
|
|
|
|
|
<li>构建结果:<span style="color:green"> Successful </span></li>
|
|
|
|
|
<li>构建编号:${BUILD_NUMBER}</li>
|
|
|
|
|
<li>触发用户:${env.CHANGE_AUTHOR}</li>
|
|
|
|
|
<li>提交信息:${env.CHANGE_TITLE}</li>
|
|
|
|
|
<li>构建地址:<a href=${BUILD_URL}>${BUILD_URL}</a></li>
|
|
|
|
|
<li>构建日志:<a href=${BUILD_URL}console>${BUILD_URL}console</a></li>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
</ul>
|
|
|
|
|
</td>
|
|
|
|
|
</tr>
|
|
|
|
|
</table></font>
|
|
|
|
|
</body>
|
|
|
|
|
</html>""",
|
|
|
|
|
to: "${env.CHANGE_AUTHOR_EMAIL}",
|
|
|
|
|
from: "support@taosdata.com"
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
failure {
|
|
|
|
|
emailext (
|
|
|
|
|
subject: "PR-result: Job '${env.JOB_NAME} [${env.BUILD_NUMBER}]' FAIL",
|
|
|
|
|
body: """<!DOCTYPE html>
|
|
|
|
|
<html>
|
|
|
|
|
<head>
|
|
|
|
|
<meta charset="UTF-8">
|
|
|
|
|
</head>
|
|
|
|
|
<body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0">
|
|
|
|
|
<table width="95%" cellpadding="0" cellspacing="0" style="font-size: 16pt; font-family: Tahoma, Arial, Helvetica, sans-serif">
|
|
|
|
|
<tr>
|
|
|
|
|
<td><br />
|
|
|
|
|
<b><font color="#0B610B"><font size="6">构建信息</font></font></b>
|
|
|
|
|
<hr size="2" width="100%" align="center" /></td>
|
|
|
|
|
</tr>
|
|
|
|
|
<tr>
|
|
|
|
|
<td>
|
|
|
|
|
<ul>
|
|
|
|
|
<div style="font-size:18px">
|
|
|
|
|
<li>构建名称>>分支:${env.BRANCH_NAME}</li>
|
|
|
|
|
<li>构建结果:<span style="color:red"> Failure </span></li>
|
|
|
|
|
<li>构建编号:${BUILD_NUMBER}</li>
|
|
|
|
|
<li>触发用户:${env.CHANGE_AUTHOR}</li>
|
|
|
|
|
<li>提交信息:${env.CHANGE_TITLE}</li>
|
|
|
|
|
<li>构建地址:<a href=${BUILD_URL}>${BUILD_URL}</a></li>
|
|
|
|
|
<li>构建日志:<a href=${BUILD_URL}console>${BUILD_URL}console</a></li>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
</ul>
|
|
|
|
|
</td>
|
|
|
|
|
</tr>
|
|
|
|
|
</table></font>
|
|
|
|
|
</body>
|
|
|
|
|
</html>""",
|
|
|
|
|
to: "${env.CHANGE_AUTHOR_EMAIL}",
|
|
|
|
|
from: "support@taosdata.com"
|
|
|
|
|
)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|