Skip to content

Commit 2ca9f9c

Browse files
committed
feat:[TD-32642] merge from 3.0
2 parents a9d73d7 + ed3cc87 commit 2ca9f9c

File tree

523 files changed

+48712
-16103
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

523 files changed

+48712
-16103
lines changed

.github/pull_request_template.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Pull Request Checklist
2+
3+
- [ ] Is the user manual updated?
4+
- [ ] Are the test cases passed and automated?
5+
- [ ] Is there no significant decrease in test coverage?

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,4 +159,6 @@ pcre2.h
159159
zconf.h
160160
version.h
161161
geos_c.h
162-
162+
source/libs/parser/src/sql.c
163+
include/common/ttokenauto.h
164+
!packaging/smokeTest/pytest_require.txt

Jenkinsfile2

Lines changed: 138 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
import hudson.model.Result
22
import hudson.model.*;
33
import jenkins.model.CauseOfInterruption
4-
docs_only=0
54
node {
65
}
6+
file_zh_changed = ''
7+
file_en_changed = ''
8+
file_no_doc_changed = '1'
79
def abortPreviousBuilds() {
810
def currentJobName = env.JOB_NAME
911
def currentBuildNumber = env.BUILD_NUMBER.toInteger()
@@ -29,7 +31,7 @@ def abort_previous(){
2931
if (buildNumber > 1) milestone(buildNumber - 1)
3032
milestone(buildNumber)
3133
}
32-
def check_docs() {
34+
def check_docs(){
3335
if (env.CHANGE_URL =~ /\/TDengine\//) {
3436
sh '''
3537
hostname
@@ -40,39 +42,94 @@ def check_docs() {
4042
cd ${WKC}
4143
git reset --hard
4244
git clean -f
43-
rm -rf examples/rust/
4445
git remote prune origin
4546
git fetch
46-
'''
47-
script {
48-
sh '''
49-
cd ${WKC}
50-
git checkout ''' + env.CHANGE_TARGET + '''
51-
'''
52-
}
53-
sh '''
54-
cd ${WKC}
55-
git remote prune origin
47+
git checkout ''' + env.CHANGE_TARGET + '''
5648
git pull >/dev/null
5749
git fetch origin +refs/pull/${CHANGE_ID}/merge
58-
git checkout -qf FETCH_HEAD
50+
git checkout -qf FETCH_HEAD
5951
'''
60-
def file_changed = sh (
52+
53+
file_zh_changed = sh (
54+
script: '''
55+
cd ${WKC}
56+
git --no-pager diff --name-only FETCH_HEAD `git merge-base FETCH_HEAD ${CHANGE_TARGET}`|grep "^docs/zh/" || :
57+
''',
58+
returnStdout: true
59+
)
60+
61+
file_en_changed = sh (
6162
script: '''
6263
cd ${WKC}
63-
git --no-pager diff --name-only FETCH_HEAD `git merge-base FETCH_HEAD ${CHANGE_TARGET}`|grep -v "^docs/en/"|grep -v "^docs/zh/" || :
64+
git --no-pager diff --name-only FETCH_HEAD `git merge-base FETCH_HEAD ${CHANGE_TARGET}`|grep "^docs/en/" || :
65+
''',
66+
returnStdout: true
67+
)
68+
69+
file_no_doc_changed = sh (
70+
script: '''
71+
cd ${WKC}
72+
git --no-pager diff --name-only FETCH_HEAD `git merge-base FETCH_HEAD ${CHANGE_TARGET}`|grep -v "^docs/en/"|grep -v "^docs/zh/"|grep -v "*.md" || :
6473
''',
6574
returnStdout: true
6675
).trim()
67-
if (file_changed == '') {
68-
echo "docs PR"
69-
docs_only=1
70-
} else {
71-
echo file_changed
72-
}
73-
env.FILE_CHANGED = file_changed
76+
echo "file_zh_changed: ${file_zh_changed}"
77+
echo "file_en_changed: ${file_en_changed}"
78+
echo "file_no_doc_changed: ${file_no_doc_changed}"
79+
}
80+
}
81+
82+
def build_pre_docs(){
83+
if (env.CHANGE_URL =~ /\/TDengine\//) {
84+
sh '''
85+
hostname
86+
date
87+
env
88+
'''
89+
90+
sh '''
91+
cd ${DOC_WKC}/${td_repo}
92+
git reset --hard
93+
git clean -f
94+
git remote prune origin
95+
git fetch
96+
git checkout ''' + env.CHANGE_TARGET + '''
97+
git pull >/dev/null
98+
git fetch origin +refs/pull/${CHANGE_ID}/merge
99+
git checkout -qf FETCH_HEAD
100+
'''
101+
102+
sh '''
103+
cd ${DOC_WKC}/${tools_repo}
104+
git reset --hard
105+
git clean -f
106+
git fetch
107+
git remote prune origin
108+
git checkout ''' + env.CHANGE_TARGET + '''
109+
git pull >/dev/null
110+
'''
74111
}
75112
}
113+
114+
def build_zh_docs(){
115+
sh '''
116+
cd ${DOC_WKC}/${zh_doc_repo}
117+
# git pull
118+
yarn ass local
119+
yarn build
120+
'''
121+
}
122+
123+
def build_en_docs(){
124+
sh '''
125+
cd ${DOC_WKC}/${en_doc_repo}
126+
# git pull
127+
yarn ass local
128+
yarn build
129+
'''
130+
}
131+
132+
76133
def pre_test(){
77134
sh '''
78135
hostname
@@ -153,6 +210,7 @@ def pre_test(){
153210
'''
154211
return 1
155212
}
213+
156214
def pre_test_build_mac() {
157215
sh '''
158216
hostname
@@ -173,6 +231,7 @@ def pre_test_build_mac() {
173231
date
174232
'''
175233
}
234+
176235
def pre_test_win(){
177236
bat '''
178237
hostname
@@ -273,17 +332,8 @@ def pre_test_win(){
273332
cd %WIN_COMMUNITY_ROOT%
274333
git submodule update --init --recursive
275334
'''
276-
bat '''
277-
cd %WIN_CONNECTOR_ROOT%
278-
git branch
279-
git reset --hard
280-
git pull
281-
'''
282-
bat '''
283-
cd %WIN_CONNECTOR_ROOT%
284-
git log -5
285-
'''
286335
}
336+
287337
def pre_test_build_win() {
288338
bat '''
289339
echo "building ..."
@@ -303,16 +353,14 @@ def pre_test_build_win() {
303353
time /t
304354
'''
305355
bat '''
306-
cd %WIN_CONNECTOR_ROOT%
307-
python.exe -m pip install --upgrade pip
308-
python -m pip uninstall taospy -y
309-
python -m pip install taospy==2.7.16
310-
python -m pip uninstall taos-ws-py -y
311-
python -m pip install taos-ws-py==0.3.3
356+
cd %WIN_COMMUNITY_ROOT%/tests/ci
357+
pip3 install taospy==2.7.16
358+
pip3 install taos-ws-py==0.3.5
312359
xcopy /e/y/i/f %WIN_INTERNAL_ROOT%\\debug\\build\\lib\\taos.dll C:\\Windows\\System32
313360
'''
314361
return 1
315362
}
363+
316364
def run_win_ctest() {
317365
bat '''
318366
echo "windows ctest ..."
@@ -322,10 +370,10 @@ def run_win_ctest() {
322370
time /t
323371
'''
324372
}
373+
325374
def run_win_test() {
326375
bat '''
327376
echo "windows test ..."
328-
cd %WIN_CONNECTOR_ROOT%
329377
xcopy /e/y/i/f %WIN_INTERNAL_ROOT%\\debug\\build\\lib\\taos.dll C:\\Windows\\System32
330378
ls -l C:\\Windows\\System32\\taos.dll
331379
time /t
@@ -344,28 +392,67 @@ pipeline {
344392
WK = '/var/lib/jenkins/workspace/TDinternal'
345393
WKC = '/var/lib/jenkins/workspace/TDinternal/community'
346394
WKPY = '/var/lib/jenkins/workspace/taos-connector-python'
395+
DOC_WKC = '/root/doc_ci_work'
396+
td_repo = 'TDengine'
397+
zh_doc_repo = 'docs.taosdata.com'
398+
en_doc_repo = 'docs.tdengine.com'
399+
tools_repo = 'taos-tools'
347400
}
348401
stages {
349-
stage('check') {
402+
stage ('check doc file changed') {
403+
agent{label " slave1_47 || slave1_48 || slave1_49 || slave1_50 || slave1_52 || slave1_59 || slave1_63 || worker03 || slave215 || slave217 || slave219 || Mac_catalina "}
404+
steps {
405+
check_docs()
406+
}
407+
}
408+
409+
stage ('pre for build docs') {
350410
when {
351-
allOf {
352-
not { expression { env.CHANGE_BRANCH =~ /docs\// }}
353-
}
411+
beforeAgent true
412+
expression { env.CHANGE_BRANCH =~ /(?i)doc.*/ || file_zh_changed != '' || file_en_changed != '' }
413+
}
414+
agent{label "doc_build_0_30"}
415+
steps {
416+
build_pre_docs()
417+
}
418+
}
419+
420+
stage('build Docs') {
421+
when {
422+
beforeAgent true
423+
expression { env.CHANGE_BRANCH =~ /(?i)doc.*/ || file_zh_changed != '' || file_en_changed != '' }
354424
}
355425
parallel {
356-
stage('check docs') {
357-
agent{label " slave1_47 || slave1_48 || slave1_49 || slave1_50 || slave1_52 || slave1_59 || slave1_63 || worker03 || slave215 || slave217 || slave219 || Mac_catalina "}
426+
stage('build zh docs') {
427+
agent{label "doc_build_0_30"}
428+
when {
429+
expression { file_zh_changed != '' }
430+
}
358431
steps {
359-
check_docs()
432+
build_zh_docs()
433+
}
434+
}
435+
stage('build en docs') {
436+
agent{label "doc_build_0_30"}
437+
when {
438+
expression { file_en_changed != '' }
439+
}
440+
steps {
441+
build_en_docs()
360442
}
361443
}
362444
}
445+
post {
446+
unsuccessful {
447+
error('build docs stage failed, terminating pipeline.')
448+
}
449+
}
363450
}
451+
364452
stage('run test') {
365453
when {
366-
allOf {
367-
not { expression { env.CHANGE_BRANCH =~ /docs\// }}
368-
expression { docs_only == 0 }
454+
expression {
455+
file_no_doc_changed != '' && env.CHANGE_TARGET != 'docs-cloud'
369456
}
370457
}
371458
parallel {
@@ -375,7 +462,6 @@ pipeline {
375462
WIN_INTERNAL_ROOT="C:\\workspace\\${env.EXECUTOR_NUMBER}\\TDinternal"
376463
WIN_COMMUNITY_ROOT="C:\\workspace\\${env.EXECUTOR_NUMBER}\\TDinternal\\community"
377464
WIN_SYSTEM_TEST_ROOT="C:\\workspace\\${env.EXECUTOR_NUMBER}\\TDinternal\\community\\tests\\system-test"
378-
WIN_CONNECTOR_ROOT="C:\\workspace\\${env.EXECUTOR_NUMBER}\\taos-connector-python"
379465
}
380466
steps {
381467
catchError(buildResult: 'FAILURE', stageResult: 'FAILURE') {
@@ -420,7 +506,7 @@ pipeline {
420506
script {
421507
sh '''
422508
mkdir -p ${WKDIR}/tmp/${BRANCH_NAME}_${BUILD_ID}
423-
echo "''' + env.FILE_CHANGED + '''" > ${WKDIR}/tmp/${BRANCH_NAME}_${BUILD_ID}/docs_changed.txt
509+
echo "''' + file_no_doc_changed + '''" > ${WKDIR}/tmp/${BRANCH_NAME}_${BUILD_ID}/docs_changed.txt
424510
'''
425511
sh '''
426512
cd ${WKC}/tests/parallel_test

cmake/cmake.define

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,10 +97,13 @@ ELSE()
9797
SET(TD_TAOS_TOOLS TRUE)
9898
ENDIF()
9999

100+
SET(TAOS_LIB taos)
101+
SET(TAOS_LIB_STATIC taos_static)
102+
100103
IF(${TD_WINDOWS})
101-
SET(TAOS_LIB taos_static)
104+
SET(TAOS_LIB_PLATFORM_SPEC taos_static)
102105
ELSE()
103-
SET(TAOS_LIB taos)
106+
SET(TAOS_LIB_PLATFORM_SPEC taos)
104107
ENDIF()
105108

106109
IF(NOT DEFINED TZ_OUTPUT_PATH)

cmake/cmake.version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
IF (DEFINED VERNUMBER)
33
SET(TD_VER_NUMBER ${VERNUMBER})
44
ELSE ()
5-
SET(TD_VER_NUMBER "3.3.4.0.alpha")
5+
SET(TD_VER_NUMBER "3.3.4.3.alpha")
66
ENDIF ()
77

88
IF (DEFINED VERCOMPATIBLE)

cmake/lemon_CMakeLists.txt.in

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# lemon
2+
3+
ExternalProject_Add(
4+
lemon
5+
SOURCE_DIR ${TD_CONTRIB_DIR}/lemon
6+
CONFIGURE_COMMAND ""
7+
BUILD_COMMAND "${C_COMPILER_LEMON}" -o ${TD_CONTRIB_DIR}/lemon/lemon ${TD_CONTRIB_DIR}/lemon/lemon.c
8+
INSTALL_COMMAND ""
9+
BUILD_IN_SOURCE 1
10+
BUILD_ALWAYS 1
11+
)

contrib/CMakeLists.txt

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,17 @@ if(${BUILD_PCRE2})
186186
cat("${TD_SUPPORT_DIR}/pcre2_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
187187
endif()
188188

189+
find_program(C_COMPILER_LEMON NAMES gcc)
190+
if(C_COMPILER_LEMON)
191+
message(STATUS "LEMON C compiler: ${C_COMPILER_LEMON}")
192+
else()
193+
set(C_COMPILER_LEMON ${CMAKE_C_COMPILER})
194+
message(STATUS "LEMON C compiler: ${C_COMPILER_LEMON}")
195+
endif()
196+
197+
# lemon
198+
cat("${TD_SUPPORT_DIR}/lemon_CMakeLists.txt.in" ${CONTRIB_TMP_FILE})
199+
189200
# download dependencies
190201
configure_file(${CONTRIB_TMP_FILE} "${TD_CONTRIB_DIR}/deps-download/CMakeLists.txt")
191202
execute_process(COMMAND "${CMAKE_COMMAND}" -G "${CMAKE_GENERATOR}" .
@@ -263,11 +274,19 @@ if(${TD_DARWIN})
263274
endif(${TD_DARWIN})
264275

265276
add_subdirectory(zlib EXCLUDE_FROM_ALL)
277+
278+
if(${TD_DARWIN})
279+
target_compile_options(zlibstatic PRIVATE -Wno-error=deprecated-non-prototype)
280+
endif()
266281
target_include_directories(
267282
zlibstatic
268283
PUBLIC ${CMAKE_CURRENT_BINARY_DIR}/zlib
269284
PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/zlib
270285
)
286+
287+
if(${TD_DARWIN})
288+
target_compile_options(zlib PRIVATE -Wno-error=deprecated-non-prototype)
289+
endif()
271290
target_include_directories(
272291
zlib
273292
PUBLIC ${CMAKE_CURRENT_BINARY_DIR}/zlib

0 commit comments

Comments
 (0)