@@ -6,50 +6,19 @@ pipeline {
66 HUB_URL = ' hub.tess.io'
77 ARTIFACTORY_PASS = credentials(' ARTIFACTORY_PASS' )
88 CONAN_USER = ' oss'
9- TARGET_BRANCH = ' master'
109 STABLE_BRANCH = ' stable/v*'
11- LAST_COMMITS = ' '
1210 }
1311
1412 stages {
15- stage(' Adjust Tag for Master' ) {
16- when { not {
17- branch " ${ STABLE_BRANCH} "
18- } }
19- steps {
20- script {
21- sh(script : " sed -Ei 's,version = .*\" ([[:digit:]]+\\ .[[:digit:]]+\\ .[[:digit:]]+).*,version = \"\\ 1-${ env.BUILD_NUMBER} \" ,' conanfile.py" )
22- LAST_COMMITS = sh(script : " git log -n 2 --pretty=short" , returnStdout : true )
23- }
24- }
25- }
26- stage(' Include build missing' ) {
27- steps {
28- script {
29- BUILD_MISSING = " --build missing"
30- }
31- }
32- }
33-
3413 stage(' Get Version' ) {
3514 steps {
3615 script {
3716 PROJECT = sh(script : " grep -m 1 'name =' conanfile.py | awk '{print \$ 3}' | tr -d '\n ' | tr -d '\" '" , returnStdout : true )
3817 VER = sh(script : " grep -m 1 'version =' conanfile.py | awk '{print \$ 3}' | tr -d '\n ' | tr -d '\" '" , returnStdout : true )
3918 CONAN_CHANNEL = sh(script : " echo ${ BRANCH_NAME} | sed -E 's,(\\ w+-?\\ d*)/.*,\\ 1,' | sed -E 's,-,_,' | tr -d '\n '" , returnStdout : true )
19+ SANITIZED_BRANCH = sh(script : " echo ${ BRANCH_NAME} | sed -E 's,(\\ w+-?\\ d*)/.*,\\ 1,' | sed -E 's,-,_,' | tr -d '\n '" , returnStdout : true )
4020 HUB_PATH = " ${ HUB_URL} /${ ORG} /${ PROJECT} "
41- TAG = " ${ VER} @${ CONAN_USER} /${ CONAN_CHANNEL} "
42- slackSend color : ' #0063D1' , channel : ' #sds-ci' , message : " *${ PROJECT} /${ TAG} * is building."
43- env. pkg_version = " ${ PROJECT} /${ TAG} "
44- }
45- }
46- }
47-
48- stage(' Tag Stable Build' ) {
49- when { branch " ${ STABLE_BRANCH} " }
50- steps {
51- script {
52- TAG = " ${ VER} @"
21+ slackSend color : ' #0063D1' , channel : ' #sds-ci' , message : " *${ PROJECT} /${ SANITIZED_BRANCH} * is building."
5322 }
5423 }
5524 }
@@ -66,50 +35,51 @@ pipeline {
6635 }
6736
6837 stages {
69- stage(' Adjust Tag for Master ' ) {
38+ stage(" Refresh Locks " ) {
7039 when { not {
7140 branch " ${ STABLE_BRANCH} "
7241 } }
7342 steps {
74- sh(script : " sed -Ei 's,version = .*\" ([[:digit:]]+\\ .[[:digit:]]+\\ .[[:digit:]]+).*,version = \"\\ 1-${ env.BUILD_NUMBER} \" ,' conanfile.py" )
43+ script {
44+ sh " ./update_locks.sh"
45+ }
7546 }
7647 }
48+
7749 stage(" Build" ) {
7850 steps {
7951 script {
80- def PRERELEASE = ' True'
81- def BUILD_PROFILE = " ${ BUILD_TYPE} "
82- def SANITIZE = ' False'
83-
84- if (" ${ BUILD_TYPE} " == " release" ) {
85- PRERELEASE = ' False'
86- BUILD_PROFILE = " test"
52+ sh " conan create --lockfile locks/${ BUILD_TYPE} _deps.lock ."
53+ sh " find ${ CONAN_USER_HOME} -type f -wholename '*bin/test_load' -exec cp {} .jenkins/test_load \\ ;"
54+ sh " find ${ CONAN_USER_HOME} -type f -wholename '*bin/test_volume' -exec cp {} .jenkins/test_volume \\ ;"
55+ sh " find ${ CONAN_USER_HOME} -type f -wholename '*bin/check_btree' -exec cp {} .jenkins/check_btree \\ ;"
56+ sh " find ${ CONAN_USER_HOME} -type f -wholename '*bin/test_log_store' -exec cp {} .jenkins/test_log_store \\ ;"
57+ sh " find ${ CONAN_USER_HOME} -type f -wholename '*bin/test_meta_blk_mgr' -exec cp {} .jenkins/test_meta_blk_mgr \\ ;"
58+ sh " find ${ CONAN_USER_HOME} -type f -wholename '*bin/hs_svc_tool ' -exec cp {} .jenkins/hs_svc_tool \\ ;"
59+ sh " find . -type f -wholename '*test_scripts/vol_test.py' -exec cp -a {} .jenkins/vol_test.py \\ ;"
60+ sh " find ${ CONAN_USER_HOME} -type d -wholename '*bin/scripts' -exec cp -a {} .jenkins/scripts \\ ;"
61+ sh " find ${ CONAN_USER_HOME} -type f -wholename '*bin/test_log_store' -exec cp {} .jenkins/test_log_store \\ ;"
62+ withDockerRegistry([credentialsId : ' sds-sds' , url : " https://${ HUB_URL} " ]) {
63+ sh " docker build -t ${ HUB_PATH} :${ CONAN_CHANNEL} -${ BUILD_TYPE} .jenkins/"
8764 }
88-
89- sh " conan create -u ${ BUILD_MISSING} -o ${ PROJECT} :testing=epoll_mode -o sisl:prerelease=${ PRERELEASE} -pr ${ BUILD_PROFILE} . ${ PROJECT} /${ TAG} ; \
90- find ${ CONAN_USER_HOME} -type f -wholename '*bin/test_load' -exec cp {} .jenkins/test_load \\ ; ; \
91- find ${ CONAN_USER_HOME} -type f -wholename '*bin/test_volume' -exec cp {} .jenkins/test_volume \\ ; ; \
92- find ${ CONAN_USER_HOME} -type f -wholename '*bin/check_btree' -exec cp {} .jenkins/check_btree \\ ; ; \
93- find ${ CONAN_USER_HOME} -type f -wholename '*bin/test_log_store' -exec cp {} .jenkins/test_log_store \\ ; ; \
94- find ${ CONAN_USER_HOME} -type f -wholename '*bin/test_meta_blk_mgr' -exec cp {} .jenkins/test_meta_blk_mgr \\ ; ; \
95- find ${ CONAN_USER_HOME} -type f -wholename '*bin/hs_svc_tool ' -exec cp {} .jenkins/hs_svc_tool \\ ; ; \
96- find . -type f -wholename '*test_scripts/vol_test.py' -exec cp -a {} .jenkins/vol_test.py \\ ; ; \
97- find ${ CONAN_USER_HOME} -type d -wholename '*bin/scripts' -exec cp -a {} .jenkins/scripts \\ ; ; \
98- find ${ CONAN_USER_HOME} -type f -wholename '*bin/test_log_store' -exec cp {} .jenkins/test_log_store \\ ;"
9965 }
10066 }
10167 }
10268
10369 stage(" Deploy Package" ) {
70+ when { allOf {
71+ branch " ${ STABLE_BRANCH} "
72+ expression { " ${ BUILD_TYPE} " != ' coverage' }
73+ expression { " ${ BUILD_TYPE} " != ' sanitize' }
74+ } }
10475 steps {
10576 sh " conan user -r ebay-local -p ${ ARTIFACTORY_PASS} _service_sds"
106- sh " conan upload ${ PROJECT} /${ TAG } -c --all -r ebay-local"
77+ sh " conan upload ${ PROJECT} /${ VER } @ -c --all -r ebay-local"
10778 }
10879 }
10980 stage(" Image" ) {
11081 steps {
11182 withDockerRegistry([credentialsId : ' sds-sds' , url : " https://${ HUB_URL} " ]) {
112- sh " docker build -t ${ HUB_PATH} :${ CONAN_CHANNEL} -${ BUILD_TYPE} .jenkins/"
11383 sh " docker push ${ HUB_PATH} :${ CONAN_CHANNEL} -${ BUILD_TYPE} "
11484 }
11585 }
@@ -126,10 +96,10 @@ pipeline {
12696
12797 post {
12898 failure {
129- slackSend color : ' #E43237' , channel : ' #${PROJECT}-build' , message : " @here ${ PROJECT} build *${ PROJECT} /${ TAG } * has had a failure : ${ BUILD_URL} "
99+ slackSend color : ' #E43237' , channel : ' #${PROJECT}-build' , message : " @here ${ PROJECT} build *${ PROJECT} /${ SANITIZED_BRANCH } * has had a failure : ${ BUILD_URL} "
130100 }
131101 success {
132- slackSend color : ' #85B717' , channel : ' #sds-ci' , message : " *${ PROJECT} /${ TAG } * has completed successfully."
102+ slackSend color : ' #85B717' , channel : ' #sds-ci' , message : " *${ PROJECT} /${ SANITIZED_BRANCH } * has completed successfully."
133103 }
134104 }
135105}
0 commit comments