Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(349)

Side by Side Diff: doc/source/user_guide/builders_pyl.rst

Issue 1143393004: Update docs for builders.pyl format, part 1. (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: s/suffix/extension/ Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 The builders.pyl File Format 1 The builders.pyl File Format
2 ============================ 2 ============================
3 3
4 builders.pyl is a declarative definition of a buildbot master. It 4 builders.pyl is a declarative definition of a buildbot master. It
5 is intended to hide all of the buildbot-specific implementation 5 is intended to hide all of the buildbot-specific implementation
6 details from the user and just expose the features and settings a 6 details from the user and just expose the features and settings a
7 non-buildbot-guru cares about. 7 non-buildbot-guru cares about.
8 8
9 What is the .pyl format? 9 What is the .pyl format?
10 ------------------------ 10 ------------------------
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 "builders": { 51 "builders": {
52 "Chromium Mojo Linux": { 52 "Chromium Mojo Linux": {
53 "recipe": "chromium_mojo", 53 "recipe": "chromium_mojo",
54 "slave_pools": ["linux_precise"], 54 "slave_pools": ["linux_precise"],
55 }, 55 },
56 }, 56 },
57 "git_repo_url": "https://chromium.googlesource.com/chromium/src.git", 57 "git_repo_url": "https://chromium.googlesource.com/chromium/src.git",
58 "master_base_class": "Master1", 58 "master_base_class": "Master1",
59 "master_port": 20100, 59 "master_port": 20100,
60 "master_port_alt": 40100, 60 "master_port_alt": 40100,
61 "master_type": "waterfall",
62 "slave_pools": { 61 "slave_pools": {
63 "linux_precise": { 62 "linux_precise": {
64 "slave_data": { 63 "slave_data": {
65 "bits": 64, 64 "bits": 64,
66 "os": "linux", 65 "os": "linux",
67 "version": "precise", 66 "version": "precise",
68 }, 67 },
69 "slaves": ["vm46-m1"], 68 "slaves": ["vm46-m1"],
70 }, 69 },
71 }, 70 },
72 "slave_port": 30100, 71 "slave_port": 30100,
73 } 72 }
74 % 73 %
75 74
76 Top-level keys 75 Top-level keys
77 -------------- 76 --------------
78 77
79 At the top-level, builders.pyl files contain a single Python dictionary 78 At the top-level, builders.pyl files contain a single Python dictionary
80 containing things that are configured per-master. 79 containing things that are configured per-master.
81 80
82 builders 81 builders
83 This key is *required* and contains a dict of builder names and their 82 This key is *required* and contains a dict of builder names and their
84 respective configurations; those configurations are described in 83 respective configurations; those configurations are described in
85 the per-builder keys section, below. 84 the per-builder keys section, below.
86 85
87 master_type 86 buildbucket_bucket
88 This key is *required* and must contain one of two values: "waterfall" 87 This key is *optional* but must be present if the builders on the
89 or "tryserver". A waterfall buildbot typically polls a single 88 master are intended to be scheduled through buildbucket (i.e., they
90 source repository looking for changes, and runs builds on every change. 89 are tryservers or triggered from other builders, possibly on other masters).
91 A tryserver buildbot typically polls a code review tool looking
92 for new (unlanded) changes to test.
93 90
94 If the value is "waterfall", the top-level dict must set the "git_repo_url" 91 If set, it should contain the string value of the `buildbucket bucket`_
95 key. 92 created for this buildbot. If it is not set, it defaults to `None`.
96 93 By convention, buckets are named to match the master name, e.g.
97 If the value is "tryserver", the top-level dict must set the 94 "master.tryserver.nacl".
98 "buildbucket_bucket" and "service_account_file" keys.
99
100 buildbucket_bucket
101 This key is *required* if the master_type key is set to "tryserver", and
102 must not be present otherwise.
103
104 It should contain the string value of the `buildbucket bucket`_ created
105 for this buildbot.
106 95
107 git_repo_url 96 git_repo_url
108 This key is *required* if the master_type key has the value "waterfall", 97 This key is *optional*. If it is not set, the builders on the waterfall
109 and must not be present otherwise. 98 will only be triggerable by buildbucket (or directly).
110 99
111 It should contain a string value that is the URL for a repo 100 It should contain a string value that is the URL for a repo to be cloned and
112 to be cloned and polled for changes. 101 polled for changes.
113 102
114 master_base_class 103 master_base_class
115 This key is *required*. It should specify the name of the Python 104 This key is *required*. It should specify the name of the Python
116 class of the buildbot master that this master is based on. This is 105 class of the buildbot master that this master is based on. This is
117 usually one of the classes defined in build/site_config/config_bootstrap.py. 106 usually one of the classes defined in build/site_config/config_bootstrap.py.
118 107
119 For example, if you were setting up a new master in the -m1 VLAN, you would be 108 For example, if you were setting up a new master in the -m1 VLAN, you would
120 subclassing Master.Master1, so this value would be 'Master1'. 109 be subclassing Master.Master1, so this value would be 'Master1'.
121 110
122 master_port 111 master_port
123 This key is *required*. It is the main IP port that the buildbot 112 This key is *required*. It is the main IP port that the buildbot
124 master instance runs on. You should set this to the port obtained 113 master instance runs on. You should set this to the port obtained
125 from the admins. 114 from the admins.
126 115
127 master_port_alt 116 master_port_alt
128 This key is *required*. It is the alternate IP port that the buildbot 117 This key is *required*. It is the alternate IP port that the buildbot
129 master instance runs on. You should set this to the port obtained 118 master instance runs on. You should set this to the port obtained
130 from the admins. 119 from the admins.
131 120
132 service_account_file 121 service_account_file
133 This key is *required* if the master_type key has the value "tryserver", 122 This key is *optional* but must be present if the builders on the
134 and must not be present otherwise. 123 master are intended to be scheduled through buildbucket (i.e., they
124 are tryservers or triggered from other bots).
135 125
136 It should point to a file under "/creds/service_accounts" on the slave 126 If set, it should point to the filename in the credentials directory on the
137 machine, and contain the `OAuth service account info`_ 127 slave machine (i.e., just the basename + extension, no directory part), that
138 the slave will use to connect to buildbucket. 128 contains the `OAuth service account info`_ the slave will use to connect to
129 buildbucket. By convention, the value is "service-account-<project>.json".
130 If not set, it defaults to `None`.
139 131
140 slave_pools 132 slave_pools
141 This key is *required* and must contain a dict of pool names and 133 This key is *required* and must contain a dict of pool names and
142 properties, as described below. 134 properties, as described below.
143 135
144 slave_port 136 slave_port
145 This key is *required*. It is the port that the buildbot slaves will 137 This key is *required*. It is the port that the buildbot slaves will
146 attempt to connect to on the master. 138 attempt to connect to on the master.
147 139
148 140
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 If os is "mac": "10.6", "10.7", "10.8", "10.9", "10.10". 190 If os is "mac": "10.6", "10.7", "10.8", "10.9", "10.10".
199 191
200 If os is "linux": "precise" or "trusty". 192 If os is "linux": "precise" or "trusty".
201 193
202 If os is "win": "xp", "vista", "win7", "win8", "2008" 194 If os is "win": "xp", "vista", "win7", "win8", "2008"
203 195
204 .. _`buildbucket bucket`: https://cr-buildbucket.appspot.com 196 .. _`buildbucket bucket`: https://cr-buildbucket.appspot.com
205 .. _`OAuth service account info`: ../master_auth.html 197 .. _`OAuth service account info`: ../master_auth.html
206 .. _`recipe`: recipes.html 198 .. _`recipe`: recipes.html
207 .. _`recipe name`: recipes.html 199 .. _`recipe name`: recipes.html
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698