| // Copyright 2018 The LUCI Authors. |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| // Schemas for project configs. |
| |
| // Code generated by protoc-gen-go. DO NOT EDIT. |
| // versions: |
| // protoc-gen-go v1.33.0 |
| // protoc v5.26.1 |
| // source: go.chromium.org/luci/buildbucket/proto/project_config.proto |
| |
| package buildbucketpb |
| |
| import ( |
| _ "go.chromium.org/luci/common/proto" |
| v1 "go.chromium.org/luci/resultdb/proto/v1" |
| protoreflect "google.golang.org/protobuf/reflect/protoreflect" |
| protoimpl "google.golang.org/protobuf/runtime/protoimpl" |
| durationpb "google.golang.org/protobuf/types/known/durationpb" |
| wrapperspb "google.golang.org/protobuf/types/known/wrapperspb" |
| reflect "reflect" |
| sync "sync" |
| ) |
| |
| const ( |
| // Verify that this generated code is sufficiently up-to-date. |
| _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) |
| // Verify that runtime/protoimpl is sufficiently up-to-date. |
| _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) |
| ) |
| |
| // Toggle is a boolean with an extra state UNSET. |
| // When protobuf messages are merged, UNSET does not overwrite an existing |
| // value. |
| // TODO(nodir): replace with Trinary in ../common.proto. |
| type Toggle int32 |
| |
| const ( |
| Toggle_UNSET Toggle = 0 |
| Toggle_YES Toggle = 1 |
| Toggle_NO Toggle = 2 |
| ) |
| |
| // Enum value maps for Toggle. |
| var ( |
| Toggle_name = map[int32]string{ |
| 0: "UNSET", |
| 1: "YES", |
| 2: "NO", |
| } |
| Toggle_value = map[string]int32{ |
| "UNSET": 0, |
| "YES": 1, |
| "NO": 2, |
| } |
| ) |
| |
| func (x Toggle) Enum() *Toggle { |
| p := new(Toggle) |
| *p = x |
| return p |
| } |
| |
| func (x Toggle) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (Toggle) Descriptor() protoreflect.EnumDescriptor { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_enumTypes[0].Descriptor() |
| } |
| |
| func (Toggle) Type() protoreflect.EnumType { |
| return &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_enumTypes[0] |
| } |
| |
| func (x Toggle) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Use Toggle.Descriptor instead. |
| func (Toggle) EnumDescriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{0} |
| } |
| |
| type Acl_Role int32 |
| |
| const ( |
| Acl_READER Acl_Role = 0 |
| Acl_SCHEDULER Acl_Role = 1 |
| Acl_WRITER Acl_Role = 2 |
| ) |
| |
| // Enum value maps for Acl_Role. |
| var ( |
| Acl_Role_name = map[int32]string{ |
| 0: "READER", |
| 1: "SCHEDULER", |
| 2: "WRITER", |
| } |
| Acl_Role_value = map[string]int32{ |
| "READER": 0, |
| "SCHEDULER": 1, |
| "WRITER": 2, |
| } |
| ) |
| |
| func (x Acl_Role) Enum() *Acl_Role { |
| p := new(Acl_Role) |
| *p = x |
| return p |
| } |
| |
| func (x Acl_Role) String() string { |
| return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) |
| } |
| |
| func (Acl_Role) Descriptor() protoreflect.EnumDescriptor { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_enumTypes[1].Descriptor() |
| } |
| |
| func (Acl_Role) Type() protoreflect.EnumType { |
| return &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_enumTypes[1] |
| } |
| |
| func (x Acl_Role) Number() protoreflect.EnumNumber { |
| return protoreflect.EnumNumber(x) |
| } |
| |
| // Deprecated: Use Acl_Role.Descriptor instead. |
| func (Acl_Role) EnumDescriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{0, 0} |
| } |
| |
| // Deprecated in favor of LUCI Realms. This proto is totally unused now, exists |
| // only to not break older configs that still may have deprecated fields |
| // populated. |
| type Acl struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Deprecated: Marked as deprecated in go.chromium.org/luci/buildbucket/proto/project_config.proto. |
| Role Acl_Role `protobuf:"varint,1,opt,name=role,proto3,enum=buildbucket.Acl_Role" json:"role,omitempty"` |
| // Deprecated: Marked as deprecated in go.chromium.org/luci/buildbucket/proto/project_config.proto. |
| Group string `protobuf:"bytes,2,opt,name=group,proto3" json:"group,omitempty"` |
| // Deprecated: Marked as deprecated in go.chromium.org/luci/buildbucket/proto/project_config.proto. |
| Identity string `protobuf:"bytes,3,opt,name=identity,proto3" json:"identity,omitempty"` |
| } |
| |
| func (x *Acl) Reset() { |
| *x = Acl{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[0] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Acl) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Acl) ProtoMessage() {} |
| |
| func (x *Acl) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[0] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Acl.ProtoReflect.Descriptor instead. |
| func (*Acl) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{0} |
| } |
| |
| // Deprecated: Marked as deprecated in go.chromium.org/luci/buildbucket/proto/project_config.proto. |
| func (x *Acl) GetRole() Acl_Role { |
| if x != nil { |
| return x.Role |
| } |
| return Acl_READER |
| } |
| |
| // Deprecated: Marked as deprecated in go.chromium.org/luci/buildbucket/proto/project_config.proto. |
| func (x *Acl) GetGroup() string { |
| if x != nil { |
| return x.Group |
| } |
| return "" |
| } |
| |
| // Deprecated: Marked as deprecated in go.chromium.org/luci/buildbucket/proto/project_config.proto. |
| func (x *Acl) GetIdentity() string { |
| if x != nil { |
| return x.Identity |
| } |
| return "" |
| } |
| |
| // Defines a swarmbucket builder. A builder has a name, a category and specifies |
| // what should happen if a build is scheduled to that builder. |
| // |
| // SECURITY WARNING: if adding more fields to this message, keep in mind that |
| // a user that has permissions to schedule a build to the bucket, can override |
| // this config. |
| // |
| // Next tag: 41. |
| type BuilderConfig struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Name of the builder. |
| // |
| // If a builder name, will be propagated to "builder" build tag and |
| // "buildername" recipe property. |
| // |
| // A builder name must be unique within the bucket, and match regex |
| // ^[a-zA-Z0-9\-_.\(\) ]{1,128}$. |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| // Backend for this builder. |
| // If unset, builds are scheduled using the legacy pipeline. |
| Backend *BuilderConfig_Backend `protobuf:"bytes,32,opt,name=backend,proto3" json:"backend,omitempty"` |
| // Alternate backend to use for this builder when the |
| // "luci.buildbucket.backend_alt" experiment is enabled. Works even when |
| // `backend` is empty. Useful for migrations to new backends. |
| BackendAlt *BuilderConfig_Backend `protobuf:"bytes,33,opt,name=backend_alt,json=backendAlt,proto3" json:"backend_alt,omitempty"` |
| // Hostname of the swarming instance, e.g. "chromium-swarm.appspot.com". |
| // Required, but defaults to deprecated Swarming.hostname. |
| SwarmingHost string `protobuf:"bytes,21,opt,name=swarming_host,json=swarmingHost,proto3" json:"swarming_host,omitempty"` |
| // Builder category. Will be used for visual grouping, for example in Code Review. |
| Category string `protobuf:"bytes,6,opt,name=category,proto3" json:"category,omitempty"` |
| // DEPRECATED. |
| // Used only to enable "vpython:native-python-wrapper" |
| // Does NOT actually propagate to swarming. |
| SwarmingTags []string `protobuf:"bytes,2,rep,name=swarming_tags,json=swarmingTags,proto3" json:"swarming_tags,omitempty"` |
| // A requirement for a bot to execute the build. |
| // |
| // Supports 2 forms: |
| // - "<key>:<value>" - require a bot with this dimension. |
| // This is a shortcut for "0:<key>:<value>", see below. |
| // - "<expiration_secs>:<key>:<value>" - wait for up to expiration_secs. |
| // for a bot with the dimension. |
| // Supports multiple values for different keys and expiration_secs. |
| // expiration_secs must be a multiple of 60. |
| // |
| // If this builder is defined in a bucket, dimension "pool" is defaulted |
| // to the name of the bucket. See Bucket message below. |
| Dimensions []string `protobuf:"bytes,3,rep,name=dimensions,proto3" json:"dimensions,omitempty"` |
| // Specifies that a recipe to run. |
| // DEPRECATED: use exe. |
| Recipe *BuilderConfig_Recipe `protobuf:"bytes,4,opt,name=recipe,proto3" json:"recipe,omitempty"` |
| // What to run when a build is ready to start. |
| Exe *Executable `protobuf:"bytes,23,opt,name=exe,proto3" json:"exe,omitempty"` |
| // A JSON object representing Build.input.properties. |
| // Individual object properties can be overridden with |
| // ScheduleBuildRequest.properties. |
| Properties string `protobuf:"bytes,24,opt,name=properties,proto3" json:"properties,omitempty"` |
| // A list of top-level property names which can be overridden in |
| // ScheduleBuildRequest. |
| // |
| // If this field is the EXACT value `["*"]` then all properties are permitted |
| // to be overridden. |
| // |
| // NOTE: Some executables (such as the recipe engine) can have drastic |
| // behavior differences based on some properties (for example, the "recipe" |
| // property). If you allow the "recipe" property to be overridden, then anyone |
| // with the 'buildbucket.builds.add' permission could create a Build for this |
| // Builder running a different recipe (from the same recipe repo). |
| AllowedPropertyOverrides []string `protobuf:"bytes,34,rep,name=allowed_property_overrides,json=allowedPropertyOverrides,proto3" json:"allowed_property_overrides,omitempty"` |
| // Swarming task priority. |
| // A value between 20 and 255, inclusive. |
| // Lower means more important. |
| // |
| // The default value is configured in |
| // https://chrome-internal.googlesource.com/infradata/config/+/master/configs/cr-buildbucket/swarming_task_template.json |
| // |
| // See also https://chromium.googlesource.com/infra/luci/luci-py.git/+/master/appengine/swarming/doc/User-Guide.md#request |
| Priority uint32 `protobuf:"varint,5,opt,name=priority,proto3" json:"priority,omitempty"` |
| // Maximum build execution time. |
| // |
| // Not to be confused with pending time. |
| // |
| // If the timeout is reached, the task will be signaled according to the |
| // `deadline` section of |
| // https://chromium.googlesource.com/infra/luci/luci-py/+/HEAD/client/LUCI_CONTEXT.md |
| // and status_details.timeout is set. |
| // |
| // The task will have `grace_period` amount of time to handle cleanup |
| // before being forcefully terminated. |
| // |
| // NOTE: This corresponds with Build.execution_timeout and |
| // ScheduleBuildRequest.execution_timeout; The name `execution_timeout_secs` and |
| // uint32 type are relics of the past. |
| ExecutionTimeoutSecs uint32 `protobuf:"varint,7,opt,name=execution_timeout_secs,json=executionTimeoutSecs,proto3" json:"execution_timeout_secs,omitempty"` |
| // Maximum amount of time to wait for the next heartbeat(i.e UpdateBuild). |
| // |
| // After a build is started, the client can send heartbeat requests |
| // periodically. Buildbucket will mark the build as INFRA_FAILURE, if the |
| // timeout threshold reaches. It’s to fail a build more quickly, rather than |
| // waiting for `execution_timeout_secs` to expire. Some V1 users, which don't |
| // have real task backends, can utilize this feature. |
| // |
| // By default, the value is 0, which means no timeout threshold is applied. |
| // |
| // Note: this field only takes effect for TaskBackendLite builds. For builds |
| // with full-featured TaskBackend Implementation, `sync_backend_tasks` cron |
| // job fulfills the similar functionality. |
| HeartbeatTimeoutSecs uint32 `protobuf:"varint,39,opt,name=heartbeat_timeout_secs,json=heartbeatTimeoutSecs,proto3" json:"heartbeat_timeout_secs,omitempty"` |
| // Maximum build pending time. |
| // |
| // If the timeout is reached, the build is marked as INFRA_FAILURE status |
| // and both status_details.{timeout, resource_exhaustion} are set. |
| // |
| // NOTE: This corresponds with Build.scheduling_timeout and |
| // ScheduleBuildRequest.scheduling_timeout; The name `expiration_secs` and |
| // uint32 type are relics of the past. |
| ExpirationSecs uint32 `protobuf:"varint,20,opt,name=expiration_secs,json=expirationSecs,proto3" json:"expiration_secs,omitempty"` |
| // Amount of cleanup time after execution_timeout_secs. |
| // |
| // After being signaled according to execution_timeout_secs, the task will |
| // have this many seconds to clean up before being forcefully terminated. |
| // |
| // The signalling process is explained in the `deadline` section of |
| // https://chromium.googlesource.com/infra/luci/luci-py/+/HEAD/client/LUCI_CONTEXT.md. |
| // |
| // Defaults to 30s if unspecified or 0. |
| GracePeriod *durationpb.Duration `protobuf:"bytes,31,opt,name=grace_period,json=gracePeriod,proto3" json:"grace_period,omitempty"` |
| // If YES, will request that swarming wait until it sees at least one bot |
| // report a superset of the requested dimensions. |
| // |
| // If UNSET/NO (the default), swarming will immediately reject a build which |
| // specifies a dimension set that it's never seen before. |
| // |
| // Usually you want this to be UNSET/NO, unless you know that some external |
| // system is working to add bots to swarming which will match the requested |
| // dimensions within expiration_secs. Otherwise you'll have to wait for all of |
| // `expiration_secs` until swarming tells you "Sorry, nothing has dimension |
| // `os:MadeUpOS`". |
| WaitForCapacity Trinary `protobuf:"varint,29,opt,name=wait_for_capacity,json=waitForCapacity,proto3,enum=buildbucket.v2.Trinary" json:"wait_for_capacity,omitempty"` |
| // Caches that should be present on the bot. |
| Caches []*BuilderConfig_CacheEntry `protobuf:"bytes,9,rep,name=caches,proto3" json:"caches,omitempty"` |
| // If YES, generate monotonically increasing contiguous numbers for each |
| // build, unique within the builder. |
| // Note: this limits the build creation rate in this builder to 5 per second. |
| BuildNumbers Toggle `protobuf:"varint,16,opt,name=build_numbers,json=buildNumbers,proto3,enum=buildbucket.Toggle" json:"build_numbers,omitempty"` |
| // Email of a service account to run the build as or literal 'bot' string to |
| // use Swarming bot's account (if available). Passed directly to Swarming. |
| // Subject to Swarming's ACLs. |
| ServiceAccount string `protobuf:"bytes,12,opt,name=service_account,json=serviceAccount,proto3" json:"service_account,omitempty"` |
| // If YES, each builder will get extra dimension "builder:<builder name>" |
| // added. Default is UNSET. |
| // |
| // For example, this config |
| // |
| // builder { |
| // name: "linux-compiler" |
| // dimension: "builder:linux-compiler" |
| // } |
| // |
| // is equivalent to this: |
| // |
| // builders { |
| // name: "linux-compiler" |
| // auto_builder_dimension: YES |
| // } |
| // |
| // (see also http://docs.buildbot.net/0.8.9/manual/cfg-properties.html#interpolate) |
| // but are currently against complicating config with this. |
| AutoBuilderDimension Toggle `protobuf:"varint,17,opt,name=auto_builder_dimension,json=autoBuilderDimension,proto3,enum=buildbucket.Toggle" json:"auto_builder_dimension,omitempty"` |
| // DEPRECATED |
| // |
| // Set the "luci.non_production" experiment in the 'experiments' field below, |
| // instead. |
| // |
| // If YES, sets the "luci.non_production" experiment to 100% for |
| // builds on this builder. |
| // |
| // See the documentation on `experiments` for more details about the |
| // "luci.non_production" experiment. |
| Experimental Toggle `protobuf:"varint,18,opt,name=experimental,proto3,enum=buildbucket.Toggle" json:"experimental,omitempty"` |
| // DEPRECATED |
| // |
| // Set the "luci.buildbucket.canary_software" experiment in the 'experiments' |
| // field below, instead. |
| // |
| // Percentage of builds that should use a canary swarming task template. |
| // A value from 0 to 100. |
| // If omitted, a global server-defined default percentage is used. |
| TaskTemplateCanaryPercentage *wrapperspb.UInt32Value `protobuf:"bytes,22,opt,name=task_template_canary_percentage,json=taskTemplateCanaryPercentage,proto3" json:"task_template_canary_percentage,omitempty"` |
| // A mapping of experiment name to the percentage chance (0-100) that it will |
| // apply to builds generated from this builder. Experiments are simply strings |
| // which various parts of the stack (from LUCI services down to your build |
| // scripts) may react to in order to enable certain functionality. |
| // |
| // You may set any experiments you like, but experiments beginning with |
| // "luci." are reserved. Experiment names must conform to |
| // |
| // [a-z][a-z0-9_]*(\.[a-z][a-z0-9_]*)* |
| // |
| // Any experiments which are selected for a build show up in |
| // `Build.input.experiments`. |
| // |
| // Its recommended that you confine your experiments to smaller, more explicit |
| // targets. For example, prefer the experiment named |
| // "my_project.use_mysoftware_v2_crbug_999999" rather than "use_next_gen". |
| // |
| // It is NOT recommended to 'piggy-back' on top of existing experiment names |
| // for a different purpose. However if you want to, you can have your build |
| // treat the presence of ANY experiment as equivalent to "luci.non_production" |
| // being set for your build (i.e. "if any experiment is set, don't affect |
| // production"). This is ulimately up to you, however. |
| // |
| // # Well-known experiments |
| // |
| // Buildbucket has a number of 'global' experiments which are in various |
| // states of deployment at any given time. For the current state, see |
| // go/buildbucket-settings.cfg. |
| Experiments map[string]int32 `protobuf:"bytes,28,rep,name=experiments,proto3" json:"experiments,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` |
| // This field will set the default value of the "critical" field of |
| // all the builds of this builder. Please refer to build.proto for |
| // the meaning of this field. |
| // |
| // This value can be overridden by ScheduleBuildRequest.critical |
| Critical Trinary `protobuf:"varint,25,opt,name=critical,proto3,enum=buildbucket.v2.Trinary" json:"critical,omitempty"` |
| // Used to enable and configure ResultDB integration. |
| Resultdb *BuilderConfig_ResultDB `protobuf:"bytes,26,opt,name=resultdb,proto3" json:"resultdb,omitempty"` |
| // Description that helps users understand the purpose of the builder, in |
| // HTML. |
| DescriptionHtml string `protobuf:"bytes,30,opt,name=description_html,json=descriptionHtml,proto3" json:"description_html,omitempty"` |
| ShadowBuilderAdjustments *BuilderConfig_ShadowBuilderAdjustments `protobuf:"bytes,35,opt,name=shadow_builder_adjustments,json=shadowBuilderAdjustments,proto3" json:"shadow_builder_adjustments,omitempty"` |
| // This field will set the default value of the "retriable" field of |
| // all the builds of this builder. Please refer to build.proto for |
| // the meaning of this field. |
| // |
| // This value can be overridden by ScheduleBuildRequest.retriable |
| Retriable Trinary `protobuf:"varint,36,opt,name=retriable,proto3,enum=buildbucket.v2.Trinary" json:"retriable,omitempty"` |
| BuilderHealthMetricsLinks *BuilderConfig_BuilderHealthLinks `protobuf:"bytes,37,opt,name=builder_health_metrics_links,json=builderHealthMetricsLinks,proto3" json:"builder_health_metrics_links,omitempty"` |
| // The owning team's contact email. This team is responsible for fixing |
| // any builder health issues (see Builder.Metadata.HealthSpec). |
| // Will be validated as an email address, but nothing else. |
| // It will display on milo and could be public facing, so please don't put anything sensitive. |
| ContactTeamEmail string `protobuf:"bytes,38,opt,name=contact_team_email,json=contactTeamEmail,proto3" json:"contact_team_email,omitempty"` |
| // Custom metrics for the builds. |
| CustomMetricDefinitions []*CustomMetricDefinition `protobuf:"bytes,40,rep,name=custom_metric_definitions,json=customMetricDefinitions,proto3" json:"custom_metric_definitions,omitempty"` |
| } |
| |
| func (x *BuilderConfig) Reset() { |
| *x = BuilderConfig{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[1] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *BuilderConfig) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*BuilderConfig) ProtoMessage() {} |
| |
| func (x *BuilderConfig) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[1] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use BuilderConfig.ProtoReflect.Descriptor instead. |
| func (*BuilderConfig) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{1} |
| } |
| |
| func (x *BuilderConfig) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig) GetBackend() *BuilderConfig_Backend { |
| if x != nil { |
| return x.Backend |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetBackendAlt() *BuilderConfig_Backend { |
| if x != nil { |
| return x.BackendAlt |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetSwarmingHost() string { |
| if x != nil { |
| return x.SwarmingHost |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig) GetCategory() string { |
| if x != nil { |
| return x.Category |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig) GetSwarmingTags() []string { |
| if x != nil { |
| return x.SwarmingTags |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetDimensions() []string { |
| if x != nil { |
| return x.Dimensions |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetRecipe() *BuilderConfig_Recipe { |
| if x != nil { |
| return x.Recipe |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetExe() *Executable { |
| if x != nil { |
| return x.Exe |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetProperties() string { |
| if x != nil { |
| return x.Properties |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig) GetAllowedPropertyOverrides() []string { |
| if x != nil { |
| return x.AllowedPropertyOverrides |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetPriority() uint32 { |
| if x != nil { |
| return x.Priority |
| } |
| return 0 |
| } |
| |
| func (x *BuilderConfig) GetExecutionTimeoutSecs() uint32 { |
| if x != nil { |
| return x.ExecutionTimeoutSecs |
| } |
| return 0 |
| } |
| |
| func (x *BuilderConfig) GetHeartbeatTimeoutSecs() uint32 { |
| if x != nil { |
| return x.HeartbeatTimeoutSecs |
| } |
| return 0 |
| } |
| |
| func (x *BuilderConfig) GetExpirationSecs() uint32 { |
| if x != nil { |
| return x.ExpirationSecs |
| } |
| return 0 |
| } |
| |
| func (x *BuilderConfig) GetGracePeriod() *durationpb.Duration { |
| if x != nil { |
| return x.GracePeriod |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetWaitForCapacity() Trinary { |
| if x != nil { |
| return x.WaitForCapacity |
| } |
| return Trinary_UNSET |
| } |
| |
| func (x *BuilderConfig) GetCaches() []*BuilderConfig_CacheEntry { |
| if x != nil { |
| return x.Caches |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetBuildNumbers() Toggle { |
| if x != nil { |
| return x.BuildNumbers |
| } |
| return Toggle_UNSET |
| } |
| |
| func (x *BuilderConfig) GetServiceAccount() string { |
| if x != nil { |
| return x.ServiceAccount |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig) GetAutoBuilderDimension() Toggle { |
| if x != nil { |
| return x.AutoBuilderDimension |
| } |
| return Toggle_UNSET |
| } |
| |
| func (x *BuilderConfig) GetExperimental() Toggle { |
| if x != nil { |
| return x.Experimental |
| } |
| return Toggle_UNSET |
| } |
| |
| func (x *BuilderConfig) GetTaskTemplateCanaryPercentage() *wrapperspb.UInt32Value { |
| if x != nil { |
| return x.TaskTemplateCanaryPercentage |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetExperiments() map[string]int32 { |
| if x != nil { |
| return x.Experiments |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetCritical() Trinary { |
| if x != nil { |
| return x.Critical |
| } |
| return Trinary_UNSET |
| } |
| |
| func (x *BuilderConfig) GetResultdb() *BuilderConfig_ResultDB { |
| if x != nil { |
| return x.Resultdb |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetDescriptionHtml() string { |
| if x != nil { |
| return x.DescriptionHtml |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig) GetShadowBuilderAdjustments() *BuilderConfig_ShadowBuilderAdjustments { |
| if x != nil { |
| return x.ShadowBuilderAdjustments |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetRetriable() Trinary { |
| if x != nil { |
| return x.Retriable |
| } |
| return Trinary_UNSET |
| } |
| |
| func (x *BuilderConfig) GetBuilderHealthMetricsLinks() *BuilderConfig_BuilderHealthLinks { |
| if x != nil { |
| return x.BuilderHealthMetricsLinks |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig) GetContactTeamEmail() string { |
| if x != nil { |
| return x.ContactTeamEmail |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig) GetCustomMetricDefinitions() []*CustomMetricDefinition { |
| if x != nil { |
| return x.CustomMetricDefinitions |
| } |
| return nil |
| } |
| |
| // Configuration of buildbucket-swarming integration for one bucket. |
| type Swarming struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Configuration for each builder. |
| // Swarming tasks are created only for builds for builders that are not |
| // explicitly specified. |
| Builders []*BuilderConfig `protobuf:"bytes,4,rep,name=builders,proto3" json:"builders,omitempty"` |
| // DEPRECATED. Use builder_defaults.task_template_canary_percentage instead. |
| // Setting this field sets builder_defaults.task_template_canary_percentage. |
| TaskTemplateCanaryPercentage *wrapperspb.UInt32Value `protobuf:"bytes,5,opt,name=task_template_canary_percentage,json=taskTemplateCanaryPercentage,proto3" json:"task_template_canary_percentage,omitempty"` |
| } |
| |
| func (x *Swarming) Reset() { |
| *x = Swarming{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[2] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Swarming) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Swarming) ProtoMessage() {} |
| |
| func (x *Swarming) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[2] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Swarming.ProtoReflect.Descriptor instead. |
| func (*Swarming) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{2} |
| } |
| |
| func (x *Swarming) GetBuilders() []*BuilderConfig { |
| if x != nil { |
| return x.Builders |
| } |
| return nil |
| } |
| |
| func (x *Swarming) GetTaskTemplateCanaryPercentage() *wrapperspb.UInt32Value { |
| if x != nil { |
| return x.TaskTemplateCanaryPercentage |
| } |
| return nil |
| } |
| |
| // Defines one bucket in buildbucket.cfg |
| type Bucket struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Name of the bucket. Names are unique within one instance of buildbucket. |
| // If another project already uses this name, a config will be rejected. |
| // Name reservation is first-come first-serve. |
| // Regex: ^[a-z0-9\-_.]{1,100}$ |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| // Deprecated and ignored. Use Realms ACLs instead. |
| // |
| // Deprecated: Marked as deprecated in go.chromium.org/luci/buildbucket/proto/project_config.proto. |
| Acls []*Acl `protobuf:"bytes,2,rep,name=acls,proto3" json:"acls,omitempty"` |
| // Buildbucket-swarming integration. |
| // Mutually exclusive with builder_template. |
| Swarming *Swarming `protobuf:"bytes,3,opt,name=swarming,proto3" json:"swarming,omitempty"` |
| // Name of this bucket's shadow bucket for the led builds to use. |
| // |
| // If omitted, it implies that led builds of this bucket reuse this bucket. |
| // This is allowed, but note that it means the led builds will be in |
| // the same bucket/builder with the real builds, which means Any users with |
| // led access will be able to do ANYTHING that this bucket's bots and |
| // service_accounts can do. |
| // |
| // It could also be noisy, such as: |
| // - On the LUCI UI, led builds will show under the same builder as the real builds, |
| // - Led builds will share the same ResultDB config as the real builds, so |
| // their test results will be exported to the same BigQuery tables. |
| // - Subscribers of Buildbucket PubSub need to filter them out. |
| // |
| // Note: Don't set it if it's a dynamic bucket. Currently, a dynamic bucket is |
| // not allowed to have a shadow bucket. |
| Shadow string `protobuf:"bytes,5,opt,name=shadow,proto3" json:"shadow,omitempty"` |
| // Security constraints of the bucket. |
| // |
| // This field is used by CreateBuild on this bucket to constrain proposed |
| // Builds. If a build doesn't meet the constraints, it will be rejected. |
| // For shadow buckets, this is what prevents the bucket from allowing |
| // totally arbitrary Builds. |
| // |
| // `lucicfg` will automatically populate this for the "primary" bucket |
| // when using `luci.builder`. |
| // |
| // Buildbuceket.CreateBuild will validate the incoming requests to make sure |
| // they meet these constraints. |
| Constraints *Bucket_Constraints `protobuf:"bytes,6,opt,name=constraints,proto3" json:"constraints,omitempty"` |
| // Template of builders in a dynamic bucket. |
| // Mutually exclusive with swarming. |
| // |
| // If is not nil, the bucket is a dynamic LUCI bucket. |
| // If a bucket has both swarming and dynamic_builder_template as nil, |
| // the bucket is a legacy one. |
| DynamicBuilderTemplate *Bucket_DynamicBuilderTemplate `protobuf:"bytes,7,opt,name=dynamic_builder_template,json=dynamicBuilderTemplate,proto3" json:"dynamic_builder_template,omitempty"` |
| } |
| |
| func (x *Bucket) Reset() { |
| *x = Bucket{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[3] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Bucket) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Bucket) ProtoMessage() {} |
| |
| func (x *Bucket) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[3] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Bucket.ProtoReflect.Descriptor instead. |
| func (*Bucket) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{3} |
| } |
| |
| func (x *Bucket) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| // Deprecated: Marked as deprecated in go.chromium.org/luci/buildbucket/proto/project_config.proto. |
| func (x *Bucket) GetAcls() []*Acl { |
| if x != nil { |
| return x.Acls |
| } |
| return nil |
| } |
| |
| func (x *Bucket) GetSwarming() *Swarming { |
| if x != nil { |
| return x.Swarming |
| } |
| return nil |
| } |
| |
| func (x *Bucket) GetShadow() string { |
| if x != nil { |
| return x.Shadow |
| } |
| return "" |
| } |
| |
| func (x *Bucket) GetConstraints() *Bucket_Constraints { |
| if x != nil { |
| return x.Constraints |
| } |
| return nil |
| } |
| |
| func (x *Bucket) GetDynamicBuilderTemplate() *Bucket_DynamicBuilderTemplate { |
| if x != nil { |
| return x.DynamicBuilderTemplate |
| } |
| return nil |
| } |
| |
| // Schema of buildbucket.cfg file, a project config. |
| type BuildbucketCfg struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // All buckets defined for this project. |
| Buckets []*Bucket `protobuf:"bytes,1,rep,name=buckets,proto3" json:"buckets,omitempty"` |
| // Global configs are shared among all buckets and builders defined inside |
| // this project. |
| CommonConfig *BuildbucketCfg_CommonConfig `protobuf:"bytes,5,opt,name=common_config,json=commonConfig,proto3" json:"common_config,omitempty"` |
| } |
| |
| func (x *BuildbucketCfg) Reset() { |
| *x = BuildbucketCfg{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[4] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *BuildbucketCfg) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*BuildbucketCfg) ProtoMessage() {} |
| |
| func (x *BuildbucketCfg) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[4] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use BuildbucketCfg.ProtoReflect.Descriptor instead. |
| func (*BuildbucketCfg) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{4} |
| } |
| |
| func (x *BuildbucketCfg) GetBuckets() []*Bucket { |
| if x != nil { |
| return x.Buckets |
| } |
| return nil |
| } |
| |
| func (x *BuildbucketCfg) GetCommonConfig() *BuildbucketCfg_CommonConfig { |
| if x != nil { |
| return x.CommonConfig |
| } |
| return nil |
| } |
| |
| // CustomMetricDefinition contains information on what and how to populate |
| // reports to a custom metric. |
| type CustomMetricDefinition struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Name of custom metrics to report build events. |
| // |
| // It must be a pre-registered custom metric in buildbucket's service config. |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| // Predicates for the build metadata. A build has to meet all the predicates |
| // in order for its build events to be reported. |
| // |
| // This is a required field. |
| // |
| // If this is to report events of all builds under the builder, use |
| // the standard build metrics instead. |
| // |
| // If this is to report events of all builds under the builder, but |
| // with additional metric fields, copied from a build metadata, such as |
| // tags, then add a predicate for the metadata. |
| // e.g., `build.tags.get_value("key")!=""` |
| // |
| // Each item must be a boolean expression formatted in |
| // https://github.com/google/cel-spec. |
| // |
| // Example predicates that are supported currently: |
| // - a build field has non-default value, e.g. `has(build.tags)` means |
| // build.tags is not empty, |
| // - input/output properties has a key, e.g. `has(build.input.properties.pro_key)` |
| // - an input/output property with key "key" has "value": |
| // `string(build.output.properties.key) == "value"` |
| // - Note that because input/output properties are Struct, we have to cast |
| // the value to string. |
| // - experiments includes an experiment, e.g. |
| // `build.input.experiments.exists(e, e=="luci.buildbucket.exp")` |
| // - tags includes a tag with key "key", and there are two ways: |
| // - `build.tags.get_value("key")!=""` |
| // - `build.tags.exists(t, t.key=="key")` |
| Predicates []string `protobuf:"bytes,2,rep,name=predicates,proto3" json:"predicates,omitempty"` |
| // Describes how to generate values for the extra metric fields defined in |
| // CustomMetric.ExtraFields. |
| // |
| // In the map, |
| // - each key is a custom metric field name, configured in the reference metric. |
| // - each value is a string expression formatted in |
| // https://github.com/google/cel-spec to set the field with. |
| // |
| // Example of the string experssions that are currently supported: |
| // * value of any build string field, e.g. `build.summary_markdown` |
| // * value of an input/output property, e.g. `string(build.input.properties.key)` |
| // - Note that because input/output properties are Struct, we have to cast |
| // the value to string. |
| // |
| // * value of a tag, e.g. `build.tags.get_value("os")` |
| // |
| // Must include all the metric fields defined in the referenced metrics. |
| // May include additional fields that are not defined in the referenced |
| // metrics, but those fields will be ignored (this is helpful for adding |
| // new fields into existing custom metrics). |
| // |
| // Note that the possible values of each field should be bounded. |
| // So below fields should not be included: |
| // * build id |
| // * any timestamp (e.g. build's creation time) |
| // * any markdown strings (e.g. build's summary_markdown) |
| // * any log strings (e.g. build's output logs) |
| // * any PII |
| // * build's gitiles commit hash |
| // * build's gerrit change number |
| // * etc |
| ExtraFields map[string]string `protobuf:"bytes,3,rep,name=extra_fields,json=extraFields,proto3" json:"extra_fields,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
| } |
| |
| func (x *CustomMetricDefinition) Reset() { |
| *x = CustomMetricDefinition{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[5] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *CustomMetricDefinition) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*CustomMetricDefinition) ProtoMessage() {} |
| |
| func (x *CustomMetricDefinition) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[5] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use CustomMetricDefinition.ProtoReflect.Descriptor instead. |
| func (*CustomMetricDefinition) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{5} |
| } |
| |
| func (x *CustomMetricDefinition) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| func (x *CustomMetricDefinition) GetPredicates() []string { |
| if x != nil { |
| return x.Predicates |
| } |
| return nil |
| } |
| |
| func (x *CustomMetricDefinition) GetExtraFields() map[string]string { |
| if x != nil { |
| return x.ExtraFields |
| } |
| return nil |
| } |
| |
| // Describes a cache directory persisted on a bot. |
| // Prerequisite reading in BuildInfra.Swarming.CacheEntry message in |
| // build.proto. |
| // |
| // To share a builder cache among multiple builders, it can be overridden: |
| // |
| // builders { |
| // name: "a" |
| // caches { |
| // path: "builder" |
| // name: "my_shared_cache" |
| // } |
| // } |
| // builders { |
| // name: "b" |
| // caches { |
| // path: "builder" |
| // name: "my_shared_cache" |
| // } |
| // } |
| // |
| // Builders "a" and "b" share their builder cache. If an "a" build ran on a |
| // bot and left some files in the builder cache and then a "b" build runs on |
| // the same bot, the same files will be available in the builder cache. |
| type BuilderConfig_CacheEntry struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Identifier of the cache. Length is limited to 128. |
| // Defaults to path. |
| // See also BuildInfra.Swarming.CacheEntry.name in build.proto. |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| // Relative path where the cache in mapped into. Required. |
| // See also BuildInfra.Swarming.CacheEntry.path in build.proto. |
| Path string `protobuf:"bytes,2,opt,name=path,proto3" json:"path,omitempty"` |
| // Number of seconds to wait for a bot with a warm cache to pick up the |
| // task, before falling back to a bot with a cold (non-existent) cache. |
| // See also BuildInfra.Swarming.CacheEntry.wait_for_warm_cache in build.proto. |
| // The value must be multiples of 60 seconds. |
| WaitForWarmCacheSecs int32 `protobuf:"varint,3,opt,name=wait_for_warm_cache_secs,json=waitForWarmCacheSecs,proto3" json:"wait_for_warm_cache_secs,omitempty"` |
| // Environment variable with this name will be set to the path to the cache |
| // directory. |
| EnvVar string `protobuf:"bytes,4,opt,name=env_var,json=envVar,proto3" json:"env_var,omitempty"` |
| } |
| |
| func (x *BuilderConfig_CacheEntry) Reset() { |
| *x = BuilderConfig_CacheEntry{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[6] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *BuilderConfig_CacheEntry) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*BuilderConfig_CacheEntry) ProtoMessage() {} |
| |
| func (x *BuilderConfig_CacheEntry) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[6] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use BuilderConfig_CacheEntry.ProtoReflect.Descriptor instead. |
| func (*BuilderConfig_CacheEntry) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{1, 0} |
| } |
| |
| func (x *BuilderConfig_CacheEntry) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig_CacheEntry) GetPath() string { |
| if x != nil { |
| return x.Path |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig_CacheEntry) GetWaitForWarmCacheSecs() int32 { |
| if x != nil { |
| return x.WaitForWarmCacheSecs |
| } |
| return 0 |
| } |
| |
| func (x *BuilderConfig_CacheEntry) GetEnvVar() string { |
| if x != nil { |
| return x.EnvVar |
| } |
| return "" |
| } |
| |
| // DEPRECATED. See BuilderConfig.executable and BuilderConfig.properties |
| // |
| // To specify a recipe name, pass "$recipe_engine" property which is a JSON |
| // object having "recipe" property. |
| type BuilderConfig_Recipe struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Name of the recipe to run. |
| Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` |
| // The CIPD package to fetch the recipes from. |
| // |
| // Typically the package will look like: |
| // |
| // infra/recipe_bundles/chromium.googlesource.com/chromium/tools/build |
| // |
| // Recipes bundled from internal repositories are typically under |
| // `infra_internal/recipe_bundles/...`. |
| // |
| // But if you're building your own recipe bundles, they could be located |
| // elsewhere. |
| CipdPackage string `protobuf:"bytes,6,opt,name=cipd_package,json=cipdPackage,proto3" json:"cipd_package,omitempty"` |
| // The CIPD version to fetch. This can be a lower-cased git ref (like |
| // `refs/heads/main` or `head`), or it can be a cipd tag (like |
| // `git_revision:dead...beef`). |
| // |
| // The default is `head`, which corresponds to the git repo's HEAD ref. This |
| // is typically (but not always) a symbolic ref for `refs/heads/master`. |
| CipdVersion string `protobuf:"bytes,5,opt,name=cipd_version,json=cipdVersion,proto3" json:"cipd_version,omitempty"` |
| // Colon-separated build properties to set. |
| // Ignored if BuilderConfig.properties is set. |
| // |
| // Use this field for string properties and use properties_j for other |
| // types. |
| Properties []string `protobuf:"bytes,3,rep,name=properties,proto3" json:"properties,omitempty"` |
| // Same as properties, but the value must valid JSON. For example |
| // |
| // properties_j: "a:1" |
| // |
| // means property a is a number 1, not string "1". |
| // |
| // If null, it means no property must be defined. In particular, it removes |
| // a default value for the property, if any. |
| // |
| // Fields properties and properties_j can be used together, but cannot both |
| // specify values for same property. |
| PropertiesJ []string `protobuf:"bytes,4,rep,name=properties_j,json=propertiesJ,proto3" json:"properties_j,omitempty"` |
| } |
| |
| func (x *BuilderConfig_Recipe) Reset() { |
| *x = BuilderConfig_Recipe{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[7] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *BuilderConfig_Recipe) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*BuilderConfig_Recipe) ProtoMessage() {} |
| |
| func (x *BuilderConfig_Recipe) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[7] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use BuilderConfig_Recipe.ProtoReflect.Descriptor instead. |
| func (*BuilderConfig_Recipe) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{1, 1} |
| } |
| |
| func (x *BuilderConfig_Recipe) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig_Recipe) GetCipdPackage() string { |
| if x != nil { |
| return x.CipdPackage |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig_Recipe) GetCipdVersion() string { |
| if x != nil { |
| return x.CipdVersion |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig_Recipe) GetProperties() []string { |
| if x != nil { |
| return x.Properties |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig_Recipe) GetPropertiesJ() []string { |
| if x != nil { |
| return x.PropertiesJ |
| } |
| return nil |
| } |
| |
| // ResultDB-specific information for a builder. |
| type BuilderConfig_ResultDB struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Whether to enable ResultDB:Buildbucket integration. |
| Enable bool `protobuf:"varint,1,opt,name=enable,proto3" json:"enable,omitempty"` |
| // Configuration for exporting test results to BigQuery. |
| // This can have multiple values to export results to multiple BigQuery |
| // tables, or to support multiple test result predicates. |
| BqExports []*v1.BigQueryExport `protobuf:"bytes,2,rep,name=bq_exports,json=bqExports,proto3" json:"bq_exports,omitempty"` |
| // Deprecated. Any values specified here are ignored. |
| HistoryOptions *v1.HistoryOptions `protobuf:"bytes,3,opt,name=history_options,json=historyOptions,proto3" json:"history_options,omitempty"` |
| } |
| |
| func (x *BuilderConfig_ResultDB) Reset() { |
| *x = BuilderConfig_ResultDB{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[8] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *BuilderConfig_ResultDB) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*BuilderConfig_ResultDB) ProtoMessage() {} |
| |
| func (x *BuilderConfig_ResultDB) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[8] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use BuilderConfig_ResultDB.ProtoReflect.Descriptor instead. |
| func (*BuilderConfig_ResultDB) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{1, 2} |
| } |
| |
| func (x *BuilderConfig_ResultDB) GetEnable() bool { |
| if x != nil { |
| return x.Enable |
| } |
| return false |
| } |
| |
| func (x *BuilderConfig_ResultDB) GetBqExports() []*v1.BigQueryExport { |
| if x != nil { |
| return x.BqExports |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig_ResultDB) GetHistoryOptions() *v1.HistoryOptions { |
| if x != nil { |
| return x.HistoryOptions |
| } |
| return nil |
| } |
| |
| // Buildbucket backend-specific information for a builder. |
| type BuilderConfig_Backend struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // URI for this backend, e.g. "swarming://chromium-swarm". |
| Target string `protobuf:"bytes,1,opt,name=target,proto3" json:"target,omitempty"` |
| // A string interpreted as JSON encapsulating configuration for this |
| // backend. |
| // TODO(crbug.com/1042991): Move priority, wait_for_capacity, etc. here. |
| ConfigJson string `protobuf:"bytes,2,opt,name=config_json,json=configJson,proto3" json:"config_json,omitempty"` |
| } |
| |
| func (x *BuilderConfig_Backend) Reset() { |
| *x = BuilderConfig_Backend{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[9] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *BuilderConfig_Backend) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*BuilderConfig_Backend) ProtoMessage() {} |
| |
| func (x *BuilderConfig_Backend) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[9] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use BuilderConfig_Backend.ProtoReflect.Descriptor instead. |
| func (*BuilderConfig_Backend) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{1, 3} |
| } |
| |
| func (x *BuilderConfig_Backend) GetTarget() string { |
| if x != nil { |
| return x.Target |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig_Backend) GetConfigJson() string { |
| if x != nil { |
| return x.ConfigJson |
| } |
| return "" |
| } |
| |
| // Configurations that need to be replaced when running a led build for this |
| // Builder. |
| // |
| // Note: Builders in a dynamic bucket cannot have ShadowBuilderAdjustments. |
| type BuilderConfig_ShadowBuilderAdjustments struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| ServiceAccount string `protobuf:"bytes,1,opt,name=service_account,json=serviceAccount,proto3" json:"service_account,omitempty"` |
| Pool string `protobuf:"bytes,2,opt,name=pool,proto3" json:"pool,omitempty"` |
| // A JSON object contains properties to override Build.input.properties |
| // when creating the led build. |
| // Same as ScheduleBuild, the top-level properties here will override the |
| // ones in builder config, instead of deep merge. |
| Properties string `protobuf:"bytes,3,opt,name=properties,proto3" json:"properties,omitempty"` |
| // Overrides default dimensions defined by builder config. |
| // Same as ScheduleBuild, |
| // * dimensions with empty value will be excluded. |
| // * same key dimensions with both empty and non-empty values are disallowed. |
| // |
| // Note: for historical reason, pool can be adjusted individually. |
| // If pool is adjusted individually, the same change should be reflected in |
| // dimensions, and vice versa. |
| Dimensions []string `protobuf:"bytes,4,rep,name=dimensions,proto3" json:"dimensions,omitempty"` |
| } |
| |
| func (x *BuilderConfig_ShadowBuilderAdjustments) Reset() { |
| *x = BuilderConfig_ShadowBuilderAdjustments{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[11] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *BuilderConfig_ShadowBuilderAdjustments) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*BuilderConfig_ShadowBuilderAdjustments) ProtoMessage() {} |
| |
| func (x *BuilderConfig_ShadowBuilderAdjustments) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[11] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use BuilderConfig_ShadowBuilderAdjustments.ProtoReflect.Descriptor instead. |
| func (*BuilderConfig_ShadowBuilderAdjustments) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{1, 5} |
| } |
| |
| func (x *BuilderConfig_ShadowBuilderAdjustments) GetServiceAccount() string { |
| if x != nil { |
| return x.ServiceAccount |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig_ShadowBuilderAdjustments) GetPool() string { |
| if x != nil { |
| return x.Pool |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig_ShadowBuilderAdjustments) GetProperties() string { |
| if x != nil { |
| return x.Properties |
| } |
| return "" |
| } |
| |
| func (x *BuilderConfig_ShadowBuilderAdjustments) GetDimensions() []string { |
| if x != nil { |
| return x.Dimensions |
| } |
| return nil |
| } |
| |
| type BuilderConfig_BuilderHealthLinks struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Mapping of username domain to clickable link for documentation on the health |
| // metrics and how they were calculated. |
| // |
| // The empty domain value will be used as a fallback for anonymous users, or |
| // if the user identity domain doesn't have a matching entry in this map. |
| // |
| // If linking an internal google link (say g3doc), use a go-link instead of a |
| // raw url. |
| DocLinks map[string]string `protobuf:"bytes,1,rep,name=doc_links,json=docLinks,proto3" json:"doc_links,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
| // Mapping of username domain to clickable link for data visualization or |
| // dashboards for the health metrics. |
| // |
| // Similar to doc_links, the empty domain value will be used as a fallback for |
| // anonymous users, or if the user identity domain doesn't have a matching |
| // entry in this map. |
| // |
| // If linking an internal google link (say g3doc), use a go-link instead of a |
| // raw url. |
| DataLinks map[string]string `protobuf:"bytes,2,rep,name=data_links,json=dataLinks,proto3" json:"data_links,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` |
| } |
| |
| func (x *BuilderConfig_BuilderHealthLinks) Reset() { |
| *x = BuilderConfig_BuilderHealthLinks{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[12] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *BuilderConfig_BuilderHealthLinks) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*BuilderConfig_BuilderHealthLinks) ProtoMessage() {} |
| |
| func (x *BuilderConfig_BuilderHealthLinks) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[12] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use BuilderConfig_BuilderHealthLinks.ProtoReflect.Descriptor instead. |
| func (*BuilderConfig_BuilderHealthLinks) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{1, 6} |
| } |
| |
| func (x *BuilderConfig_BuilderHealthLinks) GetDocLinks() map[string]string { |
| if x != nil { |
| return x.DocLinks |
| } |
| return nil |
| } |
| |
| func (x *BuilderConfig_BuilderHealthLinks) GetDataLinks() map[string]string { |
| if x != nil { |
| return x.DataLinks |
| } |
| return nil |
| } |
| |
| // Constraints for a bucket. |
| // |
| // Buildbucket.CreateBuild will validate the incoming requests to make sure |
| // they meet these constraints. |
| type Bucket_Constraints struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Constraints allowed pools. |
| // Builds in this bucket must have a "pool" dimension which matches an entry in this list. |
| Pools []string `protobuf:"bytes,1,rep,name=pools,proto3" json:"pools,omitempty"` |
| // Only service accounts in this list are allowed. |
| ServiceAccounts []string `protobuf:"bytes,2,rep,name=service_accounts,json=serviceAccounts,proto3" json:"service_accounts,omitempty"` |
| } |
| |
| func (x *Bucket_Constraints) Reset() { |
| *x = Bucket_Constraints{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[15] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Bucket_Constraints) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Bucket_Constraints) ProtoMessage() {} |
| |
| func (x *Bucket_Constraints) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[15] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Bucket_Constraints.ProtoReflect.Descriptor instead. |
| func (*Bucket_Constraints) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{3, 0} |
| } |
| |
| func (x *Bucket_Constraints) GetPools() []string { |
| if x != nil { |
| return x.Pools |
| } |
| return nil |
| } |
| |
| func (x *Bucket_Constraints) GetServiceAccounts() []string { |
| if x != nil { |
| return x.ServiceAccounts |
| } |
| return nil |
| } |
| |
| // Template of builders in a dynamic bucket. |
| type Bucket_DynamicBuilderTemplate struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // The Builder template which is shared among all builders in this dynamic |
| // bucket. |
| Template *BuilderConfig `protobuf:"bytes,1,opt,name=template,proto3" json:"template,omitempty"` |
| } |
| |
| func (x *Bucket_DynamicBuilderTemplate) Reset() { |
| *x = Bucket_DynamicBuilderTemplate{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[16] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *Bucket_DynamicBuilderTemplate) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*Bucket_DynamicBuilderTemplate) ProtoMessage() {} |
| |
| func (x *Bucket_DynamicBuilderTemplate) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[16] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use Bucket_DynamicBuilderTemplate.ProtoReflect.Descriptor instead. |
| func (*Bucket_DynamicBuilderTemplate) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{3, 1} |
| } |
| |
| func (x *Bucket_DynamicBuilderTemplate) GetTemplate() *BuilderConfig { |
| if x != nil { |
| return x.Template |
| } |
| return nil |
| } |
| |
| type BuildbucketCfg_Topic struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // Topic name format should be like |
| // "projects/<projid>/topics/<topicid>" and conforms to the guideline: |
| // https://cloud.google.com/pubsub/docs/admin#resource_names. |
| Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` |
| // The compression method that `build_large_fields` uses in pubsub message |
| // data. By default, it's ZLIB as this is the most common one and is the |
| // built-in lib in many programming languages. |
| Compression Compression `protobuf:"varint,2,opt,name=compression,proto3,enum=buildbucket.v2.Compression" json:"compression,omitempty"` |
| } |
| |
| func (x *BuildbucketCfg_Topic) Reset() { |
| *x = BuildbucketCfg_Topic{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[17] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *BuildbucketCfg_Topic) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*BuildbucketCfg_Topic) ProtoMessage() {} |
| |
| func (x *BuildbucketCfg_Topic) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[17] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use BuildbucketCfg_Topic.ProtoReflect.Descriptor instead. |
| func (*BuildbucketCfg_Topic) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{4, 0} |
| } |
| |
| func (x *BuildbucketCfg_Topic) GetName() string { |
| if x != nil { |
| return x.Name |
| } |
| return "" |
| } |
| |
| func (x *BuildbucketCfg_Topic) GetCompression() Compression { |
| if x != nil { |
| return x.Compression |
| } |
| return Compression_ZLIB |
| } |
| |
| type BuildbucketCfg_CommonConfig struct { |
| state protoimpl.MessageState |
| sizeCache protoimpl.SizeCache |
| unknownFields protoimpl.UnknownFields |
| |
| // A list of PubSub topics that Buildbucket will publish notifications for |
| // build status changes in this project. |
| // The message data schema can be found in message `BuildsV2PubSub` in |
| // https://chromium.googlesource.com/infra/luci/luci-go/+/main/buildbucket/proto/notification.proto |
| // Attributes on the pubsub messages: |
| // - "project" |
| // - "bucket" |
| // - "builder" |
| // - "is_completed" (The value is either "true" or "false" in string.) |
| // |
| // Note: `pubsub.topics.publish` permission must be granted to the |
| // corresponding luci-project-scoped accounts in the cloud project(s) hosting |
| // the topics. |
| BuildsNotificationTopics []*BuildbucketCfg_Topic `protobuf:"bytes,1,rep,name=builds_notification_topics,json=buildsNotificationTopics,proto3" json:"builds_notification_topics,omitempty"` |
| } |
| |
| func (x *BuildbucketCfg_CommonConfig) Reset() { |
| *x = BuildbucketCfg_CommonConfig{} |
| if protoimpl.UnsafeEnabled { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[18] |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| ms.StoreMessageInfo(mi) |
| } |
| } |
| |
| func (x *BuildbucketCfg_CommonConfig) String() string { |
| return protoimpl.X.MessageStringOf(x) |
| } |
| |
| func (*BuildbucketCfg_CommonConfig) ProtoMessage() {} |
| |
| func (x *BuildbucketCfg_CommonConfig) ProtoReflect() protoreflect.Message { |
| mi := &file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[18] |
| if protoimpl.UnsafeEnabled && x != nil { |
| ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) |
| if ms.LoadMessageInfo() == nil { |
| ms.StoreMessageInfo(mi) |
| } |
| return ms |
| } |
| return mi.MessageOf(x) |
| } |
| |
| // Deprecated: Use BuildbucketCfg_CommonConfig.ProtoReflect.Descriptor instead. |
| func (*BuildbucketCfg_CommonConfig) Descriptor() ([]byte, []int) { |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP(), []int{4, 1} |
| } |
| |
| func (x *BuildbucketCfg_CommonConfig) GetBuildsNotificationTopics() []*BuildbucketCfg_Topic { |
| if x != nil { |
| return x.BuildsNotificationTopics |
| } |
| return nil |
| } |
| |
| var File_go_chromium_org_luci_buildbucket_proto_project_config_proto protoreflect.FileDescriptor |
| |
| var file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDesc = []byte{ |
| 0x0a, 0x3b, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, |
| 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, |
| 0x65, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, |
| 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0b, 0x62, |
| 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, |
| 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, |
| 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, |
| 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x77, 0x72, 0x61, 0x70, |
| 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x33, 0x67, 0x6f, 0x2e, 0x63, |
| 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, |
| 0x2f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2f, 0x70, 0x72, 0x6f, |
| 0x74, 0x6f, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, |
| 0x2f, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, |
| 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x70, 0x72, 0x6f, |
| 0x74, 0x6f, 0x2f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, |
| 0x1a, 0x37, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, |
| 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2f, |
| 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x76, 0x31, 0x2f, 0x69, 0x6e, 0x76, 0x6f, 0x63, 0x61, 0x74, |
| 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9d, 0x01, 0x0a, 0x03, 0x41, 0x63, |
| 0x6c, 0x12, 0x2d, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, |
| 0x15, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x41, 0x63, |
| 0x6c, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, |
| 0x12, 0x18, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, |
| 0x02, 0x18, 0x01, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1e, 0x0a, 0x08, 0x69, 0x64, |
| 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, |
| 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x22, 0x2d, 0x0a, 0x04, 0x52, 0x6f, |
| 0x6c, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x41, 0x44, 0x45, 0x52, 0x10, 0x00, 0x12, 0x0d, |
| 0x0a, 0x09, 0x53, 0x43, 0x48, 0x45, 0x44, 0x55, 0x4c, 0x45, 0x52, 0x10, 0x01, 0x12, 0x0a, 0x0a, |
| 0x06, 0x57, 0x52, 0x49, 0x54, 0x45, 0x52, 0x10, 0x02, 0x22, 0xd5, 0x17, 0x0a, 0x0d, 0x42, 0x75, |
| 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x6e, |
| 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, |
| 0x3c, 0x0a, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, |
| 0x32, 0x22, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, |
| 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x61, 0x63, |
| 0x6b, 0x65, 0x6e, 0x64, 0x52, 0x07, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x12, 0x43, 0x0a, |
| 0x0b, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x5f, 0x61, 0x6c, 0x74, 0x18, 0x21, 0x20, 0x01, |
| 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, |
| 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, |
| 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x52, 0x0a, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x41, |
| 0x6c, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x77, 0x61, 0x72, 0x6d, 0x69, 0x6e, 0x67, 0x5f, 0x68, |
| 0x6f, 0x73, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x77, 0x61, 0x72, 0x6d, |
| 0x69, 0x6e, 0x67, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, |
| 0x6f, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, |
| 0x6f, 0x72, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x77, 0x61, 0x72, 0x6d, 0x69, 0x6e, 0x67, 0x5f, |
| 0x74, 0x61, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x77, 0x61, 0x72, |
| 0x6d, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x67, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x69, 0x6d, 0x65, |
| 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x69, |
| 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x39, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x69, |
| 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, |
| 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, 0x6f, |
| 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, 0x52, 0x06, 0x72, 0x65, 0x63, |
| 0x69, 0x70, 0x65, 0x12, 0x2c, 0x0a, 0x03, 0x65, 0x78, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, |
| 0x32, 0x1a, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x76, |
| 0x32, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x03, 0x65, 0x78, |
| 0x65, 0x12, 0x24, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, |
| 0x18, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xa8, 0xfe, 0x23, 0x01, 0x52, 0x0a, 0x70, 0x72, 0x6f, |
| 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x3c, 0x0a, 0x1a, 0x61, 0x6c, 0x6c, 0x6f, 0x77, |
| 0x65, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x5f, 0x6f, 0x76, 0x65, 0x72, |
| 0x72, 0x69, 0x64, 0x65, 0x73, 0x18, 0x22, 0x20, 0x03, 0x28, 0x09, 0x52, 0x18, 0x61, 0x6c, 0x6c, |
| 0x6f, 0x77, 0x65, 0x64, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x4f, 0x76, 0x65, 0x72, |
| 0x72, 0x69, 0x64, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, |
| 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, |
| 0x79, 0x12, 0x34, 0x0a, 0x16, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, |
| 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, |
| 0x0d, 0x52, 0x14, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, |
| 0x6f, 0x75, 0x74, 0x53, 0x65, 0x63, 0x73, 0x12, 0x34, 0x0a, 0x16, 0x68, 0x65, 0x61, 0x72, 0x74, |
| 0x62, 0x65, 0x61, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x5f, 0x73, 0x65, 0x63, |
| 0x73, 0x18, 0x27, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x68, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, |
| 0x61, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x53, 0x65, 0x63, 0x73, 0x12, 0x27, 0x0a, |
| 0x0f, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x73, |
| 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, |
| 0x6f, 0x6e, 0x53, 0x65, 0x63, 0x73, 0x12, 0x3c, 0x0a, 0x0c, 0x67, 0x72, 0x61, 0x63, 0x65, 0x5f, |
| 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, |
| 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, |
| 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x67, 0x72, 0x61, 0x63, 0x65, 0x50, 0x65, |
| 0x72, 0x69, 0x6f, 0x64, 0x12, 0x43, 0x0a, 0x11, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x66, 0x6f, 0x72, |
| 0x5f, 0x63, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0e, 0x32, |
| 0x17, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x76, 0x32, |
| 0x2e, 0x54, 0x72, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x52, 0x0f, 0x77, 0x61, 0x69, 0x74, 0x46, 0x6f, |
| 0x72, 0x43, 0x61, 0x70, 0x61, 0x63, 0x69, 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x06, 0x63, 0x61, 0x63, |
| 0x68, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x62, 0x75, 0x69, 0x6c, |
| 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, |
| 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, |
| 0x52, 0x06, 0x63, 0x61, 0x63, 0x68, 0x65, 0x73, 0x12, 0x38, 0x0a, 0x0d, 0x62, 0x75, 0x69, 0x6c, |
| 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0e, 0x32, |
| 0x13, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x54, 0x6f, |
| 0x67, 0x67, 0x6c, 0x65, 0x52, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, |
| 0x72, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, |
| 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x72, |
| 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x49, 0x0a, 0x16, 0x61, |
| 0x75, 0x74, 0x6f, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x5f, 0x64, 0x69, 0x6d, 0x65, |
| 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x62, 0x75, |
| 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x54, 0x6f, 0x67, 0x67, 0x6c, 0x65, |
| 0x52, 0x14, 0x61, 0x75, 0x74, 0x6f, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x44, 0x69, 0x6d, |
| 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x0c, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, |
| 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x62, |
| 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x54, 0x6f, 0x67, 0x67, 0x6c, |
| 0x65, 0x52, 0x0c, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x12, |
| 0x63, 0x0a, 0x1f, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, |
| 0x5f, 0x63, 0x61, 0x6e, 0x61, 0x72, 0x79, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, |
| 0x67, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, |
| 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, |
| 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x1c, 0x74, 0x61, 0x73, 0x6b, 0x54, 0x65, 0x6d, 0x70, |
| 0x6c, 0x61, 0x74, 0x65, 0x43, 0x61, 0x6e, 0x61, 0x72, 0x79, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, |
| 0x74, 0x61, 0x67, 0x65, 0x12, 0x4d, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, |
| 0x6e, 0x74, 0x73, 0x18, 0x1c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x62, 0x75, 0x69, 0x6c, |
| 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, |
| 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, |
| 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x65, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, |
| 0x6e, 0x74, 0x73, 0x12, 0x33, 0x0a, 0x08, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x18, |
| 0x19, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, |
| 0x6b, 0x65, 0x74, 0x2e, 0x76, 0x32, 0x2e, 0x54, 0x72, 0x69, 0x6e, 0x61, 0x72, 0x79, 0x52, 0x08, |
| 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x12, 0x3f, 0x0a, 0x08, 0x72, 0x65, 0x73, 0x75, |
| 0x6c, 0x74, 0x64, 0x62, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x62, 0x75, 0x69, |
| 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, |
| 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x44, 0x42, 0x52, |
| 0x08, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x12, 0x29, 0x0a, 0x10, 0x64, 0x65, 0x73, |
| 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x68, 0x74, 0x6d, 0x6c, 0x18, 0x1e, 0x20, |
| 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, |
| 0x48, 0x74, 0x6d, 0x6c, 0x12, 0x71, 0x0a, 0x1a, 0x73, 0x68, 0x61, 0x64, 0x6f, 0x77, 0x5f, 0x62, |
| 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, |
| 0x74, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, |
| 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, 0x6f, |
| 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x68, 0x61, 0x64, 0x6f, 0x77, 0x42, 0x75, 0x69, 0x6c, 0x64, |
| 0x65, 0x72, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x18, 0x73, |
| 0x68, 0x61, 0x64, 0x6f, 0x77, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x41, 0x64, 0x6a, 0x75, |
| 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x35, 0x0a, 0x09, 0x72, 0x65, 0x74, 0x72, 0x69, |
| 0x61, 0x62, 0x6c, 0x65, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x62, 0x75, 0x69, |
| 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x76, 0x32, 0x2e, 0x54, 0x72, 0x69, 0x6e, |
| 0x61, 0x72, 0x79, 0x52, 0x09, 0x72, 0x65, 0x74, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x6e, |
| 0x0a, 0x1c, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x5f, 0x68, 0x65, 0x61, 0x6c, 0x74, 0x68, |
| 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x25, |
| 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, |
| 0x65, 0x74, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, |
| 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x4c, 0x69, |
| 0x6e, 0x6b, 0x73, 0x52, 0x19, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x48, 0x65, 0x61, 0x6c, |
| 0x74, 0x68, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x2c, |
| 0x0a, 0x12, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x5f, 0x74, 0x65, 0x61, 0x6d, 0x5f, 0x65, |
| 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x26, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x74, |
| 0x61, 0x63, 0x74, 0x54, 0x65, 0x61, 0x6d, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x5f, 0x0a, 0x19, |
| 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x64, 0x65, |
| 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x28, 0x20, 0x03, 0x28, 0x0b, 0x32, |
| 0x23, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x43, 0x75, |
| 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, |
| 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x17, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x65, 0x74, 0x72, |
| 0x69, 0x63, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x85, 0x01, |
| 0x0a, 0x0a, 0x43, 0x61, 0x63, 0x68, 0x65, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, |
| 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, |
| 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, |
| 0x70, 0x61, 0x74, 0x68, 0x12, 0x36, 0x0a, 0x18, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x66, 0x6f, 0x72, |
| 0x5f, 0x77, 0x61, 0x72, 0x6d, 0x5f, 0x63, 0x61, 0x63, 0x68, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x73, |
| 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x77, 0x61, 0x69, 0x74, 0x46, 0x6f, 0x72, 0x57, |
| 0x61, 0x72, 0x6d, 0x43, 0x61, 0x63, 0x68, 0x65, 0x53, 0x65, 0x63, 0x73, 0x12, 0x17, 0x0a, 0x07, |
| 0x65, 0x6e, 0x76, 0x5f, 0x76, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x65, |
| 0x6e, 0x76, 0x56, 0x61, 0x72, 0x1a, 0xab, 0x01, 0x0a, 0x06, 0x52, 0x65, 0x63, 0x69, 0x70, 0x65, |
| 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, |
| 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x69, 0x70, 0x64, 0x5f, 0x70, 0x61, 0x63, |
| 0x6b, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x69, 0x70, 0x64, |
| 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x69, 0x70, 0x64, 0x5f, |
| 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, |
| 0x69, 0x70, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, |
| 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, |
| 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x72, |
| 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x5f, 0x6a, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, |
| 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x4a, 0x4a, 0x04, 0x08, |
| 0x01, 0x10, 0x02, 0x1a, 0xae, 0x01, 0x0a, 0x08, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x44, 0x42, |
| 0x12, 0x16, 0x0a, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, |
| 0x52, 0x06, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x3f, 0x0a, 0x0a, 0x62, 0x71, 0x5f, 0x65, |
| 0x78, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6c, |
| 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, |
| 0x42, 0x69, 0x67, 0x51, 0x75, 0x65, 0x72, 0x79, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x09, |
| 0x62, 0x71, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x49, 0x0a, 0x0f, 0x68, 0x69, 0x73, |
| 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, |
| 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, |
| 0x64, 0x62, 0x2e, 0x76, 0x31, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4f, 0x70, 0x74, |
| 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0e, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4f, 0x70, 0x74, |
| 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x48, 0x0a, 0x07, 0x42, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x12, |
| 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, |
| 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x25, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, |
| 0x67, 0x5f, 0x6a, 0x73, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xa8, 0xfe, |
| 0x23, 0x01, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4a, 0x73, 0x6f, 0x6e, 0x1a, 0x3e, |
| 0x0a, 0x10, 0x45, 0x78, 0x70, 0x65, 0x72, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x45, 0x6e, 0x74, |
| 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, |
| 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, |
| 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x9d, |
| 0x01, 0x0a, 0x18, 0x53, 0x68, 0x61, 0x64, 0x6f, 0x77, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, |
| 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x73, |
| 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, |
| 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, |
| 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x18, 0x02, 0x20, 0x01, |
| 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x6f, 0x6c, 0x12, 0x24, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x70, |
| 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x04, 0xa8, 0xfe, |
| 0x23, 0x01, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x1e, |
| 0x0a, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, |
| 0x28, 0x09, 0x52, 0x0a, 0x64, 0x69, 0x6d, 0x65, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xc6, |
| 0x02, 0x0a, 0x12, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, |
| 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x58, 0x0a, 0x09, 0x64, 0x6f, 0x63, 0x5f, 0x6c, 0x69, 0x6e, |
| 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, |
| 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, 0x6f, |
| 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x48, 0x65, 0x61, 0x6c, |
| 0x74, 0x68, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x2e, 0x44, 0x6f, 0x63, 0x4c, 0x69, 0x6e, 0x6b, 0x73, |
| 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x64, 0x6f, 0x63, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, |
| 0x5b, 0x0a, 0x0a, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x02, 0x20, |
| 0x03, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, |
| 0x74, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, |
| 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x48, 0x65, 0x61, 0x6c, 0x74, 0x68, 0x4c, 0x69, 0x6e, |
| 0x6b, 0x73, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x45, 0x6e, 0x74, 0x72, |
| 0x79, 0x52, 0x09, 0x64, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x1a, 0x3b, 0x0a, 0x0d, |
| 0x44, 0x6f, 0x63, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, |
| 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, |
| 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, |
| 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3c, 0x0a, 0x0e, 0x44, 0x61, 0x74, |
| 0x61, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, |
| 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, |
| 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, |
| 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x4a, 0x04, 0x08, 0x08, 0x10, 0x09, 0x4a, 0x04, 0x08, |
| 0x0b, 0x10, 0x0c, 0x4a, 0x04, 0x08, 0x0d, 0x10, 0x0e, 0x4a, 0x04, 0x08, 0x0f, 0x10, 0x10, 0x4a, |
| 0x04, 0x08, 0x13, 0x10, 0x14, 0x4a, 0x04, 0x08, 0x1b, 0x10, 0x1c, 0x4a, 0x04, 0x08, 0x0a, 0x10, |
| 0x0b, 0x22, 0xb9, 0x01, 0x0a, 0x08, 0x53, 0x77, 0x61, 0x72, 0x6d, 0x69, 0x6e, 0x67, 0x12, 0x36, |
| 0x0a, 0x08, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, |
| 0x32, 0x1a, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, |
| 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x08, 0x62, 0x75, |
| 0x69, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x12, 0x63, 0x0a, 0x1f, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x74, |
| 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x5f, 0x63, 0x61, 0x6e, 0x61, 0x72, 0x79, 0x5f, 0x70, |
| 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, |
| 0x1c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, |
| 0x66, 0x2e, 0x55, 0x49, 0x6e, 0x74, 0x33, 0x32, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x1c, 0x74, |
| 0x61, 0x73, 0x6b, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x43, 0x61, 0x6e, 0x61, 0x72, |
| 0x79, 0x50, 0x65, 0x72, 0x63, 0x65, 0x6e, 0x74, 0x61, 0x67, 0x65, 0x4a, 0x04, 0x08, 0x01, 0x10, |
| 0x02, 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x22, 0xe2, 0x03, |
| 0x0a, 0x06, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, |
| 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x04, |
| 0x61, 0x63, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x62, 0x75, 0x69, |
| 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x41, 0x63, 0x6c, 0x42, 0x02, 0x18, 0x01, |
| 0x52, 0x04, 0x61, 0x63, 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x08, 0x73, 0x77, 0x61, 0x72, 0x6d, 0x69, |
| 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, |
| 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x53, 0x77, 0x61, 0x72, 0x6d, 0x69, 0x6e, 0x67, 0x52, |
| 0x08, 0x73, 0x77, 0x61, 0x72, 0x6d, 0x69, 0x6e, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, |
| 0x64, 0x6f, 0x77, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x68, 0x61, 0x64, 0x6f, |
| 0x77, 0x12, 0x41, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, |
| 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, |
| 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x73, |
| 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x73, 0x74, 0x72, 0x61, |
| 0x69, 0x6e, 0x74, 0x73, 0x12, 0x64, 0x0a, 0x18, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x5f, |
| 0x62, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, |
| 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, |
| 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x44, 0x79, 0x6e, 0x61, |
| 0x6d, 0x69, 0x63, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, |
| 0x74, 0x65, 0x52, 0x16, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x42, 0x75, 0x69, 0x6c, 0x64, |
| 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x1a, 0x4e, 0x0a, 0x0b, 0x43, 0x6f, |
| 0x6e, 0x73, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x6f, 0x6f, |
| 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x6f, 0x6c, 0x73, 0x12, |
| 0x29, 0x0a, 0x10, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, |
| 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, |
| 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x1a, 0x50, 0x0a, 0x16, 0x44, 0x79, |
| 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x54, 0x65, 0x6d, 0x70, |
| 0x6c, 0x61, 0x74, 0x65, 0x12, 0x36, 0x0a, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, |
| 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, |
| 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, |
| 0x69, 0x67, 0x52, 0x08, 0x74, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x4a, 0x04, 0x08, 0x04, |
| 0x10, 0x05, 0x22, 0xed, 0x02, 0x0a, 0x0e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, |
| 0x65, 0x74, 0x43, 0x66, 0x67, 0x12, 0x2d, 0x0a, 0x07, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x73, |
| 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, |
| 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x07, 0x62, 0x75, 0x63, |
| 0x6b, 0x65, 0x74, 0x73, 0x12, 0x4d, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x5f, 0x63, |
| 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x62, 0x75, |
| 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x62, |
| 0x75, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x66, 0x67, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x43, |
| 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, |
| 0x66, 0x69, 0x67, 0x1a, 0x5a, 0x0a, 0x05, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x12, 0x0a, 0x04, |
| 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, |
| 0x12, 0x3d, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, |
| 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, |
| 0x6b, 0x65, 0x74, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, |
| 0x6f, 0x6e, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x1a, |
| 0x6f, 0x0a, 0x0c, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, |
| 0x5f, 0x0a, 0x1a, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x5f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, |
| 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x73, 0x18, 0x01, 0x20, |
| 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, |
| 0x74, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x43, 0x66, 0x67, |
| 0x2e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x52, 0x18, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x73, 0x4e, 0x6f, |
| 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x70, 0x69, 0x63, 0x73, |
| 0x4a, 0x04, 0x08, 0x02, 0x10, 0x03, 0x4a, 0x04, 0x08, 0x03, 0x10, 0x04, 0x4a, 0x04, 0x08, 0x04, |
| 0x10, 0x05, 0x22, 0xe5, 0x01, 0x0a, 0x16, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x65, 0x74, |
| 0x72, 0x69, 0x63, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, |
| 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, |
| 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, 0x73, 0x18, |
| 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x65, 0x64, 0x69, 0x63, 0x61, 0x74, 0x65, |
| 0x73, 0x12, 0x57, 0x0a, 0x0c, 0x65, 0x78, 0x74, 0x72, 0x61, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, |
| 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, |
| 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x65, 0x74, 0x72, |
| 0x69, 0x63, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x78, 0x74, |
| 0x72, 0x61, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x65, |
| 0x78, 0x74, 0x72, 0x61, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x1a, 0x3e, 0x0a, 0x10, 0x45, 0x78, |
| 0x74, 0x72, 0x61, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, |
| 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, |
| 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, |
| 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x2a, 0x24, 0x0a, 0x06, 0x54, 0x6f, |
| 0x67, 0x67, 0x6c, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, |
| 0x07, 0x0a, 0x03, 0x59, 0x45, 0x53, 0x10, 0x01, 0x12, 0x06, 0x0a, 0x02, 0x4e, 0x4f, 0x10, 0x02, |
| 0x42, 0x74, 0xa2, 0xfe, 0x23, 0x3a, 0x0a, 0x38, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, |
| 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x6c, 0x75, 0x63, 0x69, 0x2e, 0x61, 0x70, 0x70, 0x2f, |
| 0x73, 0x63, 0x68, 0x65, 0x6d, 0x61, 0x73, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, |
| 0x3a, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x63, 0x66, 0x67, |
| 0x5a, 0x34, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, |
| 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, 0x63, 0x6b, |
| 0x65, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x3b, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x62, 0x75, |
| 0x63, 0x6b, 0x65, 0x74, 0x70, 0x62, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, |
| } |
| |
| var ( |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescOnce sync.Once |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescData = file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDesc |
| ) |
| |
| func file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescGZIP() []byte { |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescOnce.Do(func() { |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescData) |
| }) |
| return file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDescData |
| } |
| |
| var file_go_chromium_org_luci_buildbucket_proto_project_config_proto_enumTypes = make([]protoimpl.EnumInfo, 2) |
| var file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes = make([]protoimpl.MessageInfo, 20) |
| var file_go_chromium_org_luci_buildbucket_proto_project_config_proto_goTypes = []interface{}{ |
| (Toggle)(0), // 0: buildbucket.Toggle |
| (Acl_Role)(0), // 1: buildbucket.Acl.Role |
| (*Acl)(nil), // 2: buildbucket.Acl |
| (*BuilderConfig)(nil), // 3: buildbucket.BuilderConfig |
| (*Swarming)(nil), // 4: buildbucket.Swarming |
| (*Bucket)(nil), // 5: buildbucket.Bucket |
| (*BuildbucketCfg)(nil), // 6: buildbucket.BuildbucketCfg |
| (*CustomMetricDefinition)(nil), // 7: buildbucket.CustomMetricDefinition |
| (*BuilderConfig_CacheEntry)(nil), // 8: buildbucket.BuilderConfig.CacheEntry |
| (*BuilderConfig_Recipe)(nil), // 9: buildbucket.BuilderConfig.Recipe |
| (*BuilderConfig_ResultDB)(nil), // 10: buildbucket.BuilderConfig.ResultDB |
| (*BuilderConfig_Backend)(nil), // 11: buildbucket.BuilderConfig.Backend |
| nil, // 12: buildbucket.BuilderConfig.ExperimentsEntry |
| (*BuilderConfig_ShadowBuilderAdjustments)(nil), // 13: buildbucket.BuilderConfig.ShadowBuilderAdjustments |
| (*BuilderConfig_BuilderHealthLinks)(nil), // 14: buildbucket.BuilderConfig.BuilderHealthLinks |
| nil, // 15: buildbucket.BuilderConfig.BuilderHealthLinks.DocLinksEntry |
| nil, // 16: buildbucket.BuilderConfig.BuilderHealthLinks.DataLinksEntry |
| (*Bucket_Constraints)(nil), // 17: buildbucket.Bucket.Constraints |
| (*Bucket_DynamicBuilderTemplate)(nil), // 18: buildbucket.Bucket.DynamicBuilderTemplate |
| (*BuildbucketCfg_Topic)(nil), // 19: buildbucket.BuildbucketCfg.Topic |
| (*BuildbucketCfg_CommonConfig)(nil), // 20: buildbucket.BuildbucketCfg.CommonConfig |
| nil, // 21: buildbucket.CustomMetricDefinition.ExtraFieldsEntry |
| (*Executable)(nil), // 22: buildbucket.v2.Executable |
| (*durationpb.Duration)(nil), // 23: google.protobuf.Duration |
| (Trinary)(0), // 24: buildbucket.v2.Trinary |
| (*wrapperspb.UInt32Value)(nil), // 25: google.protobuf.UInt32Value |
| (*v1.BigQueryExport)(nil), // 26: luci.resultdb.v1.BigQueryExport |
| (*v1.HistoryOptions)(nil), // 27: luci.resultdb.v1.HistoryOptions |
| (Compression)(0), // 28: buildbucket.v2.Compression |
| } |
| var file_go_chromium_org_luci_buildbucket_proto_project_config_proto_depIdxs = []int32{ |
| 1, // 0: buildbucket.Acl.role:type_name -> buildbucket.Acl.Role |
| 11, // 1: buildbucket.BuilderConfig.backend:type_name -> buildbucket.BuilderConfig.Backend |
| 11, // 2: buildbucket.BuilderConfig.backend_alt:type_name -> buildbucket.BuilderConfig.Backend |
| 9, // 3: buildbucket.BuilderConfig.recipe:type_name -> buildbucket.BuilderConfig.Recipe |
| 22, // 4: buildbucket.BuilderConfig.exe:type_name -> buildbucket.v2.Executable |
| 23, // 5: buildbucket.BuilderConfig.grace_period:type_name -> google.protobuf.Duration |
| 24, // 6: buildbucket.BuilderConfig.wait_for_capacity:type_name -> buildbucket.v2.Trinary |
| 8, // 7: buildbucket.BuilderConfig.caches:type_name -> buildbucket.BuilderConfig.CacheEntry |
| 0, // 8: buildbucket.BuilderConfig.build_numbers:type_name -> buildbucket.Toggle |
| 0, // 9: buildbucket.BuilderConfig.auto_builder_dimension:type_name -> buildbucket.Toggle |
| 0, // 10: buildbucket.BuilderConfig.experimental:type_name -> buildbucket.Toggle |
| 25, // 11: buildbucket.BuilderConfig.task_template_canary_percentage:type_name -> google.protobuf.UInt32Value |
| 12, // 12: buildbucket.BuilderConfig.experiments:type_name -> buildbucket.BuilderConfig.ExperimentsEntry |
| 24, // 13: buildbucket.BuilderConfig.critical:type_name -> buildbucket.v2.Trinary |
| 10, // 14: buildbucket.BuilderConfig.resultdb:type_name -> buildbucket.BuilderConfig.ResultDB |
| 13, // 15: buildbucket.BuilderConfig.shadow_builder_adjustments:type_name -> buildbucket.BuilderConfig.ShadowBuilderAdjustments |
| 24, // 16: buildbucket.BuilderConfig.retriable:type_name -> buildbucket.v2.Trinary |
| 14, // 17: buildbucket.BuilderConfig.builder_health_metrics_links:type_name -> buildbucket.BuilderConfig.BuilderHealthLinks |
| 7, // 18: buildbucket.BuilderConfig.custom_metric_definitions:type_name -> buildbucket.CustomMetricDefinition |
| 3, // 19: buildbucket.Swarming.builders:type_name -> buildbucket.BuilderConfig |
| 25, // 20: buildbucket.Swarming.task_template_canary_percentage:type_name -> google.protobuf.UInt32Value |
| 2, // 21: buildbucket.Bucket.acls:type_name -> buildbucket.Acl |
| 4, // 22: buildbucket.Bucket.swarming:type_name -> buildbucket.Swarming |
| 17, // 23: buildbucket.Bucket.constraints:type_name -> buildbucket.Bucket.Constraints |
| 18, // 24: buildbucket.Bucket.dynamic_builder_template:type_name -> buildbucket.Bucket.DynamicBuilderTemplate |
| 5, // 25: buildbucket.BuildbucketCfg.buckets:type_name -> buildbucket.Bucket |
| 20, // 26: buildbucket.BuildbucketCfg.common_config:type_name -> buildbucket.BuildbucketCfg.CommonConfig |
| 21, // 27: buildbucket.CustomMetricDefinition.extra_fields:type_name -> buildbucket.CustomMetricDefinition.ExtraFieldsEntry |
| 26, // 28: buildbucket.BuilderConfig.ResultDB.bq_exports:type_name -> luci.resultdb.v1.BigQueryExport |
| 27, // 29: buildbucket.BuilderConfig.ResultDB.history_options:type_name -> luci.resultdb.v1.HistoryOptions |
| 15, // 30: buildbucket.BuilderConfig.BuilderHealthLinks.doc_links:type_name -> buildbucket.BuilderConfig.BuilderHealthLinks.DocLinksEntry |
| 16, // 31: buildbucket.BuilderConfig.BuilderHealthLinks.data_links:type_name -> buildbucket.BuilderConfig.BuilderHealthLinks.DataLinksEntry |
| 3, // 32: buildbucket.Bucket.DynamicBuilderTemplate.template:type_name -> buildbucket.BuilderConfig |
| 28, // 33: buildbucket.BuildbucketCfg.Topic.compression:type_name -> buildbucket.v2.Compression |
| 19, // 34: buildbucket.BuildbucketCfg.CommonConfig.builds_notification_topics:type_name -> buildbucket.BuildbucketCfg.Topic |
| 35, // [35:35] is the sub-list for method output_type |
| 35, // [35:35] is the sub-list for method input_type |
| 35, // [35:35] is the sub-list for extension type_name |
| 35, // [35:35] is the sub-list for extension extendee |
| 0, // [0:35] is the sub-list for field type_name |
| } |
| |
| func init() { file_go_chromium_org_luci_buildbucket_proto_project_config_proto_init() } |
| func file_go_chromium_org_luci_buildbucket_proto_project_config_proto_init() { |
| if File_go_chromium_org_luci_buildbucket_proto_project_config_proto != nil { |
| return |
| } |
| file_go_chromium_org_luci_buildbucket_proto_common_proto_init() |
| if !protoimpl.UnsafeEnabled { |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Acl); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*BuilderConfig); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Swarming); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Bucket); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*BuildbucketCfg); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*CustomMetricDefinition); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*BuilderConfig_CacheEntry); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*BuilderConfig_Recipe); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*BuilderConfig_ResultDB); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*BuilderConfig_Backend); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*BuilderConfig_ShadowBuilderAdjustments); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*BuilderConfig_BuilderHealthLinks); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Bucket_Constraints); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*Bucket_DynamicBuilderTemplate); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*BuildbucketCfg_Topic); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { |
| switch v := v.(*BuildbucketCfg_CommonConfig); i { |
| case 0: |
| return &v.state |
| case 1: |
| return &v.sizeCache |
| case 2: |
| return &v.unknownFields |
| default: |
| return nil |
| } |
| } |
| } |
| type x struct{} |
| out := protoimpl.TypeBuilder{ |
| File: protoimpl.DescBuilder{ |
| GoPackagePath: reflect.TypeOf(x{}).PkgPath(), |
| RawDescriptor: file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDesc, |
| NumEnums: 2, |
| NumMessages: 20, |
| NumExtensions: 0, |
| NumServices: 0, |
| }, |
| GoTypes: file_go_chromium_org_luci_buildbucket_proto_project_config_proto_goTypes, |
| DependencyIndexes: file_go_chromium_org_luci_buildbucket_proto_project_config_proto_depIdxs, |
| EnumInfos: file_go_chromium_org_luci_buildbucket_proto_project_config_proto_enumTypes, |
| MessageInfos: file_go_chromium_org_luci_buildbucket_proto_project_config_proto_msgTypes, |
| }.Build() |
| File_go_chromium_org_luci_buildbucket_proto_project_config_proto = out.File |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_rawDesc = nil |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_goTypes = nil |
| file_go_chromium_org_luci_buildbucket_proto_project_config_proto_depIdxs = nil |
| } |