Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: modules/buildbot/templates/master.cfg.erb

Issue 29325436: Issue 1281 - Introduce module buildbot (Closed)
Patch Set: Issue 1281 - Address review feedback Created Oct. 20, 2015, 8:35 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 # -*- python -*-
2 # ex: set syntax=python:
3 <% require 'json' -%>
4
5 # This is a sample buildmaster config file. It must be installed as
6 # 'master.cfg' in your buildmaster's base directory.
7
8 import buildbot.buildslave
9 import buildbot.status.html
10 import buildbot.status.web.authz
11
12 # This is the dictionary that the buildmaster pays attention to.
13 # We also use a shorter alias to save typing.
14 c = BuildmasterConfig = {}
15
16 ####### BUILDSLAVES
17
18 # The 'slaves' list defines the set of recognized buildslaves. Each
19 # element is a BuildSlave object, specifying a unique slave name and
20 # password. The same slave name and password must be configured on
21 # the slave.
22
23 c['slaves'] = [
24 # Puppet: $slaves where $master == localhost:9989
25 <% @slaves.sort.each do |name, record| -%>
26 <% default_master = "127.0.0.1:#{@port}" -%>
27 <% master = record.fetch('master', default_master) -%>
28 <% if [default_master, "localhost:#{@port}"].include? master -%>
29 buildbot.buildslave.BuildSlave(<%=
30 name.to_s.to_json %>, <%=
31 record.fetch('password', 'changeme').to_s.to_json %>),
32 <% end -%>
33 <% end -%>
34 # Puppet: $slave_credentials
35 <% @slave_credentials.sort.each do |name,password| -%>
36 buildbot.buildslave.BuildSlave(<%=
37 name.to_s.to_json %>, <%=
38 password.to_s.to_json %>),
39 <% end -%>
40 ]
41
42 # 'slavePortnum' defines the TCP port to listen on for connections
43 # from slaves. This must match the value configured into the buildslaves
44 # (with their --master option)
45
46 c['slavePortnum'] = <%= @slave_port.to_i %>
47
48 ####### CHANGESOURCES
49
50 # the 'change_source' setting tells the buildmaster how it should
51 # find out about source code changes.
52
53 c['change_source'] = []
54
55 # c['change_source'].append(buidlbot.changes.gitpoller.GitPoller(
56 # 'git://github.com/buildbot/pyflakes.git',
57 # workdir='gitpoller-workdir', branch='master', pollinterval=300)
58
59 ####### SCHEDULERS
60
61 # Configure the Schedulers, decidng how to react to incoming changes.
62
63 c['schedulers'] = []
64
65 # c['schedulers'].append(buildbot.schedulers.basic.SingleBranchScheduler(
66 # name="all", treeStableTimer=None, builderNames=["runtests"],
67 # change_filter=builtbot.changes.filter.ChangeFilter(branch='master')))
68
69 ####### BUILDERS
70
71 # The 'builders' list defines the Builders, which tell Buildbot how
72 # to perform a build: what steps, and which slaves can execute them.
73 # Note that any particular build will only take place on one slave.
74
75 c['builders'] = []
76
77 # factory = buildbot.process.factory.BuildFactory()
78 # factory.addStep(buildbot.steps.source.Git(
79 # repourl='git://github.com/buildbot/pyflakes.git', mode='copy'))
80 # factory.addStep(buildbot.steps.shell.ShellCommand(
81 # command=["trial", "pyflakes"]))
82
83 # c['builders'].append(buildbot.config.BuilderConfig(
84 # name="runtests", slavenames=["example-slave"], factory=factory))
85
86 ####### STATUS TARGETS
87
88 # 'status' is a list of Status Targets. The results of each build will
89 # be pushed to these targets. buildbot/status/*.py has a variety to
90 # choose from, including web pages, email senders, and IRC bots.
91
92 c['status'] = []
93 c['status'].append(
94 buildbot.status.html.WebStatus(
95 http_port=<%= @http_port.to_i %>,
96 authz=buildbot.status.web.authz.Authz(
97 gracefulShutdown = False,
98 forceBuild = True,
99 forceAllBuilds = False,
100 pingBuilder = False,
101 stopBuild = False,
102 stopAllBuilds = False,
103 cancelPendingBuild = False,
104 ),
105 ),
106 )
107
108 ####### PROJECT IDENTITY
109
110 # the 'title' string will appear at the top of this buildbot
111 # installation's html.WebStatus home page (linked to the 'titleURL')
112 # and is embedded in the title of the waterfall HTML page.
113
114 c['title'] = <%= @project.fetch('title', 'Example').to_s.to_json %>
115 c['titleURL'] = <%= @project.fetch('url', 'http://example.com/').to_s.to_json %>
116
117 # the 'buildbotURL' string points to the location where the buildbot's
118 # internal web server (usually the html.WebStatus page) is visible. This
119 # typically uses the port number set in the Waterfall 'status' entry,
120 # but with an externally-visible host name which the buildbot cannot
121 # figure out without some help.
122
123 c['buildbotURL'] = 'http://localhost:<%= @http_port.to_i %>/'
Felix Dahlke 2015/11/19 19:50:02 Shouldn't the host/domain/URL come from the manife
mathias 2016/01/20 16:13:53 Indeed, the documentation (taken from the original
Felix Dahlke 2016/02/10 09:26:10 Yeah, it's the externally visible URL. We're still
mathias 2016/02/10 10:30:45 Indeed, this should be a setdefault() as well (the
Felix Dahlke 2016/02/10 11:54:39 Waiting for another patch set with this then.
mathias 2016/02/18 10:54:42 Actually this was correct in the last patch-set al
124
125 ####### DB URL
126
127 # This specifies what database buildbot uses to store change and
128 # scheduler state. Leave this at its default for all but maybe the
129 # largest installations.
130
131 c['db_url'] = <%= @database.to_s.to_json %>
132
OLDNEW

Powered by Google App Engine
This is Rietveld