Changeset 4906

Show
Ignore:
Timestamp:
07/08/08 14:38:23 (6 months ago)
Author:
StevenMohr
Message:

all classes work

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • build/buildmaster/tgbuilder.py

    r4901 r4906  
    2222    ftg1.addStep(VirtualEnv,env={'PYTHONPATH':pythonpath,'PATH':path},haltOnFailure=True) 
    2323    ftg1.addStep(InterOSShellCommand,command=["cp","python2.3","python"],description="Rename python23", 
    24                  workdir="build/bin",FlunkOnFailure=False) 
     24                 workdir="build/bin",flunkOnFailure=False) 
    2525 
    2626    ftg1.addStep(Python,script="externals.py",workdir="build/thirdparty", 
  • build/buildmaster/tg_mbuildsteps.py

    r4901 r4906  
    1313 
    1414class BaseStep(LoggingBuildStep): 
    15     def __init__(self, parms, slave_name, *args, **kwargs): 
    16         if kwargs.has_key('workdir') == False: 
     15    parms = BuildStep.parms + ['description','descriptionDone','env','workdir'] 
     16    def __init__(self, slave_name, *args, **kwargs): 
     17        kwargs['haltOnFailure']=False 
     18        if 'workdir' not in kwargs: 
    1719            kwargs['workdir'] = 'build' 
    1820         
    19         if kwargs.has_key('env') == False
     21        if 'env' not in kwargs
    2022            kwargs['env'] = {}     
    2123         
    22         self.parms = BuildStep.parms + kwargs['parms'] 
     24        if 'description' in kwargs and 'descriptionDone' not in kwargs: 
     25            kwargs['descriptionDone'] = kwargs['description'] 
    2326         
    24         self.slavestep = kwargs['slavestep'] 
     27        self.slave_name = slave_name 
    2528        self.arguments = kwargs.copy() 
    2629        BuildStep.__init__(self, *args, **kwargs) 
    2730        self.addLogObserver('stdout', OutputProgressObserver('output')) 
    2831         
    29     def describe(selfself, done=False): 
    30         if self.arguments.has_key('description')
     32    def describe(self, done=False): 
     33        if 'description' in self.arguments
    3134            if done: 
    3235                return [self.arguments['description']] 
     
    4245    def start(self): 
    4346        self.addLog('stdout') 
    44         cmd = LoggedRemoteCommand(self.slavestep, self.arguments) 
     47        cmd = LoggedRemoteCommand(self.slave_name, self.arguments) 
    4548        self.startCommand(cmd)       
    4649           
    4750class VirtualEnv(BaseStep): 
     51    parms = BaseStep.parms  
    4852    def __init__(self, *args, **kwargs): 
    49         BaseStep.__init__(self, parms=['workdir', 'env'], slave_name="VirtualEnv", *args, **kwargs) 
     53        BaseStep.__init__(self, slave_name="VirtualEnv", *args, **kwargs) 
    5054                  
    5155class EasyInstall(BaseStep): 
     56    parms = BaseStep.parms + ['package']     
    5257    def __init__(self, *args, **kwargs): 
    53         BaseStep.__init__(self, parms=['workdir', 'env', 'package'], slave_name="EasyInstall", *args, **kwargs)    
     58        BaseStep.__init__(self, slave_name="EasyInstall", *args, **kwargs)    
    5459     
    5560class RunSetup(BaseStep): 
     61    parms = BaseStep.parms + ['devmode']  
    5662    def __init__(self, *args, **kwargs): 
    57         BaseStep.__init__(self, parms=['workdir', 'env', 'devmode'], slave_name="RunSetup", *args, **kwargs) 
     63        BaseStep.__init__(self, slave_name="RunSetup", *args, **kwargs) 
    5864 
    5965class BuildEgg(BaseStep): 
     66    parms = BaseStep.parms + ['URL']  
    6067    def __init__(self, *args, **kwargs): 
    61         BaseStep.__init__(self, parms=['workdir', 'env', 'URL'], slave_name="BuildEgg", *args, **kwargs) 
     68        BaseStep.__init__(self, slave_name="BuildEgg", *args, **kwargs) 
    6269         
    6370class Nose(BaseStep): 
     71    parms = BaseStep.parms + ['verbose','testdir']  
    6472    def __init__(self, *args, **kwargs): 
    65         BaseStep.__init__(self, parms=['workdir', 'env', 'verbose'], slave_name="Nose", *args, **kwargs) 
     73        BaseStep.__init__(self, slave_name="Nose", *args, **kwargs) 
    6674         
    6775class BuildEggEE(BaseStep): 
     76    parms = BaseStep.parms + [ 'URL']  
    6877    def __init__(self, *args, **kwargs): 
    69         BaseStep.__init__(self, parms=['workdir', 'env', 'package', 'URL'], slave_name="BuildEggEE", *args, **kwargs) 
     78        BaseStep.__init__(self, slave_name="BuildEggEE", *args, **kwargs) 
    7079        
    7180class InterOSShellCommand(BaseStep): 
     81    parms = BaseStep.parms + ['command']  
    7282    def __init__(self, *args, **kwargs): 
    73         BaseStep.__init__(self, parms=['workdir', 'env', 'command'], slave_name="InterOSShell", *args, **kwargs) 
     83        BaseStep.__init__(self, slave_name="InterOSShellCommand", *args, **kwargs) 
    7484         
    7585class Python(BaseStep): 
    76     def start(self): 
    77        def __init__(self, *args, **kwargs): 
    78         BaseStep.__init__(self, parms=['workdir', 'env', 'script'], slave_name="Python", *args, **kwargs)  
     86    parms = BaseStep.parms + ['script']  
     87    def __init__(self, *args, **kwargs): 
     88        BaseStep.__init__(self, slave_name="Python", *args, **kwargs)  
  • build/buildmaster/tg_sbuildsteps.py

    r4901 r4906  
    99__copyright__ = "MIT license" 
    1010 
    11 import os 
    1211from winunix import correctseperator 
    13 from buildbot.slave.commands import SlaveShellCommand, Command 
     12 
    1413 
    1514class SlaveEasyInstall(SlaveShellCommand): 
    1615    def start(self): 
    17         args = self.arg 
     16        args = self.args 
    1817        assert args['package'] is not None 
    1918         
     
    2120         
    2221        env['PATH'] = correctseperator(env['PATH'])  
    23         if OS.path.seperator == '\\': 
    24             env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
    25         else: 
    26             env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
    27          
    28         env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
     22        if os.sep == '\\': 
     23            env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
     24        else: 
     25            env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
     26         
     27        if 'PYTHONPATH' in env: 
     28            env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
    2929 
    3030        newworkdir = correctseperator(args['workdir']) 
     
    5555        env = args.get('env') 
    5656        env['PATH'] = correctseperator(env['PATH'])  
    57         if OS.path.seperator == '\\': 
    58             env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
    59         else: 
    60             env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
    61          
    62         env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
     57        if os.sep == '\\': 
     58            env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
     59        else: 
     60            env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
     61         
     62        if 'PYTHONPATH' in env: 
     63            env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
    6364 
    6465        if args.has_key('devmode') == False: 
     
    8990registerSlaveCommand("RunSetup", SlaveRunSetup, command_version) 
    9091class SlaveBuildEgg(SlaveShellCommand): 
    91     def start(self): 
     92    def start(self):  
     93        args = self.args 
    9294        url = "" 
    93         if args.has_key('URL')
     95        if 'URL' in args
    9496            url = args['URL'] 
    9597            url = "-f "+ url 
    96         args = self.args 
     98        
    9799 
    98100        env = args.get('env') 
    99101         
    100102        env['PATH'] = correctseperator(env['PATH'])  
    101         if OS.path.seperator == '\\': 
    102             env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
    103         else: 
    104             env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
    105          
    106         env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
     103        if os.sep == '\\': 
     104            env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
     105        else: 
     106            env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
     107         
     108        if 'PYTHONPATH' in env: 
     109            env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
    107110        newworkdir = correctseperator(args['workdir']) 
    108111        workdir = os.path.join(self.builder.basedir, newworkdir) 
     
    131134         
    132135        env = args.get('env') 
    133          
    134         env['PATH'] = correctseperator(args['PATH'])  
    135         if OS.path.seperator == '\\': 
    136             env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
    137         else: 
    138             env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
    139          
    140         env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
     136        if 'PATH' in env: 
     137            env['PATH'] = correctseperator(env['PATH'])  
     138        if os.sep == '\\': 
     139            env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
     140        else: 
     141            env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
     142         
     143        if 'PYTHONPATH' in env: 
     144            env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
    141145 
    142146        newworkdir = correctseperator(args['workdir']) 
     
    145149 
    146150        commandline = ["nose"] 
    147         if args.has_key('verbose') and args['verbose']: 
     151        if 'verbose' in args and args['verbose']: 
    148152            commandline.append("-v") 
    149153 
     
    171175        env = args.get('env') 
    172176         
    173         env['PATH'] = correctseperator(env['PATH'])  
    174         if OS.path.seperator == '\\': 
    175             env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
    176         else: 
    177             env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
    178          
    179         env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
     177         
     178        if 'PATH' in env: 
     179            env['PATH'] = correctseperator(env['PATH'])  
     180        if os.sep == '\\': 
     181            env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
     182        else: 
     183            env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
     184         
     185        if 'PYTHONPATH' in env: 
     186            env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
    180187        newworkdir = correctseperator(args['workdir']) 
    181188 
     
    222229        env = args.get('env') 
    223230         
    224         env['PATH'] = correctseperator(args['path'])  
    225         if OS.path.seperator == '\\': 
    226             env['path'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
    227         else: 
    228             env['path'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
    229          
    230         env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
     231        if 'PATH' in env: 
     232            env['PATH'] = correctseperator(env['PATH'])  
     233        if os.sep == '\\': 
     234            env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
     235        else: 
     236            env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
     237         
     238        if 'PYTHONPATH' in env: 
     239            env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
    231240         
    232241        commandline = args['command'] 
     
    257266        env = args.get('env') 
    258267         
    259         env['PATH'] = correctseperator(env['PATH'])  
    260         if OS.path.sep == '\\': 
    261             env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
    262         else: 
    263             env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
    264          
    265         env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
    266  
    267         newworkdir = correctseperator(args['workdir']) 
    268         workdir = os.path.join(self.builder.basedir, newworkdir) 
    269         script = correctseperator(script) 
     268        if 'PATH' in env: 
     269            env['PATH'] = correctseperator(env['PATH'])  
     270         
     271        if os.path.sep == '\\': 
     272            env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
     273        else: 
     274            env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
     275         
     276        if 'PYTHONPATH' in env: 
     277            env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
     278 
     279        newworkdir = correctseperator(args['workdir']) 
     280        workdir = os.path.join(self.builder.basedir, newworkdir) 
     281        script = correctseperator(args['script']) 
    270282 
    271283        commandline = ["python",script] 
     
    294306        env = args.get('env') 
    295307         
    296         if env.has_key('PATH')
    297             env['PATH'] = correctseperator(args['path'])  
    298         if os.sep == '\\': 
    299             env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
    300         else: 
    301             env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
    302          
    303         if env.has_key('PYTHONPATH')
     308        if 'PATH' in env
     309            env['PATH'] = correctseperator(env['PATH'])  
     310        if os.sep == '\\': 
     311            env['PATH'] = 'scripts' + os.path.pathsep + os.getenv("PATH") 
     312        else: 
     313            env['PATH'] = 'bin' + os.path.pathsep + os.getenv("PATH") 
     314         
     315        if 'PYTHONPATH' in env
    304316            env['PYTHONPATH'] = correctseperator(env['PYTHONPATH']) 
    305317         
     
    324336        d = self.command.start() 
    325337        return d 
    326 registerSlaveCommand("VirtualEnv", SlaveVirtualEnv, command_version)     
     338registerSlaveCommand("VirtualEnv", SlaveVirtualEnv, command_version)