OLD | NEW |
1 // Copyright 2015 The Swarming Authors. All rights reserved. | 1 // Copyright 2015 The Swarming Authors. All rights reserved. |
2 // Use of this source code is governed by the Apache v2.0 license that can be | 2 // Use of this source code is governed by the Apache v2.0 license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Schemas for project configs. | 5 // Schemas for project configs. |
6 | 6 |
7 syntax = "proto2"; | 7 syntax = "proto2"; |
8 | 8 |
9 package buildbucket; | 9 package buildbucket; |
10 | 10 |
(...skipping 23 matching lines...) Expand all Loading... |
34 // Repository URL of the recipe package. | 34 // Repository URL of the recipe package. |
35 optional string repository = 1; | 35 optional string repository = 1; |
36 // Name of the recipe to run. | 36 // Name of the recipe to run. |
37 optional string name = 2; | 37 optional string name = 2; |
38 // colon-separated build properties to set. | 38 // colon-separated build properties to set. |
39 // A property can be overriden by "properties" build parameter. | 39 // A property can be overriden by "properties" build parameter. |
40 // | 40 // |
41 // Use this field for string properties and use properties_j for other | 41 // Use this field for string properties and use properties_j for other |
42 // types. | 42 // types. |
43 repeated string properties = 3; | 43 repeated string properties = 3; |
44 // Same as properties, but the value must valid JSON or empty. For example | 44 // Same as properties, but the value must valid JSON. For example |
45 // properties_j: "a:1" | 45 // properties_j: "a:1" |
46 // means property a is a number 1, not string "1". | 46 // means property a is a number 1, not string "1". |
47 // | 47 // |
48 // If empty, it means no property must be defined. In particular, it removes | 48 // If null, it means no property must be defined. In particular, it removes |
49 // a default value for the property, if any. | 49 // a default value for the property, if any. |
50 // | 50 // |
51 // Fields properties and properties_j can be used together, but cannot both | 51 // Fields properties and properties_j can be used together, but cannot both |
52 // specify values for same property. | 52 // specify values for same property. |
53 repeated string properties_j = 4; | 53 repeated string properties_j = 4; |
54 } | 54 } |
55 | 55 |
| 56 // A builder has a name, a category and specifies what should happen if a |
| 57 // build is scheduled to that builder. |
| 58 // |
| 59 // SECURITY WARNING: if adding more fields to this message, keep in mind that |
| 60 // a user that has permissions to schedule a build to the bucket, can override |
| 61 // this config. |
56 message Builder { | 62 message Builder { |
57 // Name of the builder. Will be propagated to "builder" build tag and | 63 // Name of the builder. Will be propagated to "builder" build tag and |
58 // "buildername" recipe property. | 64 // "buildername" recipe property. |
59 optional string name = 1; | 65 optional string name = 1; |
60 // Builder category. Will be used for visual grouping, for example in Code R
eview. | 66 // Builder category. Will be used for visual grouping, for example in Code R
eview. |
61 optional string category = 6; | 67 optional string category = 6; |
62 // Will be become to swarming task tags. | 68 // Will be become to swarming task tags. |
63 // Each tag will end up in "swarming_tag" buildbucket tag, for example | 69 // Each tag will end up in "swarming_tag" buildbucket tag, for example |
64 // "swarming_tag:builder:release" | 70 // "swarming_tag:builder:release" |
65 repeated string swarming_tags = 2; | 71 repeated string swarming_tags = 2; |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
126 repeated Acl acls = 2; | 132 repeated Acl acls = 2; |
127 // Buildbucket-swarming integration. | 133 // Buildbucket-swarming integration. |
128 optional Swarming swarming = 3; | 134 optional Swarming swarming = 3; |
129 } | 135 } |
130 | 136 |
131 // Schema of buildbucket.cfg file, a project config. | 137 // Schema of buildbucket.cfg file, a project config. |
132 message BuildbucketCfg { | 138 message BuildbucketCfg { |
133 // All buckets defined for this project. | 139 // All buckets defined for this project. |
134 repeated Bucket buckets = 1; | 140 repeated Bucket buckets = 1; |
135 } | 141 } |
OLD | NEW |