Changeset 82c6072
- Timestamp:
- Jul 31, 2018, 3:46:27 PM (6 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, no_list, persistent-indexer, pthread-emulation, qualifiedEnum
- Children:
- 5f08ac2f
- Parents:
- ad486c5b (diff), 843002c9 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
Jenkins/FullBuild
rad486c5b r82c6072 87 87 88 88 if(result.result != 'SUCCESS') { 89 sh("wget -q -O - ${result.absoluteUrl}/consoleText")89 sh("wget -q -O - http://localhost:8084/job/Cforall/job/master/${result.number}/consoleText") 90 90 error(result.result) 91 91 } -
Jenkinsfile
rad486c5b r82c6072 22 22 do_sendemail = true 23 23 24 builddir = pwd tmp: true 25 srcdir = pwd tmp: false 26 24 27 currentBuild.result = "SUCCESS" 25 28 … … 32 35 prepare_build() 33 36 37 clean() 38 34 39 checkout() 35 40 … … 41 46 42 47 benchmark() 43 44 clean()45 48 46 49 build_doc() … … 67 70 finally { 68 71 //Send email with final results if this is not a full build 69 if( do_sendemail && !bIsSandbox) {72 if( do_sendemail ) { 70 73 echo 'Notifying users of result' 71 email(currentBuild.result, log_needed )74 email(currentBuild.result, log_needed, bIsSandbox) 72 75 } 73 76 … … 155 158 do_sendemail = ! (pSilent == 'true') 156 159 160 collect_git_info() 161 162 def full = do_alltests ? " (Full)" : "" 163 currentBuild.description = "Cforall ${gitRefName} ${compiler.cc_name}:${arch_name}${full}" 164 157 165 echo """Compiler : ${compiler.cc_name} (${compiler.cpp_cc}/${compiler.cfa_cc}) 158 166 Architecture : ${arch_name} … … 164 172 Silent : ${ pSilent.toString() } 165 173 """ 166 167 collect_git_info()168 174 } 169 175 … … 241 247 // Main compilation routines 242 248 //=========================================================================================================== 249 def clean() { 250 build_stage('Cleanup') { 251 // clean the build by wipping the build directory 252 dir(builddir) { 253 deleteDir() 254 } 255 256 //Clean all temporary files to make sure no artifacts of the previous build remain 257 sh 'git clean -fdqx' 258 259 //Reset the git repo so no local changes persist 260 sh 'git reset --hard' 261 } 262 } 263 243 264 //Compilation script is done here but environnement set-up and error handling is done in main loop 244 265 def checkout() { … … 246 267 //checkout the source code and clean the repo 247 268 checkout scm 248 249 //Clean all temporary files to make sure no artifacts of the previous build remain250 sh 'git clean -fdqx'251 252 //Reset the git repo so no local changes persist253 sh 'git reset --hard'254 269 } 255 270 } … … 257 272 def build() { 258 273 build_stage('Build') { 259 260 def install_dir = pwd tmp: true261 262 274 // Build outside of the src tree to ease cleaning 263 sh "mkdir -p build" 264 dir ('build') { 275 dir (builddir) { 265 276 //Configure the conpilation (Output is not relevant) 266 277 //Use the current directory as the installation target so nothing escapes the sandbox 267 278 //Also specify the compiler by hand 268 sh " ../configure CXX=${compiler.cpp_cc} ${architecture} --with-backend-compiler=${compiler.cfa_cc} --prefix=${install_dir} --enable-silent-rules --quiet"279 sh "${srcdir}/configure CXX=${compiler.cpp_cc} ${architecture} --with-backend-compiler=${compiler.cfa_cc} --enable-silent-rules --quiet" 269 280 270 281 //Compile the project … … 277 288 build_stage('Test') { 278 289 279 //Run the tests from the tests directory 280 if ( do_alltests ) { 281 sh 'make -C build/src/tests all-tests debug=yes --no-print-directory' 282 sh 'make -C build/src/tests all-tests debug=no --no-print-directory' 283 } 284 else { 285 sh 'make -C build/src/tests --no-print-directory' 290 dir (builddir) { 291 //Run the tests from the tests directory 292 if ( do_alltests ) { 293 sh 'make --no-print-directory -C src/tests all-tests debug=yes' 294 sh 'make --no-print-directory -C src/tests all-tests debug=no ' 295 } 296 else { 297 sh 'make --no-print-directory -C src/tests' 298 } 286 299 } 287 300 } … … 293 306 if( !do_benchmark ) return 294 307 295 //Append bench results 296 sh 'make -C build/src/benchmark --no-print-directory jenkins githash=' + gitRefNewValue + ' arch=' + arch_name + ' | tee bench.json' 297 } 298 } 299 300 def clean() { 301 build_stage('Cleanup') { 302 // clean the build by wipping the build directory 303 sh 'rm -rf build' 308 dir (builddir) { 309 //Append bench results 310 sh "make --no-print-directory -C src/benchmark jenkins githash=${gitRefNewValue} arch=${arch_name} | tee ${srcdir}/bench.json" 311 } 304 312 } 305 313 } … … 334 342 //=========================================================================================================== 335 343 //Standard build email notification 336 def email(String status, boolean log ) {344 def email(String status, boolean log, boolean bIsSandbox) { 337 345 //Since tokenizer doesn't work, figure stuff out from the environnement variables and command line 338 346 //Configurations for email format … … 377 385 def email_to = "cforall@lists.uwaterloo.ca" 378 386 379 //send email notification 380 emailext body: email_body, subject: email_subject, to: email_to, attachLog: log 381 } 387 if( !bIsSandbox ) { 388 //send email notification 389 emailext body: email_body, subject: email_subject, to: email_to, attachLog: log 390 } else { 391 echo "Would send email to: ${email_to}" 392 echo "With title: ${email_subject}" 393 echo "Content: \n${email_body}" 394 } 395 } -
src/tests/pybin/tools.py
rad486c5b r82c6072 48 48 return False 49 49 50 return match.group(1) == "ASCII text"50 return match.group(1).startswith("ASCII text") 51 51 52 52 # Remove 1 or more files silently
Note: See TracChangeset
for help on using the changeset viewer.