Changeset 786 for branches


Ignore:
Timestamp:
Nov 21, 2007 1:26:45 PM (12 years ago)
Author:
jpfasano
Message:

Added some more control on when the configurations run

Location:
branches/testScripts
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • branches/testScripts/NBbuildConfig.py

    r785 r786  
    170170  if os.path.isdir(fullBuildDir) :
    171171    os.chdir(fullBuildDir)
    172     if os.path.isfile('NBallTestsPassed') or configuration['KnownProblem']:
    173       msg=NBsvnCommand.newer(svnCheckOutUrl,projectCheckOutDir)
    174       if not msg:
    175         # Previous run ran fine, and nothing has changed.
    176         if os.path.isfile('NBallTestsPassed') :
    177           NBlogMessages.writeMessage('  No changes since previous successful run')
    178         else : 
    179           NBlogMessages.writeMessage('  There is a known problem and no changes have been made that might fix it.')
    180          
    181         return
     172    msg=NBsvnCommand.newer(svnCheckOutUrl,projectCheckOutDir)
     173
     174    if os.path.isfile('NBallTestsPassed') :
     175      prevRunSuccess=True
     176      NBlogMessages.writeMessage('  In prior build all test passed')
     177    else:
     178      prevRunSuccess=False
     179      NBlogMessages.writeMessage('  No record of all tests having passed')
     180
     181    # If new source in svn, then must remove "allTestsPassed" files
     182    if msg:
     183      # SVN has changed since last run
    182184      NBlogMessages.writeMessage('  '+msg)
    183      
    184185      # Must remove file NBallTestsPassed from all build directories that
    185186      # use projectCheckoutDir for their source code. This is to ensure
     
    191192          if os.path.isfile(fileToBeRemoved) :
    192193            os.remove(fileToBeRemoved)
     194            NBlogMessages.writeMessage('  Removing all test passed record from directory: '+d)
    193195    else :
    194       NBlogMessages.writeMessage('  No record of all tests having passed')
     196      # SVN has not changed since last run
     197      if configuration['Run']=='noSuccessOrAfterChange':
     198        if prevRunSuccess :
     199          NBlogMessages.writeMessage('  No changes since previous successful run')
     200          return
     201        else:
     202          NBlogMessages.writeMessage('  Rerunning. No changes, but no record of successful run')
     203      elif configuration['Run']=='afterChange' :
     204        NBlogMessages.writeMessage('  No changes since previous run')
     205        return
     206      else:
     207        NBlogMessages.writeMessage('  No changes but run always selected')
    195208  else :
    196209    NBlogMessages.writeMessage('  Targets have not yet been built')
  • branches/testScripts/NBcheckResult.py

    r778 r786  
    7575  retVal=None
    7676  reexp=r"(.|\n)*cbc_clp solved 2 out of 2 and took (\d*\.\d*) seconds."
    77   msgTail = result['stdout'][-300:]
     77  msgTail = result['stdout'][-600:]
    7878  if not re.compile(reexp).match(msgTail,1) :
    7979    # message not found, assume test failed
  • branches/testScripts/NBuserParametersDefault.py

    r785 r786  
    3838#   additional parameters to build with debug.  The default is supposed
    3939#   to be an optimized build.
     40#   This is ignored on windows when building with MS compiler solution file
     41#   because both Release and Debug are built.
    4042#
    4143#  ThirdParty: 'Yes' or 'No'.  Some projects provide scripts for downloading
     
    4345#   then the options for skipping the use of third party codes are
    4446#   used when running "./configure".
     47#   Presently this ignored on windows when building with MS compiler
     48#   solution file because ThirdParty code is never used.
    4549#
    4650#  'AdditionConfigOptions': This provides the ability to specify an
     
    4953#    options to all builds.
    5054#    Example: '--enable-cbc-parallel'
    51 #
    52 #  'KnownProblem': 'yes' or 'no'.  If the build configuration has a known
    53 #    problem then it will not be built and tested unless svn has been updated
    54 #    with new code that might fix the problem.
     55#    This is ignored on windows when building with MS compiler solution file
     56#    because configure is not run.
     57#
     58#  'Run' : 'always', 'noSuccessOrAfterChange', 'afterChange'
     59#    This specifies when a specific configuration will be run.
     60#    nightlyBuild can determine if the source code has been updated
     61#    since the last run. nightlyBuild also records when a run
     62#    successful run has occured.  This can be used to decide if a new
     63#    run should be done.
     64#    'always': the configuration is always run.  This is useful for
     65#              debugging.
     66#    'noSuccessOrAfterChange': This is the default behavior.  If
     67#              the prior run did not successfully complete or
     68#              the source code has changed then the run is done.
     69#    'afterChange': Only run if the source code has changed since
     70#              the last run.  This is useful if there is a known
     71#              problem that is waiting for a fix. There is no
     72#              point in repeating a known failure unless a possible
     73#              fix has been committed to svn.
    5574#
    5675#  'Reference': This specifies that the build is to be done in the way
  • branches/testScripts/nightlyBuild.py

    r785 r786  
    242242
    243243    #---------------------------------------------------------------------
    244     # Get KnownProblem parm and pass it along
    245     #---------------------------------------------------------------------
    246     configuration['KnownProblem']=False
    247     if 'KnownProblem' in bc :
    248       if bc['KnownProblem'].lower()=='yes' :
    249           configuration['KnownProblem']=True
     244    # Get Run parm and pass it along
     245    #---------------------------------------------------------------------
     246    configuration['Run']='noSuccessOrAfterChange'
     247    if 'Run' in bc :
     248      if bc['Run'].lower()=='afterchange' :
     249        configuration['Run']='afterChange'
     250      elif bc['Run'].lower()=='always' :
     251        configuration['Run']='always'
    250252               
    251253    #---------------------------------------------------------------------
Note: See TracChangeset for help on using the changeset viewer.