go.chromium.org/luci@v0.0.0-20240309015107-7cdc2e660f33/deploy/api/modelpb/deployment.pb.go (about) 1 // Copyright 2022 The LUCI Authors. 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 // Code generated by protoc-gen-go. DO NOT EDIT. 16 // versions: 17 // protoc-gen-go v1.31.0 18 // protoc v3.21.7 19 // source: go.chromium.org/luci/deploy/api/modelpb/deployment.proto 20 21 package modelpb 22 23 import ( 24 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 25 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 26 durationpb "google.golang.org/protobuf/types/known/durationpb" 27 reflect "reflect" 28 sync "sync" 29 ) 30 31 const ( 32 // Verify that this generated code is sufficiently up-to-date. 33 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 34 // Verify that runtime/protoimpl is sufficiently up-to-date. 35 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 36 ) 37 38 // Types of events to notify on. 39 type DeploymentConfig_Notification_Event int32 40 41 const ( 42 DeploymentConfig_Notification_EVENT_UNSPECIFIED DeploymentConfig_Notification_Event = 0 43 // An actuation is starting. 44 // 45 // Always emitted regardless of any prior history. 46 DeploymentConfig_Notification_ACTUATION_STARTING DeploymentConfig_Notification_Event = 1 47 // An actuation has finished successfully. 48 // 49 // Always emitted regardless of any prior history. 50 DeploymentConfig_Notification_ACTUATION_SUCCEEDED DeploymentConfig_Notification_Event = 2 51 // An actuation failed, perhaps after several retries. 52 // 53 // First few failures (below `consecutive_failures` threshold) will *not* 54 // result in an event. Every consecutive failure after that will result 55 // in an event. 56 DeploymentConfig_Notification_ACTUATION_FAILED DeploymentConfig_Notification_Event = 3 57 // An actuation succeeded after a series of failures. 58 // 59 // Emitted if the actuation succeeded after >= `consecutive_failures` 60 // consecutive failures. Overrides ACTUATION_SUCCEEDED if emitted by the 61 // same state transition. 62 DeploymentConfig_Notification_ACTUATION_FIXED DeploymentConfig_Notification_Event = 4 63 ) 64 65 // Enum value maps for DeploymentConfig_Notification_Event. 66 var ( 67 DeploymentConfig_Notification_Event_name = map[int32]string{ 68 0: "EVENT_UNSPECIFIED", 69 1: "ACTUATION_STARTING", 70 2: "ACTUATION_SUCCEEDED", 71 3: "ACTUATION_FAILED", 72 4: "ACTUATION_FIXED", 73 } 74 DeploymentConfig_Notification_Event_value = map[string]int32{ 75 "EVENT_UNSPECIFIED": 0, 76 "ACTUATION_STARTING": 1, 77 "ACTUATION_SUCCEEDED": 2, 78 "ACTUATION_FAILED": 3, 79 "ACTUATION_FIXED": 4, 80 } 81 ) 82 83 func (x DeploymentConfig_Notification_Event) Enum() *DeploymentConfig_Notification_Event { 84 p := new(DeploymentConfig_Notification_Event) 85 *p = x 86 return p 87 } 88 89 func (x DeploymentConfig_Notification_Event) String() string { 90 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 91 } 92 93 func (DeploymentConfig_Notification_Event) Descriptor() protoreflect.EnumDescriptor { 94 return file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_enumTypes[0].Descriptor() 95 } 96 97 func (DeploymentConfig_Notification_Event) Type() protoreflect.EnumType { 98 return &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_enumTypes[0] 99 } 100 101 func (x DeploymentConfig_Notification_Event) Number() protoreflect.EnumNumber { 102 return protoreflect.EnumNumber(x) 103 } 104 105 // Deprecated: Use DeploymentConfig_Notification_Event.Descriptor instead. 106 func (DeploymentConfig_Notification_Event) EnumDescriptor() ([]byte, []int) { 107 return file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescGZIP(), []int{2, 0, 0} 108 } 109 110 // Identifier of a deployment: a reference to its config location. 111 // 112 // A deployment is located in some directory of a git repository on `HEAD` ref. 113 // 114 // The directory path has two segments: the path to the root of the 115 // configuration tree, and the path to the particular configuration within this 116 // tree. 117 type DeploymentID struct { 118 state protoimpl.MessageState 119 sizeCache protoimpl.SizeCache 120 unknownFields protoimpl.UnknownFields 121 122 // Hostname of the GoB server with the IaC repository, e.g. "chrome-internal". 123 RepoHost string `protobuf:"bytes,1,opt,name=repo_host,json=repoHost,proto3" json:"repo_host,omitempty"` 124 // Name of the IaC repository relative to the host, e.g. "infradata/gae". 125 RepoName string `protobuf:"bytes,2,opt,name=repo_name,json=repoName,proto3" json:"repo_name,omitempty"` 126 // Path to the root of the IaC config tree in the repository, e.g. ".". 127 RepoPath string `protobuf:"bytes,3,opt,name=repo_path,json=repoPath,proto3" json:"repo_path,omitempty"` 128 // Path to the directory inside the IaC configs, e.g. "apps/luci-deploy/prod". 129 ConfigPath string `protobuf:"bytes,4,opt,name=config_path,json=configPath,proto3" json:"config_path,omitempty"` 130 } 131 132 func (x *DeploymentID) Reset() { 133 *x = DeploymentID{} 134 if protoimpl.UnsafeEnabled { 135 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[0] 136 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 137 ms.StoreMessageInfo(mi) 138 } 139 } 140 141 func (x *DeploymentID) String() string { 142 return protoimpl.X.MessageStringOf(x) 143 } 144 145 func (*DeploymentID) ProtoMessage() {} 146 147 func (x *DeploymentID) ProtoReflect() protoreflect.Message { 148 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[0] 149 if protoimpl.UnsafeEnabled && x != nil { 150 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 151 if ms.LoadMessageInfo() == nil { 152 ms.StoreMessageInfo(mi) 153 } 154 return ms 155 } 156 return mi.MessageOf(x) 157 } 158 159 // Deprecated: Use DeploymentID.ProtoReflect.Descriptor instead. 160 func (*DeploymentID) Descriptor() ([]byte, []int) { 161 return file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescGZIP(), []int{0} 162 } 163 164 func (x *DeploymentID) GetRepoHost() string { 165 if x != nil { 166 return x.RepoHost 167 } 168 return "" 169 } 170 171 func (x *DeploymentID) GetRepoName() string { 172 if x != nil { 173 return x.RepoName 174 } 175 return "" 176 } 177 178 func (x *DeploymentID) GetRepoPath() string { 179 if x != nil { 180 return x.RepoPath 181 } 182 return "" 183 } 184 185 func (x *DeploymentID) GetConfigPath() string { 186 if x != nil { 187 return x.ConfigPath 188 } 189 return "" 190 } 191 192 // Deployment as defined in the IaC repo. 193 type Deployment struct { 194 state protoimpl.MessageState 195 sizeCache protoimpl.SizeCache 196 unknownFields protoimpl.UnknownFields 197 198 // The stable identifier of the deployment based on the config location. 199 Id *DeploymentID `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` 200 // The revision of the HEAD of IaC repository with the deployment. 201 // 202 // Can be obtained with `git rev-parse HEAD`. Moves frequently. 203 RepoRev string `protobuf:"bytes,2,opt,name=repo_rev,json=repoRev,proto3" json:"repo_rev,omitempty"` 204 // The revision of the deployment config directory. 205 // 206 // Can be obtained `git log --pretty=tformat:"%H" -n1 <config_path>`. If it 207 // changes, the deployment most like is changing too. 208 ConfigRev string `protobuf:"bytes,3,opt,name=config_rev,json=configRev,proto3" json:"config_rev,omitempty"` 209 // Configuration for the deployment system itself, as defined in the IaC repo. 210 // 211 // Applies to all assets associated with this deployment. 212 Config *DeploymentConfig `protobuf:"bytes,4,opt,name=config,proto3" json:"config,omitempty"` 213 // Details of the commit matching `config_rev`. 214 LatestCommit *CommitDetails `protobuf:"bytes,5,opt,name=latest_commit,json=latestCommit,proto3" json:"latest_commit,omitempty"` 215 } 216 217 func (x *Deployment) Reset() { 218 *x = Deployment{} 219 if protoimpl.UnsafeEnabled { 220 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[1] 221 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 222 ms.StoreMessageInfo(mi) 223 } 224 } 225 226 func (x *Deployment) String() string { 227 return protoimpl.X.MessageStringOf(x) 228 } 229 230 func (*Deployment) ProtoMessage() {} 231 232 func (x *Deployment) ProtoReflect() protoreflect.Message { 233 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[1] 234 if protoimpl.UnsafeEnabled && x != nil { 235 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 236 if ms.LoadMessageInfo() == nil { 237 ms.StoreMessageInfo(mi) 238 } 239 return ms 240 } 241 return mi.MessageOf(x) 242 } 243 244 // Deprecated: Use Deployment.ProtoReflect.Descriptor instead. 245 func (*Deployment) Descriptor() ([]byte, []int) { 246 return file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescGZIP(), []int{1} 247 } 248 249 func (x *Deployment) GetId() *DeploymentID { 250 if x != nil { 251 return x.Id 252 } 253 return nil 254 } 255 256 func (x *Deployment) GetRepoRev() string { 257 if x != nil { 258 return x.RepoRev 259 } 260 return "" 261 } 262 263 func (x *Deployment) GetConfigRev() string { 264 if x != nil { 265 return x.ConfigRev 266 } 267 return "" 268 } 269 270 func (x *Deployment) GetConfig() *DeploymentConfig { 271 if x != nil { 272 return x.Config 273 } 274 return nil 275 } 276 277 func (x *Deployment) GetLatestCommit() *CommitDetails { 278 if x != nil { 279 return x.LatestCommit 280 } 281 return nil 282 } 283 284 // Deployment configuration, as defined in the IaC repo. 285 type DeploymentConfig struct { 286 state protoimpl.MessageState 287 sizeCache protoimpl.SizeCache 288 unknownFields protoimpl.UnknownFields 289 290 // How long the actuation can run before it is considered crashed. 291 // 292 // Default is 20 min. 293 ActuationTimeout *durationpb.Duration `protobuf:"bytes,1,opt,name=actuation_timeout,json=actuationTimeout,proto3" json:"actuation_timeout,omitempty"` 294 Notifications []*DeploymentConfig_Notification `protobuf:"bytes,2,rep,name=notifications,proto3" json:"notifications,omitempty"` 295 } 296 297 func (x *DeploymentConfig) Reset() { 298 *x = DeploymentConfig{} 299 if protoimpl.UnsafeEnabled { 300 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[2] 301 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 302 ms.StoreMessageInfo(mi) 303 } 304 } 305 306 func (x *DeploymentConfig) String() string { 307 return protoimpl.X.MessageStringOf(x) 308 } 309 310 func (*DeploymentConfig) ProtoMessage() {} 311 312 func (x *DeploymentConfig) ProtoReflect() protoreflect.Message { 313 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[2] 314 if protoimpl.UnsafeEnabled && x != nil { 315 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 316 if ms.LoadMessageInfo() == nil { 317 ms.StoreMessageInfo(mi) 318 } 319 return ms 320 } 321 return mi.MessageOf(x) 322 } 323 324 // Deprecated: Use DeploymentConfig.ProtoReflect.Descriptor instead. 325 func (*DeploymentConfig) Descriptor() ([]byte, []int) { 326 return file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescGZIP(), []int{2} 327 } 328 329 func (x *DeploymentConfig) GetActuationTimeout() *durationpb.Duration { 330 if x != nil { 331 return x.ActuationTimeout 332 } 333 return nil 334 } 335 336 func (x *DeploymentConfig) GetNotifications() []*DeploymentConfig_Notification { 337 if x != nil { 338 return x.Notifications 339 } 340 return nil 341 } 342 343 // Details of an IaC repo commit, to show in the UI. 344 type CommitDetails struct { 345 state protoimpl.MessageState 346 sizeCache protoimpl.SizeCache 347 unknownFields protoimpl.UnknownFields 348 349 // Author name, as git understands it. 350 AuthorName string `protobuf:"bytes,1,opt,name=author_name,json=authorName,proto3" json:"author_name,omitempty"` 351 // Author email, as git understands it. 352 AuthorEmail string `protobuf:"bytes,2,opt,name=author_email,json=authorEmail,proto3" json:"author_email,omitempty"` 353 // Full commit message, including subject and footers. 354 CommitMessage string `protobuf:"bytes,3,opt,name=commit_message,json=commitMessage,proto3" json:"commit_message,omitempty"` 355 } 356 357 func (x *CommitDetails) Reset() { 358 *x = CommitDetails{} 359 if protoimpl.UnsafeEnabled { 360 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[3] 361 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 362 ms.StoreMessageInfo(mi) 363 } 364 } 365 366 func (x *CommitDetails) String() string { 367 return protoimpl.X.MessageStringOf(x) 368 } 369 370 func (*CommitDetails) ProtoMessage() {} 371 372 func (x *CommitDetails) ProtoReflect() protoreflect.Message { 373 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[3] 374 if protoimpl.UnsafeEnabled && x != nil { 375 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 376 if ms.LoadMessageInfo() == nil { 377 ms.StoreMessageInfo(mi) 378 } 379 return ms 380 } 381 return mi.MessageOf(x) 382 } 383 384 // Deprecated: Use CommitDetails.ProtoReflect.Descriptor instead. 385 func (*CommitDetails) Descriptor() ([]byte, []int) { 386 return file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescGZIP(), []int{3} 387 } 388 389 func (x *CommitDetails) GetAuthorName() string { 390 if x != nil { 391 return x.AuthorName 392 } 393 return "" 394 } 395 396 func (x *CommitDetails) GetAuthorEmail() string { 397 if x != nil { 398 return x.AuthorEmail 399 } 400 return "" 401 } 402 403 func (x *CommitDetails) GetCommitMessage() string { 404 if x != nil { 405 return x.CommitMessage 406 } 407 return "" 408 } 409 410 // Who to notify on noteworthy events. 411 // 412 // Various asset state transitions emit 0 or more events per transition. For 413 // each event kind `notifications` define a set of destinations to send it 414 // to. During a state transition, all emitted events are bucketed by their 415 // destination, then redundant events are trimmed (e.g. if a single 416 // destination is getting ACTUATION_FIXED and ACTUATION_SUCCEEDED events, only 417 // ACTUATION_FIXED will be retained, since it makes little sense to send 418 // two success notifications to the same destination at the same time). 419 type DeploymentConfig_Notification struct { 420 state protoimpl.MessageState 421 sizeCache protoimpl.SizeCache 422 unknownFields protoimpl.UnknownFields 423 424 Events []DeploymentConfig_Notification_Event `protobuf:"varint,1,rep,packed,name=events,proto3,enum=deploy.model.DeploymentConfig_Notification_Event" json:"events,omitempty"` 425 // List of emails to send notifications to. 426 Emails []string `protobuf:"bytes,2,rep,name=emails,proto3" json:"emails,omitempty"` 427 ChatSpaces []*DeploymentConfig_Notification_ChatSpace `protobuf:"bytes,3,rep,name=chat_spaces,json=chatSpaces,proto3" json:"chat_spaces,omitempty"` 428 // Consecutive failures threshold for ACTUATION_FAILED and ACTUATION_FIXED. 429 // 430 // First few failures (below the threshold) will *not* result in 431 // a notification. This is useful to avoid spamming on flaky failures 432 // resolved by automatic retries. 433 ConsecutiveFailures int32 `protobuf:"varint,4,opt,name=consecutive_failures,json=consecutiveFailures,proto3" json:"consecutive_failures,omitempty"` 434 } 435 436 func (x *DeploymentConfig_Notification) Reset() { 437 *x = DeploymentConfig_Notification{} 438 if protoimpl.UnsafeEnabled { 439 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[4] 440 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 441 ms.StoreMessageInfo(mi) 442 } 443 } 444 445 func (x *DeploymentConfig_Notification) String() string { 446 return protoimpl.X.MessageStringOf(x) 447 } 448 449 func (*DeploymentConfig_Notification) ProtoMessage() {} 450 451 func (x *DeploymentConfig_Notification) ProtoReflect() protoreflect.Message { 452 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[4] 453 if protoimpl.UnsafeEnabled && x != nil { 454 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 455 if ms.LoadMessageInfo() == nil { 456 ms.StoreMessageInfo(mi) 457 } 458 return ms 459 } 460 return mi.MessageOf(x) 461 } 462 463 // Deprecated: Use DeploymentConfig_Notification.ProtoReflect.Descriptor instead. 464 func (*DeploymentConfig_Notification) Descriptor() ([]byte, []int) { 465 return file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescGZIP(), []int{2, 0} 466 } 467 468 func (x *DeploymentConfig_Notification) GetEvents() []DeploymentConfig_Notification_Event { 469 if x != nil { 470 return x.Events 471 } 472 return nil 473 } 474 475 func (x *DeploymentConfig_Notification) GetEmails() []string { 476 if x != nil { 477 return x.Emails 478 } 479 return nil 480 } 481 482 func (x *DeploymentConfig_Notification) GetChatSpaces() []*DeploymentConfig_Notification_ChatSpace { 483 if x != nil { 484 return x.ChatSpaces 485 } 486 return nil 487 } 488 489 func (x *DeploymentConfig_Notification) GetConsecutiveFailures() int32 { 490 if x != nil { 491 return x.ConsecutiveFailures 492 } 493 return 0 494 } 495 496 // List of Google Chat spaces to send notifications to. 497 type DeploymentConfig_Notification_ChatSpace struct { 498 state protoimpl.MessageState 499 sizeCache protoimpl.SizeCache 500 unknownFields protoimpl.UnknownFields 501 502 // Space ID e.g. "AAAA9ulaM5M", can be extracted from the Space URL. 503 // 504 // The chat app needs to be added into the space first. Search for it 505 // using "LUCI Deploy" title. 506 Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` 507 } 508 509 func (x *DeploymentConfig_Notification_ChatSpace) Reset() { 510 *x = DeploymentConfig_Notification_ChatSpace{} 511 if protoimpl.UnsafeEnabled { 512 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[5] 513 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 514 ms.StoreMessageInfo(mi) 515 } 516 } 517 518 func (x *DeploymentConfig_Notification_ChatSpace) String() string { 519 return protoimpl.X.MessageStringOf(x) 520 } 521 522 func (*DeploymentConfig_Notification_ChatSpace) ProtoMessage() {} 523 524 func (x *DeploymentConfig_Notification_ChatSpace) ProtoReflect() protoreflect.Message { 525 mi := &file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[5] 526 if protoimpl.UnsafeEnabled && x != nil { 527 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 528 if ms.LoadMessageInfo() == nil { 529 ms.StoreMessageInfo(mi) 530 } 531 return ms 532 } 533 return mi.MessageOf(x) 534 } 535 536 // Deprecated: Use DeploymentConfig_Notification_ChatSpace.ProtoReflect.Descriptor instead. 537 func (*DeploymentConfig_Notification_ChatSpace) Descriptor() ([]byte, []int) { 538 return file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescGZIP(), []int{2, 0, 0} 539 } 540 541 func (x *DeploymentConfig_Notification_ChatSpace) GetId() string { 542 if x != nil { 543 return x.Id 544 } 545 return "" 546 } 547 548 var File_go_chromium_org_luci_deploy_api_modelpb_deployment_proto protoreflect.FileDescriptor 549 550 var file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDesc = []byte{ 551 0x0a, 0x38, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 552 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x2f, 0x61, 0x70, 553 0x69, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x70, 0x62, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 554 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0c, 0x64, 0x65, 0x70, 0x6c, 555 0x6f, 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 556 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 557 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x86, 0x01, 0x0a, 0x0c, 0x44, 0x65, 0x70, 558 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x70, 559 0x6f, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 560 0x70, 0x6f, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x70, 0x6f, 0x5f, 0x6e, 561 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6f, 0x4e, 562 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x70, 0x6f, 0x5f, 0x70, 0x61, 0x74, 0x68, 563 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x70, 0x6f, 0x50, 0x61, 0x74, 0x68, 564 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x18, 565 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x61, 0x74, 566 0x68, 0x22, 0xec, 0x01, 0x0a, 0x0a, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 567 0x12, 0x2a, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x64, 568 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x65, 0x70, 0x6c, 569 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x08, 570 0x72, 0x65, 0x70, 0x6f, 0x5f, 0x72, 0x65, 0x76, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 571 0x72, 0x65, 0x70, 0x6f, 0x52, 0x65, 0x76, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 572 0x67, 0x5f, 0x72, 0x65, 0x76, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6e, 573 0x66, 0x69, 0x67, 0x52, 0x65, 0x76, 0x12, 0x36, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 574 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x2e, 575 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 576 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 577 0x0a, 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x18, 578 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x2e, 0x6d, 579 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 580 0x6c, 0x73, 0x52, 0x0c, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 581 0x22, 0xc5, 0x04, 0x0a, 0x10, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x43, 582 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x46, 0x0a, 0x11, 0x61, 0x63, 0x74, 0x75, 0x61, 0x74, 0x69, 583 0x6f, 0x6e, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 584 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 585 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x61, 0x63, 0x74, 586 0x75, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x51, 0x0a, 587 0x0d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 588 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x2e, 0x6d, 0x6f, 589 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 590 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 591 0x6e, 0x52, 0x0d, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 592 0x1a, 0x95, 0x03, 0x0a, 0x0c, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 593 0x6e, 0x12, 0x49, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 594 0x0e, 0x32, 0x31, 0x2e, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 595 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 596 0x67, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 597 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 598 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x6d, 599 0x61, 0x69, 0x6c, 0x73, 0x12, 0x56, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x74, 0x5f, 0x73, 0x70, 0x61, 600 0x63, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x64, 0x65, 0x70, 0x6c, 601 0x6f, 0x79, 0x2e, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2e, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 602 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 603 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x68, 0x61, 0x74, 0x53, 0x70, 0x61, 0x63, 0x65, 604 0x52, 0x0a, 0x63, 0x68, 0x61, 0x74, 0x53, 0x70, 0x61, 0x63, 0x65, 0x73, 0x12, 0x31, 0x0a, 0x14, 605 0x63, 0x6f, 0x6e, 0x73, 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x66, 0x61, 0x69, 0x6c, 606 0x75, 0x72, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x73, 607 0x65, 0x63, 0x75, 0x74, 0x69, 0x76, 0x65, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x73, 0x1a, 608 0x1b, 0x0a, 0x09, 0x43, 0x68, 0x61, 0x74, 0x53, 0x70, 0x61, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 609 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x7a, 0x0a, 0x05, 610 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x56, 0x45, 0x4e, 0x54, 0x5f, 0x55, 611 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 612 0x41, 0x43, 0x54, 0x55, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x49, 613 0x4e, 0x47, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x43, 0x54, 0x55, 0x41, 0x54, 0x49, 0x4f, 614 0x4e, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x45, 0x44, 0x45, 0x44, 0x10, 0x02, 0x12, 0x14, 0x0a, 615 0x10, 0x41, 0x43, 0x54, 0x55, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 616 0x44, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x43, 0x54, 0x55, 0x41, 0x54, 0x49, 0x4f, 0x4e, 617 0x5f, 0x46, 0x49, 0x58, 0x45, 0x44, 0x10, 0x04, 0x22, 0x7a, 0x0a, 0x0d, 0x43, 0x6f, 0x6d, 0x6d, 618 0x69, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x75, 0x74, 619 0x68, 0x6f, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 620 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x75, 621 0x74, 0x68, 0x6f, 0x72, 0x5f, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 622 0x52, 0x0b, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x25, 0x0a, 623 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 624 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x4d, 0x65, 0x73, 625 0x73, 0x61, 0x67, 0x65, 0x42, 0x29, 0x5a, 0x27, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 626 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x64, 0x65, 0x70, 627 0x6c, 0x6f, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x70, 0x62, 0x62, 628 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, 629 } 630 631 var ( 632 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescOnce sync.Once 633 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescData = file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDesc 634 ) 635 636 func file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescGZIP() []byte { 637 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescOnce.Do(func() { 638 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescData) 639 }) 640 return file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDescData 641 } 642 643 var file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_enumTypes = make([]protoimpl.EnumInfo, 1) 644 var file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes = make([]protoimpl.MessageInfo, 6) 645 var file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_goTypes = []interface{}{ 646 (DeploymentConfig_Notification_Event)(0), // 0: deploy.model.DeploymentConfig.Notification.Event 647 (*DeploymentID)(nil), // 1: deploy.model.DeploymentID 648 (*Deployment)(nil), // 2: deploy.model.Deployment 649 (*DeploymentConfig)(nil), // 3: deploy.model.DeploymentConfig 650 (*CommitDetails)(nil), // 4: deploy.model.CommitDetails 651 (*DeploymentConfig_Notification)(nil), // 5: deploy.model.DeploymentConfig.Notification 652 (*DeploymentConfig_Notification_ChatSpace)(nil), // 6: deploy.model.DeploymentConfig.Notification.ChatSpace 653 (*durationpb.Duration)(nil), // 7: google.protobuf.Duration 654 } 655 var file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_depIdxs = []int32{ 656 1, // 0: deploy.model.Deployment.id:type_name -> deploy.model.DeploymentID 657 3, // 1: deploy.model.Deployment.config:type_name -> deploy.model.DeploymentConfig 658 4, // 2: deploy.model.Deployment.latest_commit:type_name -> deploy.model.CommitDetails 659 7, // 3: deploy.model.DeploymentConfig.actuation_timeout:type_name -> google.protobuf.Duration 660 5, // 4: deploy.model.DeploymentConfig.notifications:type_name -> deploy.model.DeploymentConfig.Notification 661 0, // 5: deploy.model.DeploymentConfig.Notification.events:type_name -> deploy.model.DeploymentConfig.Notification.Event 662 6, // 6: deploy.model.DeploymentConfig.Notification.chat_spaces:type_name -> deploy.model.DeploymentConfig.Notification.ChatSpace 663 7, // [7:7] is the sub-list for method output_type 664 7, // [7:7] is the sub-list for method input_type 665 7, // [7:7] is the sub-list for extension type_name 666 7, // [7:7] is the sub-list for extension extendee 667 0, // [0:7] is the sub-list for field type_name 668 } 669 670 func init() { file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_init() } 671 func file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_init() { 672 if File_go_chromium_org_luci_deploy_api_modelpb_deployment_proto != nil { 673 return 674 } 675 if !protoimpl.UnsafeEnabled { 676 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 677 switch v := v.(*DeploymentID); i { 678 case 0: 679 return &v.state 680 case 1: 681 return &v.sizeCache 682 case 2: 683 return &v.unknownFields 684 default: 685 return nil 686 } 687 } 688 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 689 switch v := v.(*Deployment); i { 690 case 0: 691 return &v.state 692 case 1: 693 return &v.sizeCache 694 case 2: 695 return &v.unknownFields 696 default: 697 return nil 698 } 699 } 700 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 701 switch v := v.(*DeploymentConfig); i { 702 case 0: 703 return &v.state 704 case 1: 705 return &v.sizeCache 706 case 2: 707 return &v.unknownFields 708 default: 709 return nil 710 } 711 } 712 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 713 switch v := v.(*CommitDetails); i { 714 case 0: 715 return &v.state 716 case 1: 717 return &v.sizeCache 718 case 2: 719 return &v.unknownFields 720 default: 721 return nil 722 } 723 } 724 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 725 switch v := v.(*DeploymentConfig_Notification); i { 726 case 0: 727 return &v.state 728 case 1: 729 return &v.sizeCache 730 case 2: 731 return &v.unknownFields 732 default: 733 return nil 734 } 735 } 736 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 737 switch v := v.(*DeploymentConfig_Notification_ChatSpace); i { 738 case 0: 739 return &v.state 740 case 1: 741 return &v.sizeCache 742 case 2: 743 return &v.unknownFields 744 default: 745 return nil 746 } 747 } 748 } 749 type x struct{} 750 out := protoimpl.TypeBuilder{ 751 File: protoimpl.DescBuilder{ 752 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 753 RawDescriptor: file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDesc, 754 NumEnums: 1, 755 NumMessages: 6, 756 NumExtensions: 0, 757 NumServices: 0, 758 }, 759 GoTypes: file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_goTypes, 760 DependencyIndexes: file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_depIdxs, 761 EnumInfos: file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_enumTypes, 762 MessageInfos: file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_msgTypes, 763 }.Build() 764 File_go_chromium_org_luci_deploy_api_modelpb_deployment_proto = out.File 765 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_rawDesc = nil 766 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_goTypes = nil 767 file_go_chromium_org_luci_deploy_api_modelpb_deployment_proto_depIdxs = nil 768 }