1#!/usr/bin/python
2# -*- Mode: python -*-
3
4import os, sys
5import optparse, myoptparse
6
7if __name__ == "__main__":
8
9    os.umask(0002)
10
11    optionsParser=optparse.OptionParser()
12
13    optionsParser.add_option('--version',action='store_true',help="get my version")
14
15    optionsParser.add_option('--low',action='store',help="low version of range to run")
16    optionsParser.add_option('--high',action='store',help="high version of range to run")
17
18    optionsParser.add_option('--removeonly',action='store_true',help="remove the build directory - do nothing else")
19
20    optionsParser.add_option('--noupdate',action='store_true',help="do not update the gs executable")
21    # "update" includes svn, configure, makeclean, clean, install
22
23    optionsParser.add_option('--nosvn',action='store_true',help="do not update the source from the svn repository")
24    optionsParser.add_option('--noconfigure',action='store_true',help="do not run auto configure")
25    optionsParser.add_option('--nomakeclean',action='store_true',help="do not make clean before make")
26    optionsParser.add_option('--nomake',action='store_true',help="do not make")
27
28    optionsParser.add_option('--nocapture',action='store_true',help="do not capture stdout and stderr from commands")
29
30    optionsParser.add_option('--noregression',action='store_true',help="do not run regression")
31    optionsParser.add_option('--notestregression',action='store_true',help="do not test regression")
32    optionsParser.add_option('--printregression',action='store_true',help="print regression output")
33    optionsParser.add_option('--printmailmessage',action='store_true',help="print mail message")
34
35    optionsParser.add_option('--fullset',action='store_true',help="full gsparamsets",default="True")
36    optionsParser.add_option('--minset',action='store_true',help="minimum gsparamsets")
37    optionsParser.add_option('--maxset',action='store_true',help="maximum gsparamsets")
38
39    optionsParser.add_option('--release',action='store_true',help="under contruction")
40    optionsParser.add_option('--oldrevision',action='store',help="old revision for checksum comparison",default=None)
41
42    (options,arguments)=myoptparse.parseCommandLine(optionsParser,deviceSkip=True,testfileSkip=True,listfileSkip=True,revisionSkip=True)
43
44    if options.version:
45        print options.myself,"version",myversion
46        sys.exit(1)
47
48    low=int(options.low)
49    high=int(options.high)
50
51    overall_result=0
52    for revision in range(low,high+1):
53        options.revision=revision
54        result = run_nightly(options,arguments)
55        if result > 0:
56            overall_result=1
57        print options.myself,revision,"result",result
58
59    sys.exit(overall_result)
60