New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Changeset 79961


Ignore:
Timestamp:
06/30/11 16:08:03 (4 years ago)
Author:
jmr@…
Message:

update buildbot cfg

File:
1 edited

Legend:

Unmodified
Added
Removed
  • users/jmr/master.cfg

    r79896 r79961  
    88# a shorter alias to save typing. 
    99c = BuildmasterConfig = {} 
     10 
     11# Master variable to toggle config between testing on your personal system 
     12# (where /opt/local shouldn't be messed with) and the production server (where 
     13# it has to be) 
     14production = False 
    1015 
    1116####### BUILDSLAVES 
     
    1520# slave name and password must be configured on the slave. 
    1621from buildbot.buildslave import BuildSlave 
    17 c['slaves'] = [BuildSlave("snowleopard-x86_64", "pass")] 
     22if production: 
     23    # FIXME 
     24    c['slaves'] = [] 
     25else: 
     26    c['slaves'] = [BuildSlave("snowleopard-x86_64", "pass")] 
    1827 
    1928# 'slavePortnum' defines the TCP port to listen on for connections from slaves. 
     
    3039# notifications from a post-commit script) should be used in production 
    3140 
    32 from buildbot.changes.svnpoller import SVNPoller 
    33 c['change_source'] = [SVNPoller( 
    34         'https://svn.macports.org/repository/macports/trunk/base', 
    35         project='base', 
    36         svnbin='/opt/local/bin/svn', 
    37         pollinterval=300), 
    38     SVNPoller( 
    39         'https://svn.macports.org/repository/macports/trunk/dports', 
    40         project='ports', 
    41         svnbin='/opt/local/bin/svn', 
    42         pollinterval=300) 
    43     ] 
    44  
    45 # from buildbot.changes.pb import PBChangeSource 
    46 # c['change_source'] = PBChangeSource(user='change', passwd='changepw') 
     41if production: 
     42    from buildbot.changes.pb import PBChangeSource 
     43    # FIXME: real username and password 
     44    c['change_source'] = PBChangeSource(user='change', passwd='changepw') 
     45else: 
     46    from buildbot.changes.svnpoller import SVNPoller 
     47    c['change_source'] = [SVNPoller( 
     48            'https://svn.macports.org/repository/macports/trunk/base', 
     49            project='base', 
     50            svnbin='/opt/local/bin/svn', 
     51            pollinterval=300), 
     52        SVNPoller( 
     53            'https://svn.macports.org/repository/macports/trunk/dports', 
     54            project='ports', 
     55            svnbin='/opt/local/bin/svn', 
     56            pollinterval=300) 
     57        ] 
    4758 
    4859####### SCHEDULERS 
     
    108119            self.setProperty('portlist', portlist) 
    109120 
     121 
     122# can't run with PREFIX/SRC_PREFIX inside the workdir in production, 
     123# because archives must be built with prefix=/opt/local 
     124if production: 
     125    prefix='/opt/local' 
     126    src_prefix='/opt/mports' 
     127    # FIXME 
     128    dlhost='mparchives.local' 
     129    dlpath='/archives' 
     130else: 
     131    prefix='%(workdir)s/opt/local' 
     132    src_prefix='%(workdir)s/opt/mports' 
     133    dlhost='' 
     134    dlpath='.' 
     135 
    110136ports_factory = BuildFactory() 
    111137# get MPAB itself; we'll do the checkout of base and dports via MPAB's script 
    112138ports_factory.addStep(SVN(svnurl='https://svn.macports.org/repository/macports/contrib/mpab', 
    113139                      mode="update")) 
    114 # XXX can't run with PREFIX/SRC_PREFIX inside the workdir in production, 
    115 # because archives must be built with prefix=/opt/local 
    116140ports_factory.addStep(ShellCommand(command=["./mpsync.sh"], 
    117                       env={'PREFIX': WithProperties("%(workdir)s/opt/local"), 
    118                            'SRC_PREFIX': WithProperties("%(workdir)s/opt/mports")})) 
     141                      env={'PREFIX': WithProperties(prefix), 
     142                           'SRC_PREFIX': WithProperties(src_prefix)})) 
    119143ports_factory.addStep(ShellCommandWithPortList(command=WithProperties('echo %(portlist)s | tr " " "\n" > portlist'))) 
    120144# run MPAB on the port list 
    121145ports_factory.addStep(Compile(command=["./mpab", "buildports", "portlist"], 
    122                       env={'PREFIX': WithProperties("%(workdir)s/opt/local"), 
    123                            'SRC_PREFIX': WithProperties("%(workdir)s/opt/mports")})) 
     146                      env={'PREFIX': WithProperties(prefix), 
     147                           'SRC_PREFIX': WithProperties(src_prefix)})) 
    124148# sign generated binaries and sync to download server (if distributable) 
    125 ports_factory.addStep(ShellCommand(command=["./deploy_archives.sh"])) 
     149ports_factory.addStep(ShellCommand(command=["./deploy_archives.sh"], 
     150                      env={'PREFIX': WithProperties(prefix), 
     151                           'DLHOST': dlhost, 
     152                           'DLPATH': dlpath})) 
    126153 
    127154# make a logfile summarising the success/failure status for each port 
    128155ports_factory.addStep(ShellCommand(command=["./do_status.sh"], 
     156                        env={'PREFIX': WithProperties(prefix)}, 
    129157                        logfiles={"portstatus": "portstatus.log"})) 
    130158# do we want to upload the individual logs so maintainers can review them? 
     
    133161from buildbot.config import BuilderConfig 
    134162 
    135 c['builders']= [ 
    136     BuilderConfig(name="buildbase", 
    137       slavenames=["snowleopard-x86_64"], 
    138       factory=base_factory), 
    139     BuilderConfig(name="buildports", 
    140       slavenames=["snowleopard-x86_64"], 
    141       factory=ports_factory) 
    142     ] 
     163if production: 
     164    # FIXME 
     165    c['builders']= [] 
     166else: 
     167    c['builders']= [ 
     168        BuilderConfig(name="buildbase", 
     169          slavenames=["snowleopard-x86_64"], 
     170          factory=base_factory), 
     171        BuilderConfig(name="buildports", 
     172          slavenames=["snowleopard-x86_64"], 
     173          factory=ports_factory) 
     174        ] 
    143175 
    144176####### STATUS TARGETS 
Note: See TracChangeset for help on using the changeset viewer.