Changeset aa8e8301 for Jenkinsfile


Ignore:
Timestamp:
Sep 10, 2019, 11:11:30 AM (5 years ago)
Author:
Thierry Delisle <tdelisle@…>
Branches:
ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
Children:
4f9e706
Parents:
6b6c26e
Message:

No longer using node('master') for build

File:
1 edited

Legend:

Unmodified
Added
Removed
  • Jenkinsfile

    r6b6c26e raa8e8301  
    1010//===========================================================================================================
    1111
    12 node('master') {
    13         // Globals
    14         BuildDir  = pwd tmp: true
    15         SrcDir    = pwd tmp: false
    16         Settings  = null
    17         StageName = ''
    18 
    19         // Local variables
    20         def err = null
    21         def log_needed = false
    22 
    23         currentBuild.result = "SUCCESS"
    24 
    25         try {
    26                 //Wrap build to add timestamp to command line
    27                 wrap([$class: 'TimestamperBuildWrapper']) {
    28 
    29                         Settings = prepare_build()
    30 
    31                         node(Settings.Architecture.node) {
    32                                 BuildDir  = pwd tmp: true
    33                                 SrcDir    = pwd tmp: false
    34 
    35                                 clean()
    36 
    37                                 checkout()
    38 
    39                                 build()
    40 
    41                                 test()
    42 
    43                                 benchmark()
    44 
    45                                 build_doc()
    46 
    47                                 publish()
    48                         }
    49 
    50                         // Update the build directories when exiting the node
     12// Globals
     13BuildDir  = null
     14SrcDir    = null
     15Settings  = null
     16StageName = ''
     17
     18// Local variables
     19def err = null
     20def log_needed = false
     21
     22currentBuild.result = "SUCCESS"
     23
     24try {
     25        //Wrap build to add timestamp to command line
     26        wrap([$class: 'TimestamperBuildWrapper']) {
     27
     28                Settings = prepare_build()
     29
     30                node(Settings.Architecture.node) {
    5131                        BuildDir  = pwd tmp: true
    5232                        SrcDir    = pwd tmp: false
    53                 }
    54         }
    55 
    56         //If an exception is caught we need to change the status and remember to
    57         //attach the build log to the email
    58         catch (Exception caughtError) {
    59                 //rethrow error later
    60                 err = caughtError
    61 
    62                 echo err.toString()
    63 
    64                 //An error has occured, the build log is relevent
    65                 log_needed = true
    66 
    67                 //Store the result of the build log
    68                 currentBuild.result = "${StageName} FAILURE".trim()
    69         }
    70 
    71         finally {
    72                 //Send email with final results if this is not a full build
    73                 email(log_needed)
    74 
    75                 echo 'Build Completed'
    76 
    77                 /* Must re-throw exception to propagate error */
    78                 if (err) {
    79                         throw err
    80                 }
    81         }
    82 }
     33
     34                        clean()
     35
     36                        checkout()
     37
     38                        build()
     39
     40                        test()
     41
     42                        benchmark()
     43
     44                        build_doc()
     45
     46                        publish()
     47                }
     48        }
     49}
     50
     51//If an exception is caught we need to change the status and remember to
     52//attach the build log to the email
     53catch (Exception caughtError) {
     54        //rethrow error later
     55        err = caughtError
     56
     57        echo err.toString()
     58
     59        //An error has occured, the build log is relevent
     60        log_needed = true
     61
     62        //Store the result of the build log
     63        currentBuild.result = "${StageName} FAILURE".trim()
     64}
     65
     66finally {
     67        //Send email with final results if this is not a full build
     68        email(log_needed)
     69
     70        echo 'Build Completed'
     71
     72        /* Must re-throw exception to propagate error */
     73        if (err) {
     74                throw err
     75        }
     76}
     77
    8378//===========================================================================================================
    8479// Main compilation routines
Note: See TracChangeset for help on using the changeset viewer.