Changeset 702 for branches


Ignore:
Timestamp:
Oct 26, 2007 8:05:03 AM (12 years ago)
Author:
stefan
Message:

extend email-message; and a bit more cleaning and bugfixing

Location:
branches/testScripts
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/testScripts/NBbuildConfig.py

    r696 r702  
    214214  os.chdir(fullVpathDir)
    215215  NBlogMessages.writeMessage('  Current directory: '+fullVpathDir)
    216  
     216
    217217  # Assemble all config options together and create config command
    218218  configOptions ="-C "+configuration['configOptions']['unique']
    219   configOptions+=configuration['configOptions']['unique']
    220219  configOptions+=configuration['configOptions']['invariant']
    221220  configOptions+=skipOptions
     
    242241    if result['returnCode'] != 0 :
    243242        error_msg = result
     243        error_msg['configure flags']=configOptions
    244244        # Add contents of log file to message
    245245        logFileName = 'config.log'
    246246        if os.path.isfile(logFileName) :
    247247          logFilePtr = open(logFileName,'r')
    248           error_msg['config.log']  = "config.log contains: \n"
    249           error_msg['config.log'] += logFilePtr.read()
     248          error_msg['config.log'] = logFilePtr.read()
    250249          logFilePtr.close()
    251250        NBemail.sendCmdMsgs(configuration['project'],error_msg,configCmd)
     
    266265  # Check if make worked
    267266  if result['returnCode'] != 0 :
     267    result['configure flags']=configOptions
    268268    NBemail.sendCmdMsgs(configuration['project'],result,'make')
    269269    return
     
    284284  didMakeTestFail=configuration['checkMakeTest'](result,configuration['project'],"make test")
    285285  if didMakeTestFail :
     286    result['configure flags']=configOptions
    286287    result['make test']=didMakeTestFail
    287288    NBemail.sendCmdMsgs(configuration['project'],result,"make test")
     
    317318    didUnitTestFail=configuration['unitTest']['checkUnitTest'](result,configuration['project'],unitTestCmdTemplate)
    318319    if didUnitTestFail :
     320      result['configure flags']=configOptions
    319321      result['unitTest']=didUnitTestFail
    320322      NBemail.sendCmdMsgs(p,result,unitTestCmd)
  • branches/testScripts/NBemail.py

    r681 r702  
    2222#       "make".
    2323#  cmdMsgs: the messages generated by cmd.  This will typically contain
    24 #       errors issued by cmd.
     24#       errors issued by cmd and additional information about the build.
    2525#------------------------------------------------------------------------
    2626def sendCmdMsgs(project,cmdMsgs,cmd):
    2727  curDir = os.getcwd()
    28  
     28
    2929  toAddrs = [unscrambleAddress(NBuserConfig.MY_EMAIL_ADDR)]
    3030  if NBprojectConfig.PROJECT_EMAIL_ADDRS.has_key(project) \
     
    3535    toAddrs.append(unscrambledEmailAddress)
    3636
    37   subject = "NightlyBuild: "+project + " problem when running '" + cmd +"'"
     37  subject = "NightlyBuild: problem with project "+project+" when running '" + cmd +"'"
    3838
    39   emailMsg  = "'" + cmd + "' from directory " + curDir + " failed.\n\n"
     39  emailMsg = "Dear projectmanager,\n\n" \
     40   +"the nightly build tests scripts have recognized a failure when building project "+project+". The failing command was\n\n\t"+cmd+"\n\n" \
     41   +"Details on the problem can be found below.\n" \
     42   +"You will also get a failure message if the build of your project failed because of problems with a depending projects (externals).\n" \
     43   +"We hope you find this report useful.\n\n"
    4044
    4145  emailMsg += "Operating System: "+sys.platform+" "+os.name+"\n"
    4246  emailMsg += "Host name: "+gethostname()+"\n"
    4347
     48  if os.environ.has_key("HOSTTYPE") :
     49    emailMsg += "Host type: "+os.environ["HOSTTYPE"]+"\n"
    4450  if os.environ.has_key("PROCESSOR_IDENTIFIER") :
    4551    emailMsg += "Processor: "+os.environ["PROCESSOR_IDENTIFIER"]+"\n"
    46                                          
    4752  if os.environ.has_key("NUMBER_OF_PROCESSORS") :
    4853    emailMsg += "Number of processors: "+os.environ["NUMBER_OF_PROCESSORS"]+"\n"
    49    
     54
    5055  if os.environ.has_key("PATH") :
    5156    emailMsg += "PATH: "+os.environ["PATH"]+"\n"
     57
     58  emailMsg += "Directory: "+curDir+'\n'
     59
     60  if cmdMsgs.has_key("configure flags") :
     61    emailMsg += "Flags for configure: "+cmdMsgs['configure flags']+'\n'
    5262
    5363  if cmdMsgs.has_key('make test') :
  • branches/testScripts/NBprojectConfig.py

    r693 r702  
    66#----------------------------------------------------------------------
    77# This file defines variables which describe how the specific
    8 # coin-or projects are to be build and tested.
     8# coin-or projects are to be tested and who are their managers.
    99#----------------------------------------------------------------------
    1010
     
    7575PROJECT_EMAIL_ADDRS['OS'] = 'kipp _DOT_ martin _AT_ chicagogsb _DOT_ edu'
    7676ALL_TESTS_COMPLETED_SUCCESSFULLY_CMDS['OS'] = ['make test']
    77 #third party packages are not optional here (because it uses Ipopt)
     77#third party packages are not optional if Ipopt is not excluded
    7878
    7979#----------------------------------------------------------------------
    8080PROJECT_EMAIL_ADDRS['CppAD'] = 'bradbell _AT_ washington _DOT_ edu'
    8181#does not have references to third party packages
    82 
    83 
  • branches/testScripts/NBuserParametersDefault.py

    r694 r702  
    1414# List of Projects to be processed by script
    1515#----------------------------------------------------------------------
    16 PROJECTS = ['CoinUtils','DyLP','Clp','SYMPHONY','Vol','Osi','Cgl','Cbc','Ipopt','Bonmin','FlopC++','OS']
    17 
    18 
     16PROJECTS = ['CoinUtils','DyLP','Clp','SYMPHONY','Vol','Osi','Cgl','Cbc','Ipopt','Bonmin','FlopC++','OS','CppAD']
    1917
    2018#---------------------------------------------------
    21 #  Not sure what file this belongs in.
    2219#  This data structure is intended to describe how each COIN project
    2320#  should be built.
     
    6360     [
    6461       { 'Reference' : 'CoinUtils' },
    65            
    66            
    6762       # And build a parallel version with Third Party
    6863       {
    69          'SvnVersion': 'releases/1.2.0',
     64         'SvnVersion': 'latestStable',
    7065         'OptLevel': 'Default',
    7166         'ThirdParty': 'Yes',
    72          'AdditionConfigOptions': '--enable-cbc-parallel'
     67         'AdditionalConfigOptions': '--enable-cbc-parallel'
    7368       }
    7469     ],
     
    9388         'ThirdParty': 'No',
    9489         'SkipProjects': ('Ipopt') }
     90     ],
     91   'CppAD' :
     92     [
     93       { 'SvnVersion': 'latestStable',  'OptLevel': 'Default',   'ThirdParty': 'No' }
    9594     ]
    9695  }
    9796
     97#----------------------------------------------------------------------
     98#On some systems the user might want to set extra options for the
     99#configure script like compilers...
     100#----------------------------------------------------------------------
    98101
    99 
     102CONFIGURE_FLAGS = ''
    100103
    101104
     
    147150
    148151SEND_MAIL_TO_PROJECT_MANAGER = 0
    149 
    150 #----------------------------------------------------------------------
    151 #On some systems the user might want to set extra options for the
    152 #configure script like compilers...
    153 #----------------------------------------------------------------------
    154 
    155 CONFIGURE_FLAGS = ''
  • branches/testScripts/nightlyBuild.py

    r694 r702  
    33import os
    44import sys
    5 #import NBuserConfig
    65import NBprojectConfig
    76import NBlogMessages
     
    2019
    2120
    22 
    2321# TODO:
    24 #   -Get some information about the platform and put this in email
    25 #    failure message. Add text better explaining the email so project
    26 #    managers can better understand it.  Somehow remember the ./configure
    27 #    command options and put it in the email message.
    2822#   -In userConfig allow one to optionally do a clean checkout and/or config
    29 #   -Skip make of project that depend on a project which make had been failing.
    30 #    (Similar for configure.) But also tell project managers of skiped
    31 #    project that their project was skipped.
    3223#   -Clean up the kludge that tests if "make test" and 'unitTest' were
    3324#    successfull
Note: See TracChangeset for help on using the changeset viewer.