This repository has been archived by the owner on Feb 2, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 15
/
master.cfg
76 lines (57 loc) · 2.25 KB
/
master.cfg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# import/reload dance so that reconfigs work
# buildbotcustom.misc has to be imported/reloaded prior to config
# so that the fastRegexes don't get reset
import buildbotcustom.misc
import config
reload(buildbotcustom.misc)
reload(config)
from config import SLAVES
from buildbotcustom.misc import generateCCBranchObjects
ACTIVE_BRANCHES = ['comm-central-trunk', 'comm-2.0', 'comm-aurora', 'comm-beta', 'comm-release', 'comm-1.9.1']
L10N_SLAVES = {
'linux': SLAVES['linux'],
'linux64': SLAVES['linux64'],
'win32': SLAVES['win32'],
'macosx': SLAVES['macosx'],
'macosx64': SLAVES['macosx64'],
}
execfile("master-main.cfg")
# Required for sendchange
from buildbot.changes.pb import PBChangeSource
c['change_source'].append(PBChangeSource())
# 'slavePortnum' defines the TCP port to listen on. This must match the value
# configured into the buildslaves (with their --master option)
c['slavePortnum'] = 9010
####### STATUS TARGETS
from buildbot.status import html
c['status'].append(html.WebStatus(
http_port=8010, allowForce=True
))
c['buildbotURL'] = 'http://cb-seamonkey-linuxmaster-01.mozilla.org:8010/'
for branch in ACTIVE_BRANCHES:
branchObjects = generateCCBranchObjects(BRANCHES[branch], branch)
c['builders'].extend(branchObjects['builders'])
c['schedulers'].extend(branchObjects['schedulers'])
c['change_source'].extend(branchObjects['change_source'])
c['status'].extend(branchObjects['status'])
####### Release Automation
import release_master
reload(release_master)
c['builders'].extend(release_master.builders)
c['schedulers'].extend(release_master.schedulers)
c['change_source'].extend(release_master.change_source)
c['status'].extend(release_master.status)
# Give the release builders priority over other builders
def prioritizeBuilders(botmaster, builders):
def sortkey(builder):
if builder.builder_status.category == 'release':
return 0, builder.getOldestRequestTime()
else:
return 1, builder.getOldestRequestTime()
builders.sort(key=sortkey)
return builders
c['prioritizeBuilders'] = prioritizeBuilders
c['mergeRequests'] = buildbotcustom.misc.mergeRequests
# c is shorthand for BuildmasterConfig, so make sure they still refer to the
# same thing
assert c is BuildmasterConfig