1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC 2*d5c09012SAndroid Build Coastguard Worker// 3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*d5c09012SAndroid Build Coastguard Worker// 7*d5c09012SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*d5c09012SAndroid Build Coastguard Worker// 9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*d5c09012SAndroid Build Coastguard Worker// limitations under the License. 14*d5c09012SAndroid Build Coastguard Worker 15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3"; 16*d5c09012SAndroid Build Coastguard Worker 17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.config.v1; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Workerimport "google/api/annotations.proto"; 20*d5c09012SAndroid Build Coastguard Workerimport "google/api/client.proto"; 21*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto"; 22*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_info.proto"; 23*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto"; 24*d5c09012SAndroid Build Coastguard Workerimport "google/longrunning/operations.proto"; 25*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto"; 26*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/field_mask.proto"; 27*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/struct.proto"; 28*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 29*d5c09012SAndroid Build Coastguard Workerimport "google/rpc/status.proto"; 30*d5c09012SAndroid Build Coastguard Worker 31*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.Config.V1"; 32*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/config/apiv1/configpb;configpb"; 33*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 34*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "ConfigProto"; 35*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.config.v1"; 36*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\Config\\V1"; 37*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::ConfigService::V1"; 38*d5c09012SAndroid Build Coastguard Workeroption (google.api.resource_definition) = { 39*d5c09012SAndroid Build Coastguard Worker type: "iam.googleapis.com/ServiceAccount" 40*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/serviceAccounts/{service_account}" 41*d5c09012SAndroid Build Coastguard Worker}; 42*d5c09012SAndroid Build Coastguard Workeroption (google.api.resource_definition) = { 43*d5c09012SAndroid Build Coastguard Worker type: "cloudbuild.googleapis.com/WorkerPool" 44*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/workerPools/{worker_pool}" 45*d5c09012SAndroid Build Coastguard Worker}; 46*d5c09012SAndroid Build Coastguard Worker 47*d5c09012SAndroid Build Coastguard Worker// Infrastructure Manager is a managed service that automates the deployment and 48*d5c09012SAndroid Build Coastguard Worker// management of Google Cloud infrastructure resources. 49*d5c09012SAndroid Build Coastguard Workerservice Config { 50*d5c09012SAndroid Build Coastguard Worker option (google.api.default_host) = "config.googleapis.com"; 51*d5c09012SAndroid Build Coastguard Worker option (google.api.oauth_scopes) = 52*d5c09012SAndroid Build Coastguard Worker "https://www.googleapis.com/auth/cloud-platform"; 53*d5c09012SAndroid Build Coastguard Worker 54*d5c09012SAndroid Build Coastguard Worker // Lists [Deployment][google.cloud.config.v1.Deployment]s in a given project 55*d5c09012SAndroid Build Coastguard Worker // and location. 56*d5c09012SAndroid Build Coastguard Worker rpc ListDeployments(ListDeploymentsRequest) 57*d5c09012SAndroid Build Coastguard Worker returns (ListDeploymentsResponse) { 58*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 59*d5c09012SAndroid Build Coastguard Worker get: "/v1/{parent=projects/*/locations/*}/deployments" 60*d5c09012SAndroid Build Coastguard Worker }; 61*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 62*d5c09012SAndroid Build Coastguard Worker } 63*d5c09012SAndroid Build Coastguard Worker 64*d5c09012SAndroid Build Coastguard Worker // Gets details about a [Deployment][google.cloud.config.v1.Deployment]. 65*d5c09012SAndroid Build Coastguard Worker rpc GetDeployment(GetDeploymentRequest) returns (Deployment) { 66*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 67*d5c09012SAndroid Build Coastguard Worker get: "/v1/{name=projects/*/locations/*/deployments/*}" 68*d5c09012SAndroid Build Coastguard Worker }; 69*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 70*d5c09012SAndroid Build Coastguard Worker } 71*d5c09012SAndroid Build Coastguard Worker 72*d5c09012SAndroid Build Coastguard Worker // Creates a [Deployment][google.cloud.config.v1.Deployment]. 73*d5c09012SAndroid Build Coastguard Worker rpc CreateDeployment(CreateDeploymentRequest) 74*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 75*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 76*d5c09012SAndroid Build Coastguard Worker post: "/v1/{parent=projects/*/locations/*}/deployments" 77*d5c09012SAndroid Build Coastguard Worker body: "deployment" 78*d5c09012SAndroid Build Coastguard Worker }; 79*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,deployment,deployment_id"; 80*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 81*d5c09012SAndroid Build Coastguard Worker response_type: "Deployment" 82*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 83*d5c09012SAndroid Build Coastguard Worker }; 84*d5c09012SAndroid Build Coastguard Worker } 85*d5c09012SAndroid Build Coastguard Worker 86*d5c09012SAndroid Build Coastguard Worker // Updates a [Deployment][google.cloud.config.v1.Deployment]. 87*d5c09012SAndroid Build Coastguard Worker rpc UpdateDeployment(UpdateDeploymentRequest) 88*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 89*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 90*d5c09012SAndroid Build Coastguard Worker patch: "/v1/{deployment.name=projects/*/locations/*/deployments/*}" 91*d5c09012SAndroid Build Coastguard Worker body: "deployment" 92*d5c09012SAndroid Build Coastguard Worker }; 93*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "deployment,update_mask"; 94*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 95*d5c09012SAndroid Build Coastguard Worker response_type: "Deployment" 96*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 97*d5c09012SAndroid Build Coastguard Worker }; 98*d5c09012SAndroid Build Coastguard Worker } 99*d5c09012SAndroid Build Coastguard Worker 100*d5c09012SAndroid Build Coastguard Worker // Deletes a [Deployment][google.cloud.config.v1.Deployment]. 101*d5c09012SAndroid Build Coastguard Worker rpc DeleteDeployment(DeleteDeploymentRequest) 102*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 103*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 104*d5c09012SAndroid Build Coastguard Worker delete: "/v1/{name=projects/*/locations/*/deployments/*}" 105*d5c09012SAndroid Build Coastguard Worker }; 106*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 107*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 108*d5c09012SAndroid Build Coastguard Worker response_type: "Deployment" 109*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 110*d5c09012SAndroid Build Coastguard Worker }; 111*d5c09012SAndroid Build Coastguard Worker } 112*d5c09012SAndroid Build Coastguard Worker 113*d5c09012SAndroid Build Coastguard Worker // Lists [Revision][google.cloud.config.v1.Revision]s of a deployment. 114*d5c09012SAndroid Build Coastguard Worker rpc ListRevisions(ListRevisionsRequest) returns (ListRevisionsResponse) { 115*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 116*d5c09012SAndroid Build Coastguard Worker get: "/v1/{parent=projects/*/locations/*/deployments/*}/revisions" 117*d5c09012SAndroid Build Coastguard Worker }; 118*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 119*d5c09012SAndroid Build Coastguard Worker } 120*d5c09012SAndroid Build Coastguard Worker 121*d5c09012SAndroid Build Coastguard Worker // Gets details about a [Revision][google.cloud.config.v1.Revision]. 122*d5c09012SAndroid Build Coastguard Worker rpc GetRevision(GetRevisionRequest) returns (Revision) { 123*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 124*d5c09012SAndroid Build Coastguard Worker get: "/v1/{name=projects/*/locations/*/deployments/*/revisions/*}" 125*d5c09012SAndroid Build Coastguard Worker }; 126*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 127*d5c09012SAndroid Build Coastguard Worker } 128*d5c09012SAndroid Build Coastguard Worker 129*d5c09012SAndroid Build Coastguard Worker // Gets details about a [Resource][google.cloud.config.v1.Resource] deployed 130*d5c09012SAndroid Build Coastguard Worker // by Infra Manager. 131*d5c09012SAndroid Build Coastguard Worker rpc GetResource(GetResourceRequest) returns (Resource) { 132*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 133*d5c09012SAndroid Build Coastguard Worker get: "/v1/{name=projects/*/locations/*/deployments/*/revisions/*/resources/*}" 134*d5c09012SAndroid Build Coastguard Worker }; 135*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 136*d5c09012SAndroid Build Coastguard Worker } 137*d5c09012SAndroid Build Coastguard Worker 138*d5c09012SAndroid Build Coastguard Worker // Lists [Resource][google.cloud.config.v1.Resource]s in a given revision. 139*d5c09012SAndroid Build Coastguard Worker rpc ListResources(ListResourcesRequest) returns (ListResourcesResponse) { 140*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 141*d5c09012SAndroid Build Coastguard Worker get: "/v1/{parent=projects/*/locations/*/deployments/*/revisions/*}/resources" 142*d5c09012SAndroid Build Coastguard Worker }; 143*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 144*d5c09012SAndroid Build Coastguard Worker } 145*d5c09012SAndroid Build Coastguard Worker 146*d5c09012SAndroid Build Coastguard Worker // Exports Terraform state file from a given deployment. 147*d5c09012SAndroid Build Coastguard Worker rpc ExportDeploymentStatefile(ExportDeploymentStatefileRequest) 148*d5c09012SAndroid Build Coastguard Worker returns (Statefile) { 149*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 150*d5c09012SAndroid Build Coastguard Worker post: "/v1/{parent=projects/*/locations/*/deployments/*}:exportState" 151*d5c09012SAndroid Build Coastguard Worker body: "*" 152*d5c09012SAndroid Build Coastguard Worker }; 153*d5c09012SAndroid Build Coastguard Worker } 154*d5c09012SAndroid Build Coastguard Worker 155*d5c09012SAndroid Build Coastguard Worker // Exports Terraform state file from a given revision. 156*d5c09012SAndroid Build Coastguard Worker rpc ExportRevisionStatefile(ExportRevisionStatefileRequest) 157*d5c09012SAndroid Build Coastguard Worker returns (Statefile) { 158*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 159*d5c09012SAndroid Build Coastguard Worker post: "/v1/{parent=projects/*/locations/*/deployments/*/revisions/*}:exportState" 160*d5c09012SAndroid Build Coastguard Worker body: "*" 161*d5c09012SAndroid Build Coastguard Worker }; 162*d5c09012SAndroid Build Coastguard Worker } 163*d5c09012SAndroid Build Coastguard Worker 164*d5c09012SAndroid Build Coastguard Worker // Imports Terraform state file in a given deployment. The state file does not 165*d5c09012SAndroid Build Coastguard Worker // take effect until the Deployment has been unlocked. 166*d5c09012SAndroid Build Coastguard Worker rpc ImportStatefile(ImportStatefileRequest) returns (Statefile) { 167*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 168*d5c09012SAndroid Build Coastguard Worker post: "/v1/{parent=projects/*/locations/*/deployments/*}:importState" 169*d5c09012SAndroid Build Coastguard Worker body: "*" 170*d5c09012SAndroid Build Coastguard Worker }; 171*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,lock_id"; 172*d5c09012SAndroid Build Coastguard Worker } 173*d5c09012SAndroid Build Coastguard Worker 174*d5c09012SAndroid Build Coastguard Worker // Deletes Terraform state file in a given deployment. 175*d5c09012SAndroid Build Coastguard Worker rpc DeleteStatefile(DeleteStatefileRequest) returns (google.protobuf.Empty) { 176*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 177*d5c09012SAndroid Build Coastguard Worker post: "/v1/{name=projects/*/locations/*/deployments/*}:deleteState" 178*d5c09012SAndroid Build Coastguard Worker body: "*" 179*d5c09012SAndroid Build Coastguard Worker }; 180*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 181*d5c09012SAndroid Build Coastguard Worker } 182*d5c09012SAndroid Build Coastguard Worker 183*d5c09012SAndroid Build Coastguard Worker // Locks a deployment. 184*d5c09012SAndroid Build Coastguard Worker rpc LockDeployment(LockDeploymentRequest) 185*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 186*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 187*d5c09012SAndroid Build Coastguard Worker post: "/v1/{name=projects/*/locations/*/deployments/*}:lock" 188*d5c09012SAndroid Build Coastguard Worker body: "*" 189*d5c09012SAndroid Build Coastguard Worker }; 190*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 191*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 192*d5c09012SAndroid Build Coastguard Worker response_type: "Deployment" 193*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 194*d5c09012SAndroid Build Coastguard Worker }; 195*d5c09012SAndroid Build Coastguard Worker } 196*d5c09012SAndroid Build Coastguard Worker 197*d5c09012SAndroid Build Coastguard Worker // Unlocks a locked deployment. 198*d5c09012SAndroid Build Coastguard Worker rpc UnlockDeployment(UnlockDeploymentRequest) 199*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 200*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 201*d5c09012SAndroid Build Coastguard Worker post: "/v1/{name=projects/*/locations/*/deployments/*}:unlock" 202*d5c09012SAndroid Build Coastguard Worker body: "*" 203*d5c09012SAndroid Build Coastguard Worker }; 204*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name,lock_id"; 205*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 206*d5c09012SAndroid Build Coastguard Worker response_type: "Deployment" 207*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 208*d5c09012SAndroid Build Coastguard Worker }; 209*d5c09012SAndroid Build Coastguard Worker } 210*d5c09012SAndroid Build Coastguard Worker 211*d5c09012SAndroid Build Coastguard Worker // Exports the lock info on a locked deployment. 212*d5c09012SAndroid Build Coastguard Worker rpc ExportLockInfo(ExportLockInfoRequest) returns (LockInfo) { 213*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 214*d5c09012SAndroid Build Coastguard Worker get: "/v1/{name=projects/*/locations/*/deployments/*}:exportLock" 215*d5c09012SAndroid Build Coastguard Worker }; 216*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 217*d5c09012SAndroid Build Coastguard Worker } 218*d5c09012SAndroid Build Coastguard Worker 219*d5c09012SAndroid Build Coastguard Worker // Creates a [Preview][google.cloud.config.v1.Preview]. 220*d5c09012SAndroid Build Coastguard Worker rpc CreatePreview(CreatePreviewRequest) 221*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 222*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 223*d5c09012SAndroid Build Coastguard Worker post: "/v1/{parent=projects/*/locations/*}/previews" 224*d5c09012SAndroid Build Coastguard Worker body: "preview" 225*d5c09012SAndroid Build Coastguard Worker }; 226*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent,preview"; 227*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 228*d5c09012SAndroid Build Coastguard Worker response_type: "Preview" 229*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 230*d5c09012SAndroid Build Coastguard Worker }; 231*d5c09012SAndroid Build Coastguard Worker } 232*d5c09012SAndroid Build Coastguard Worker 233*d5c09012SAndroid Build Coastguard Worker // Gets details about a [Preview][google.cloud.config.v1.Preview]. 234*d5c09012SAndroid Build Coastguard Worker rpc GetPreview(GetPreviewRequest) returns (Preview) { 235*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 236*d5c09012SAndroid Build Coastguard Worker get: "/v1/{name=projects/*/locations/*/previews/*}" 237*d5c09012SAndroid Build Coastguard Worker }; 238*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 239*d5c09012SAndroid Build Coastguard Worker } 240*d5c09012SAndroid Build Coastguard Worker 241*d5c09012SAndroid Build Coastguard Worker // Lists [Preview][google.cloud.config.v1.Preview]s in a given project and 242*d5c09012SAndroid Build Coastguard Worker // location. 243*d5c09012SAndroid Build Coastguard Worker rpc ListPreviews(ListPreviewsRequest) returns (ListPreviewsResponse) { 244*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 245*d5c09012SAndroid Build Coastguard Worker get: "/v1/{parent=projects/*/locations/*}/previews" 246*d5c09012SAndroid Build Coastguard Worker }; 247*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 248*d5c09012SAndroid Build Coastguard Worker } 249*d5c09012SAndroid Build Coastguard Worker 250*d5c09012SAndroid Build Coastguard Worker // Deletes a [Preview][google.cloud.config.v1.Preview]. 251*d5c09012SAndroid Build Coastguard Worker rpc DeletePreview(DeletePreviewRequest) 252*d5c09012SAndroid Build Coastguard Worker returns (google.longrunning.Operation) { 253*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 254*d5c09012SAndroid Build Coastguard Worker delete: "/v1/{name=projects/*/locations/*/previews/*}" 255*d5c09012SAndroid Build Coastguard Worker }; 256*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 257*d5c09012SAndroid Build Coastguard Worker option (google.longrunning.operation_info) = { 258*d5c09012SAndroid Build Coastguard Worker response_type: "Preview" 259*d5c09012SAndroid Build Coastguard Worker metadata_type: "OperationMetadata" 260*d5c09012SAndroid Build Coastguard Worker }; 261*d5c09012SAndroid Build Coastguard Worker } 262*d5c09012SAndroid Build Coastguard Worker 263*d5c09012SAndroid Build Coastguard Worker // Export [Preview][google.cloud.config.v1.Preview] results. 264*d5c09012SAndroid Build Coastguard Worker rpc ExportPreviewResult(ExportPreviewResultRequest) 265*d5c09012SAndroid Build Coastguard Worker returns (ExportPreviewResultResponse) { 266*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 267*d5c09012SAndroid Build Coastguard Worker post: "/v1/{parent=projects/*/locations/*/previews/*}:export" 268*d5c09012SAndroid Build Coastguard Worker body: "*" 269*d5c09012SAndroid Build Coastguard Worker }; 270*d5c09012SAndroid Build Coastguard Worker } 271*d5c09012SAndroid Build Coastguard Worker 272*d5c09012SAndroid Build Coastguard Worker // Lists [TerraformVersion][google.cloud.config.v1.TerraformVersion]s in a 273*d5c09012SAndroid Build Coastguard Worker // given project and location. 274*d5c09012SAndroid Build Coastguard Worker rpc ListTerraformVersions(ListTerraformVersionsRequest) 275*d5c09012SAndroid Build Coastguard Worker returns (ListTerraformVersionsResponse) { 276*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 277*d5c09012SAndroid Build Coastguard Worker get: "/v1/{parent=projects/*/locations/*}/terraformVersions" 278*d5c09012SAndroid Build Coastguard Worker }; 279*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 280*d5c09012SAndroid Build Coastguard Worker } 281*d5c09012SAndroid Build Coastguard Worker 282*d5c09012SAndroid Build Coastguard Worker // Gets details about a 283*d5c09012SAndroid Build Coastguard Worker // [TerraformVersion][google.cloud.config.v1.TerraformVersion]. 284*d5c09012SAndroid Build Coastguard Worker rpc GetTerraformVersion(GetTerraformVersionRequest) 285*d5c09012SAndroid Build Coastguard Worker returns (TerraformVersion) { 286*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 287*d5c09012SAndroid Build Coastguard Worker get: "/v1/{name=projects/*/locations/*/terraformVersions/*}" 288*d5c09012SAndroid Build Coastguard Worker }; 289*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "name"; 290*d5c09012SAndroid Build Coastguard Worker } 291*d5c09012SAndroid Build Coastguard Worker} 292*d5c09012SAndroid Build Coastguard Worker 293*d5c09012SAndroid Build Coastguard Worker// Enum values to control quota checks for resources in terraform 294*d5c09012SAndroid Build Coastguard Worker// configuration files. 295*d5c09012SAndroid Build Coastguard Workerenum QuotaValidation { 296*d5c09012SAndroid Build Coastguard Worker // The default value. 297*d5c09012SAndroid Build Coastguard Worker // QuotaValidation on terraform configuration files will be disabled in 298*d5c09012SAndroid Build Coastguard Worker // this case. 299*d5c09012SAndroid Build Coastguard Worker QUOTA_VALIDATION_UNSPECIFIED = 0; 300*d5c09012SAndroid Build Coastguard Worker 301*d5c09012SAndroid Build Coastguard Worker // Enable computing quotas for resources in terraform configuration files to 302*d5c09012SAndroid Build Coastguard Worker // get visibility on resources with insufficient quotas. 303*d5c09012SAndroid Build Coastguard Worker ENABLED = 1; 304*d5c09012SAndroid Build Coastguard Worker 305*d5c09012SAndroid Build Coastguard Worker // Enforce quota checks so deployment fails if there isn't sufficient quotas 306*d5c09012SAndroid Build Coastguard Worker // available to deploy resources in terraform configuration files. 307*d5c09012SAndroid Build Coastguard Worker ENFORCED = 2; 308*d5c09012SAndroid Build Coastguard Worker} 309*d5c09012SAndroid Build Coastguard Worker 310*d5c09012SAndroid Build Coastguard Worker// A Deployment is a group of resources and configs managed and provisioned by 311*d5c09012SAndroid Build Coastguard Worker// Infra Manager. 312*d5c09012SAndroid Build Coastguard Workermessage Deployment { 313*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 314*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Deployment" 315*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/deployments/{deployment}" 316*d5c09012SAndroid Build Coastguard Worker }; 317*d5c09012SAndroid Build Coastguard Worker 318*d5c09012SAndroid Build Coastguard Worker // Possible states of a deployment. 319*d5c09012SAndroid Build Coastguard Worker enum State { 320*d5c09012SAndroid Build Coastguard Worker // The default value. This value is used if the state is omitted. 321*d5c09012SAndroid Build Coastguard Worker STATE_UNSPECIFIED = 0; 322*d5c09012SAndroid Build Coastguard Worker 323*d5c09012SAndroid Build Coastguard Worker // The deployment is being created. 324*d5c09012SAndroid Build Coastguard Worker CREATING = 1; 325*d5c09012SAndroid Build Coastguard Worker 326*d5c09012SAndroid Build Coastguard Worker // The deployment is healthy. 327*d5c09012SAndroid Build Coastguard Worker ACTIVE = 2; 328*d5c09012SAndroid Build Coastguard Worker 329*d5c09012SAndroid Build Coastguard Worker // The deployment is being updated. 330*d5c09012SAndroid Build Coastguard Worker UPDATING = 3; 331*d5c09012SAndroid Build Coastguard Worker 332*d5c09012SAndroid Build Coastguard Worker // The deployment is being deleted. 333*d5c09012SAndroid Build Coastguard Worker DELETING = 4; 334*d5c09012SAndroid Build Coastguard Worker 335*d5c09012SAndroid Build Coastguard Worker // The deployment has encountered an unexpected error. 336*d5c09012SAndroid Build Coastguard Worker FAILED = 5; 337*d5c09012SAndroid Build Coastguard Worker 338*d5c09012SAndroid Build Coastguard Worker // The deployment is no longer being actively reconciled. 339*d5c09012SAndroid Build Coastguard Worker // This may be the result of recovering the project after deletion. 340*d5c09012SAndroid Build Coastguard Worker SUSPENDED = 6; 341*d5c09012SAndroid Build Coastguard Worker 342*d5c09012SAndroid Build Coastguard Worker // The deployment has been deleted. 343*d5c09012SAndroid Build Coastguard Worker DELETED = 7; 344*d5c09012SAndroid Build Coastguard Worker } 345*d5c09012SAndroid Build Coastguard Worker 346*d5c09012SAndroid Build Coastguard Worker // Possible errors that can occur with deployments. 347*d5c09012SAndroid Build Coastguard Worker enum ErrorCode { 348*d5c09012SAndroid Build Coastguard Worker // No error code was specified. 349*d5c09012SAndroid Build Coastguard Worker ERROR_CODE_UNSPECIFIED = 0; 350*d5c09012SAndroid Build Coastguard Worker 351*d5c09012SAndroid Build Coastguard Worker // The revision failed. See Revision for more details. 352*d5c09012SAndroid Build Coastguard Worker REVISION_FAILED = 1; 353*d5c09012SAndroid Build Coastguard Worker 354*d5c09012SAndroid Build Coastguard Worker // Cloud Build failed due to a permission issue. 355*d5c09012SAndroid Build Coastguard Worker CLOUD_BUILD_PERMISSION_DENIED = 3; 356*d5c09012SAndroid Build Coastguard Worker 357*d5c09012SAndroid Build Coastguard Worker // Cloud Build job associated with a deployment deletion could not be 358*d5c09012SAndroid Build Coastguard Worker // started. 359*d5c09012SAndroid Build Coastguard Worker DELETE_BUILD_API_FAILED = 5; 360*d5c09012SAndroid Build Coastguard Worker 361*d5c09012SAndroid Build Coastguard Worker // Cloud Build job associated with a deployment deletion was started but 362*d5c09012SAndroid Build Coastguard Worker // failed. 363*d5c09012SAndroid Build Coastguard Worker DELETE_BUILD_RUN_FAILED = 6; 364*d5c09012SAndroid Build Coastguard Worker 365*d5c09012SAndroid Build Coastguard Worker // Cloud Storage bucket creation failed due to a permission issue. 366*d5c09012SAndroid Build Coastguard Worker BUCKET_CREATION_PERMISSION_DENIED = 7; 367*d5c09012SAndroid Build Coastguard Worker 368*d5c09012SAndroid Build Coastguard Worker // Cloud Storage bucket creation failed due to an issue unrelated to 369*d5c09012SAndroid Build Coastguard Worker // permissions. 370*d5c09012SAndroid Build Coastguard Worker BUCKET_CREATION_FAILED = 8; 371*d5c09012SAndroid Build Coastguard Worker } 372*d5c09012SAndroid Build Coastguard Worker 373*d5c09012SAndroid Build Coastguard Worker // Possible lock states of a deployment. 374*d5c09012SAndroid Build Coastguard Worker enum LockState { 375*d5c09012SAndroid Build Coastguard Worker // The default value. This value is used if the lock state is omitted. 376*d5c09012SAndroid Build Coastguard Worker LOCK_STATE_UNSPECIFIED = 0; 377*d5c09012SAndroid Build Coastguard Worker 378*d5c09012SAndroid Build Coastguard Worker // The deployment is locked. 379*d5c09012SAndroid Build Coastguard Worker LOCKED = 1; 380*d5c09012SAndroid Build Coastguard Worker 381*d5c09012SAndroid Build Coastguard Worker // The deployment is unlocked. 382*d5c09012SAndroid Build Coastguard Worker UNLOCKED = 2; 383*d5c09012SAndroid Build Coastguard Worker 384*d5c09012SAndroid Build Coastguard Worker // The deployment is being locked. 385*d5c09012SAndroid Build Coastguard Worker LOCKING = 3; 386*d5c09012SAndroid Build Coastguard Worker 387*d5c09012SAndroid Build Coastguard Worker // The deployment is being unlocked. 388*d5c09012SAndroid Build Coastguard Worker UNLOCKING = 4; 389*d5c09012SAndroid Build Coastguard Worker 390*d5c09012SAndroid Build Coastguard Worker // The deployment has failed to lock. 391*d5c09012SAndroid Build Coastguard Worker LOCK_FAILED = 5; 392*d5c09012SAndroid Build Coastguard Worker 393*d5c09012SAndroid Build Coastguard Worker // The deployment has failed to unlock. 394*d5c09012SAndroid Build Coastguard Worker UNLOCK_FAILED = 6; 395*d5c09012SAndroid Build Coastguard Worker } 396*d5c09012SAndroid Build Coastguard Worker 397*d5c09012SAndroid Build Coastguard Worker // Blueprint to deploy. 398*d5c09012SAndroid Build Coastguard Worker oneof blueprint { 399*d5c09012SAndroid Build Coastguard Worker // A blueprint described using Terraform's HashiCorp Configuration Language 400*d5c09012SAndroid Build Coastguard Worker // as a root module. 401*d5c09012SAndroid Build Coastguard Worker TerraformBlueprint terraform_blueprint = 6; 402*d5c09012SAndroid Build Coastguard Worker } 403*d5c09012SAndroid Build Coastguard Worker 404*d5c09012SAndroid Build Coastguard Worker // Resource name of the deployment. 405*d5c09012SAndroid Build Coastguard Worker // Format: `projects/{project}/locations/{location}/deployments/{deployment}` 406*d5c09012SAndroid Build Coastguard Worker string name = 1; 407*d5c09012SAndroid Build Coastguard Worker 408*d5c09012SAndroid Build Coastguard Worker // Output only. Time when the deployment was created. 409*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 2 410*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 411*d5c09012SAndroid Build Coastguard Worker 412*d5c09012SAndroid Build Coastguard Worker // Output only. Time when the deployment was last modified. 413*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 3 414*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 415*d5c09012SAndroid Build Coastguard Worker 416*d5c09012SAndroid Build Coastguard Worker // User-defined metadata for the deployment. 417*d5c09012SAndroid Build Coastguard Worker map<string, string> labels = 4; 418*d5c09012SAndroid Build Coastguard Worker 419*d5c09012SAndroid Build Coastguard Worker // Output only. Current state of the deployment. 420*d5c09012SAndroid Build Coastguard Worker State state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; 421*d5c09012SAndroid Build Coastguard Worker 422*d5c09012SAndroid Build Coastguard Worker // Output only. Revision name that was most recently applied. 423*d5c09012SAndroid Build Coastguard Worker // Format: `projects/{project}/locations/{location}/deployments/{deployment}/ 424*d5c09012SAndroid Build Coastguard Worker // revisions/{revision}` 425*d5c09012SAndroid Build Coastguard Worker string latest_revision = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; 426*d5c09012SAndroid Build Coastguard Worker 427*d5c09012SAndroid Build Coastguard Worker // Output only. Additional information regarding the current state. 428*d5c09012SAndroid Build Coastguard Worker string state_detail = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; 429*d5c09012SAndroid Build Coastguard Worker 430*d5c09012SAndroid Build Coastguard Worker // Output only. Error code describing errors that may have occurred. 431*d5c09012SAndroid Build Coastguard Worker ErrorCode error_code = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; 432*d5c09012SAndroid Build Coastguard Worker 433*d5c09012SAndroid Build Coastguard Worker // Output only. Location of artifacts from a DeleteDeployment operation. 434*d5c09012SAndroid Build Coastguard Worker ApplyResults delete_results = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; 435*d5c09012SAndroid Build Coastguard Worker 436*d5c09012SAndroid Build Coastguard Worker // Output only. Cloud Build instance UUID associated with deleting this 437*d5c09012SAndroid Build Coastguard Worker // deployment. 438*d5c09012SAndroid Build Coastguard Worker string delete_build = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; 439*d5c09012SAndroid Build Coastguard Worker 440*d5c09012SAndroid Build Coastguard Worker // Output only. Location of Cloud Build logs in Google Cloud Storage, 441*d5c09012SAndroid Build Coastguard Worker // populated when deleting this deployment. Format: `gs://{bucket}/{object}`. 442*d5c09012SAndroid Build Coastguard Worker string delete_logs = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; 443*d5c09012SAndroid Build Coastguard Worker 444*d5c09012SAndroid Build Coastguard Worker // Output only. Errors encountered when deleting this deployment. 445*d5c09012SAndroid Build Coastguard Worker // Errors are truncated to 10 entries, see `delete_results` and `error_logs` 446*d5c09012SAndroid Build Coastguard Worker // for full details. 447*d5c09012SAndroid Build Coastguard Worker repeated TerraformError tf_errors = 13 448*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 449*d5c09012SAndroid Build Coastguard Worker 450*d5c09012SAndroid Build Coastguard Worker // Output only. Location of Terraform error logs in Google Cloud Storage. 451*d5c09012SAndroid Build Coastguard Worker // Format: `gs://{bucket}/{object}`. 452*d5c09012SAndroid Build Coastguard Worker string error_logs = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; 453*d5c09012SAndroid Build Coastguard Worker 454*d5c09012SAndroid Build Coastguard Worker // Optional. User-defined location of Cloud Build logs and artifacts in Google 455*d5c09012SAndroid Build Coastguard Worker // Cloud Storage. Format: `gs://{bucket}/{folder}` 456*d5c09012SAndroid Build Coastguard Worker // 457*d5c09012SAndroid Build Coastguard Worker // A default bucket will be bootstrapped if the field is not set or empty. 458*d5c09012SAndroid Build Coastguard Worker // Default bucket format: `gs://<project number>-<region>-blueprint-config` 459*d5c09012SAndroid Build Coastguard Worker // Constraints: 460*d5c09012SAndroid Build Coastguard Worker // - The bucket needs to be in the same project as the deployment 461*d5c09012SAndroid Build Coastguard Worker // - The path cannot be within the path of `gcs_source` 462*d5c09012SAndroid Build Coastguard Worker // - The field cannot be updated, including changing its presence 463*d5c09012SAndroid Build Coastguard Worker optional string artifacts_gcs_bucket = 15 464*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 465*d5c09012SAndroid Build Coastguard Worker 466*d5c09012SAndroid Build Coastguard Worker // Optional. User-specified Service Account (SA) credentials to be used when 467*d5c09012SAndroid Build Coastguard Worker // actuating resources. 468*d5c09012SAndroid Build Coastguard Worker // Format: `projects/{projectID}/serviceAccounts/{serviceAccount}` 469*d5c09012SAndroid Build Coastguard Worker optional string service_account = 16 [ 470*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OPTIONAL, 471*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 472*d5c09012SAndroid Build Coastguard Worker type: "iam.googleapis.com/ServiceAccount" 473*d5c09012SAndroid Build Coastguard Worker } 474*d5c09012SAndroid Build Coastguard Worker ]; 475*d5c09012SAndroid Build Coastguard Worker 476*d5c09012SAndroid Build Coastguard Worker // By default, Infra Manager will return a failure when 477*d5c09012SAndroid Build Coastguard Worker // Terraform encounters a 409 code (resource conflict error) during actuation. 478*d5c09012SAndroid Build Coastguard Worker // If this flag is set to true, Infra Manager will instead 479*d5c09012SAndroid Build Coastguard Worker // attempt to automatically import the resource into the Terraform state (for 480*d5c09012SAndroid Build Coastguard Worker // supported resource types) and continue actuation. 481*d5c09012SAndroid Build Coastguard Worker // 482*d5c09012SAndroid Build Coastguard Worker // Not all resource types are supported, refer to documentation. 483*d5c09012SAndroid Build Coastguard Worker optional bool import_existing_resources = 17; 484*d5c09012SAndroid Build Coastguard Worker 485*d5c09012SAndroid Build Coastguard Worker // Optional. The user-specified Cloud Build worker pool resource in which the 486*d5c09012SAndroid Build Coastguard Worker // Cloud Build job will execute. Format: 487*d5c09012SAndroid Build Coastguard Worker // `projects/{project}/locations/{location}/workerPools/{workerPoolId}`. 488*d5c09012SAndroid Build Coastguard Worker // If this field is unspecified, the default Cloud Build worker pool will be 489*d5c09012SAndroid Build Coastguard Worker // used. 490*d5c09012SAndroid Build Coastguard Worker optional string worker_pool = 19 [ 491*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OPTIONAL, 492*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 493*d5c09012SAndroid Build Coastguard Worker type: "cloudbuild.googleapis.com/WorkerPool" 494*d5c09012SAndroid Build Coastguard Worker } 495*d5c09012SAndroid Build Coastguard Worker ]; 496*d5c09012SAndroid Build Coastguard Worker 497*d5c09012SAndroid Build Coastguard Worker // Output only. Current lock state of the deployment. 498*d5c09012SAndroid Build Coastguard Worker LockState lock_state = 20 [(google.api.field_behavior) = OUTPUT_ONLY]; 499*d5c09012SAndroid Build Coastguard Worker 500*d5c09012SAndroid Build Coastguard Worker // Optional. The user-specified Terraform version constraint. 501*d5c09012SAndroid Build Coastguard Worker // Example: "=1.3.10". 502*d5c09012SAndroid Build Coastguard Worker optional string tf_version_constraint = 21 503*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 504*d5c09012SAndroid Build Coastguard Worker 505*d5c09012SAndroid Build Coastguard Worker // Output only. The current Terraform version set on the deployment. 506*d5c09012SAndroid Build Coastguard Worker // It is in the format of "Major.Minor.Patch", for example, "1.3.10". 507*d5c09012SAndroid Build Coastguard Worker string tf_version = 22 [(google.api.field_behavior) = OUTPUT_ONLY]; 508*d5c09012SAndroid Build Coastguard Worker 509*d5c09012SAndroid Build Coastguard Worker // Optional. Input to control quota checks for resources in terraform 510*d5c09012SAndroid Build Coastguard Worker // configuration files. There are limited resources on which quota validation 511*d5c09012SAndroid Build Coastguard Worker // applies. 512*d5c09012SAndroid Build Coastguard Worker QuotaValidation quota_validation = 23 513*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 514*d5c09012SAndroid Build Coastguard Worker 515*d5c09012SAndroid Build Coastguard Worker // Optional. Arbitrary key-value metadata storage e.g. to help client tools 516*d5c09012SAndroid Build Coastguard Worker // identify deployments during automation. See 517*d5c09012SAndroid Build Coastguard Worker // https://google.aip.dev/148#annotations for details on format and size 518*d5c09012SAndroid Build Coastguard Worker // limitations. 519*d5c09012SAndroid Build Coastguard Worker map<string, string> annotations = 24 [(google.api.field_behavior) = OPTIONAL]; 520*d5c09012SAndroid Build Coastguard Worker} 521*d5c09012SAndroid Build Coastguard Worker 522*d5c09012SAndroid Build Coastguard Worker// TerraformBlueprint describes the source of a Terraform root module which 523*d5c09012SAndroid Build Coastguard Worker// describes the resources and configs to be deployed. 524*d5c09012SAndroid Build Coastguard Workermessage TerraformBlueprint { 525*d5c09012SAndroid Build Coastguard Worker // Location of the source configs. 526*d5c09012SAndroid Build Coastguard Worker oneof source { 527*d5c09012SAndroid Build Coastguard Worker // Required. URI of an object in Google Cloud Storage. 528*d5c09012SAndroid Build Coastguard Worker // Format: `gs://{bucket}/{object}` 529*d5c09012SAndroid Build Coastguard Worker // 530*d5c09012SAndroid Build Coastguard Worker // URI may also specify an object version for zipped objects. 531*d5c09012SAndroid Build Coastguard Worker // Format: `gs://{bucket}/{object}#{version}` 532*d5c09012SAndroid Build Coastguard Worker string gcs_source = 1 [(google.api.field_behavior) = REQUIRED]; 533*d5c09012SAndroid Build Coastguard Worker 534*d5c09012SAndroid Build Coastguard Worker // Required. URI of a public Git repo. 535*d5c09012SAndroid Build Coastguard Worker GitSource git_source = 2 [(google.api.field_behavior) = REQUIRED]; 536*d5c09012SAndroid Build Coastguard Worker } 537*d5c09012SAndroid Build Coastguard Worker 538*d5c09012SAndroid Build Coastguard Worker // Input variable values for the Terraform blueprint. 539*d5c09012SAndroid Build Coastguard Worker map<string, TerraformVariable> input_values = 4; 540*d5c09012SAndroid Build Coastguard Worker} 541*d5c09012SAndroid Build Coastguard Worker 542*d5c09012SAndroid Build Coastguard Worker// A Terraform input variable. 543*d5c09012SAndroid Build Coastguard Workermessage TerraformVariable { 544*d5c09012SAndroid Build Coastguard Worker // Input variable value. 545*d5c09012SAndroid Build Coastguard Worker google.protobuf.Value input_value = 5; 546*d5c09012SAndroid Build Coastguard Worker} 547*d5c09012SAndroid Build Coastguard Worker 548*d5c09012SAndroid Build Coastguard Worker// Outputs and artifacts from applying a deployment. 549*d5c09012SAndroid Build Coastguard Workermessage ApplyResults { 550*d5c09012SAndroid Build Coastguard Worker // Location of a blueprint copy and other manifests in Google Cloud Storage. 551*d5c09012SAndroid Build Coastguard Worker // Format: `gs://{bucket}/{object}` 552*d5c09012SAndroid Build Coastguard Worker string content = 1; 553*d5c09012SAndroid Build Coastguard Worker 554*d5c09012SAndroid Build Coastguard Worker // Location of artifacts (e.g. logs) in Google Cloud Storage. 555*d5c09012SAndroid Build Coastguard Worker // Format: `gs://{bucket}/{object}` 556*d5c09012SAndroid Build Coastguard Worker string artifacts = 2; 557*d5c09012SAndroid Build Coastguard Worker 558*d5c09012SAndroid Build Coastguard Worker // Map of output name to output info. 559*d5c09012SAndroid Build Coastguard Worker map<string, TerraformOutput> outputs = 3; 560*d5c09012SAndroid Build Coastguard Worker} 561*d5c09012SAndroid Build Coastguard Worker 562*d5c09012SAndroid Build Coastguard Worker// Describes a Terraform output. 563*d5c09012SAndroid Build Coastguard Workermessage TerraformOutput { 564*d5c09012SAndroid Build Coastguard Worker // Identifies whether Terraform has set this output as a potential 565*d5c09012SAndroid Build Coastguard Worker // sensitive value. 566*d5c09012SAndroid Build Coastguard Worker bool sensitive = 1; 567*d5c09012SAndroid Build Coastguard Worker 568*d5c09012SAndroid Build Coastguard Worker // Value of output. 569*d5c09012SAndroid Build Coastguard Worker google.protobuf.Value value = 2; 570*d5c09012SAndroid Build Coastguard Worker} 571*d5c09012SAndroid Build Coastguard Worker 572*d5c09012SAndroid Build Coastguard Workermessage ListDeploymentsRequest { 573*d5c09012SAndroid Build Coastguard Worker // Required. The parent in whose context the Deployments are listed. The 574*d5c09012SAndroid Build Coastguard Worker // parent value is in the format: 575*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}'. 576*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 577*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 578*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 579*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 580*d5c09012SAndroid Build Coastguard Worker } 581*d5c09012SAndroid Build Coastguard Worker ]; 582*d5c09012SAndroid Build Coastguard Worker 583*d5c09012SAndroid Build Coastguard Worker // When requesting a page of resources, 'page_size' specifies number of 584*d5c09012SAndroid Build Coastguard Worker // resources to return. If unspecified, at most 500 will be returned. The 585*d5c09012SAndroid Build Coastguard Worker // maximum value is 1000. 586*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 587*d5c09012SAndroid Build Coastguard Worker 588*d5c09012SAndroid Build Coastguard Worker // Token returned by previous call to 'ListDeployments' which specifies the 589*d5c09012SAndroid Build Coastguard Worker // position in the list from where to continue listing the resources. 590*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 591*d5c09012SAndroid Build Coastguard Worker 592*d5c09012SAndroid Build Coastguard Worker // Lists the Deployments that match the filter expression. A filter 593*d5c09012SAndroid Build Coastguard Worker // expression filters the resources listed in the response. The expression 594*d5c09012SAndroid Build Coastguard Worker // must be of the form '{field} {operator} {value}' where operators: '<', '>', 595*d5c09012SAndroid Build Coastguard Worker // '<=', '>=', '!=', '=', ':' are supported (colon ':' represents a HAS 596*d5c09012SAndroid Build Coastguard Worker // operator which is roughly synonymous with equality). {field} can refer to a 597*d5c09012SAndroid Build Coastguard Worker // proto or JSON field, or a synthetic field. Field names can be camelCase or 598*d5c09012SAndroid Build Coastguard Worker // snake_case. 599*d5c09012SAndroid Build Coastguard Worker // 600*d5c09012SAndroid Build Coastguard Worker // Examples: 601*d5c09012SAndroid Build Coastguard Worker // - Filter by name: 602*d5c09012SAndroid Build Coastguard Worker // name = "projects/foo/locations/us-central1/deployments/bar 603*d5c09012SAndroid Build Coastguard Worker // 604*d5c09012SAndroid Build Coastguard Worker // - Filter by labels: 605*d5c09012SAndroid Build Coastguard Worker // - Resources that have a key called 'foo' 606*d5c09012SAndroid Build Coastguard Worker // labels.foo:* 607*d5c09012SAndroid Build Coastguard Worker // - Resources that have a key called 'foo' whose value is 'bar' 608*d5c09012SAndroid Build Coastguard Worker // labels.foo = bar 609*d5c09012SAndroid Build Coastguard Worker // 610*d5c09012SAndroid Build Coastguard Worker // - Filter by state: 611*d5c09012SAndroid Build Coastguard Worker // - Deployments in CREATING state. 612*d5c09012SAndroid Build Coastguard Worker // state=CREATING 613*d5c09012SAndroid Build Coastguard Worker string filter = 4; 614*d5c09012SAndroid Build Coastguard Worker 615*d5c09012SAndroid Build Coastguard Worker // Field to use to sort the list. 616*d5c09012SAndroid Build Coastguard Worker string order_by = 5; 617*d5c09012SAndroid Build Coastguard Worker} 618*d5c09012SAndroid Build Coastguard Worker 619*d5c09012SAndroid Build Coastguard Workermessage ListDeploymentsResponse { 620*d5c09012SAndroid Build Coastguard Worker // List of [Deployment][google.cloud.config.v1.Deployment]s. 621*d5c09012SAndroid Build Coastguard Worker repeated Deployment deployments = 1; 622*d5c09012SAndroid Build Coastguard Worker 623*d5c09012SAndroid Build Coastguard Worker // Token to be supplied to the next ListDeployments request via `page_token` 624*d5c09012SAndroid Build Coastguard Worker // to obtain the next set of results. 625*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 626*d5c09012SAndroid Build Coastguard Worker 627*d5c09012SAndroid Build Coastguard Worker // Locations that could not be reached. 628*d5c09012SAndroid Build Coastguard Worker repeated string unreachable = 3; 629*d5c09012SAndroid Build Coastguard Worker} 630*d5c09012SAndroid Build Coastguard Worker 631*d5c09012SAndroid Build Coastguard Workermessage GetDeploymentRequest { 632*d5c09012SAndroid Build Coastguard Worker // Required. The name of the deployment. Format: 633*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}'. 634*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 635*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 636*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 637*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Deployment" 638*d5c09012SAndroid Build Coastguard Worker } 639*d5c09012SAndroid Build Coastguard Worker ]; 640*d5c09012SAndroid Build Coastguard Worker} 641*d5c09012SAndroid Build Coastguard Worker 642*d5c09012SAndroid Build Coastguard Worker// A request to list Revisions passed to a 'ListRevisions' call. 643*d5c09012SAndroid Build Coastguard Workermessage ListRevisionsRequest { 644*d5c09012SAndroid Build Coastguard Worker // Required. The parent in whose context the Revisions are listed. The parent 645*d5c09012SAndroid Build Coastguard Worker // value is in the format: 646*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}'. 647*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 648*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 649*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 650*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Deployment" 651*d5c09012SAndroid Build Coastguard Worker } 652*d5c09012SAndroid Build Coastguard Worker ]; 653*d5c09012SAndroid Build Coastguard Worker 654*d5c09012SAndroid Build Coastguard Worker // When requesting a page of resources, `page_size` specifies number of 655*d5c09012SAndroid Build Coastguard Worker // resources to return. If unspecified, at most 500 will be returned. The 656*d5c09012SAndroid Build Coastguard Worker // maximum value is 1000. 657*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 658*d5c09012SAndroid Build Coastguard Worker 659*d5c09012SAndroid Build Coastguard Worker // Token returned by previous call to 'ListRevisions' which specifies the 660*d5c09012SAndroid Build Coastguard Worker // position in the list from where to continue listing the resources. 661*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 662*d5c09012SAndroid Build Coastguard Worker 663*d5c09012SAndroid Build Coastguard Worker // Lists the Revisions that match the filter expression. A filter 664*d5c09012SAndroid Build Coastguard Worker // expression filters the resources listed in the response. The expression 665*d5c09012SAndroid Build Coastguard Worker // must be of the form '{field} {operator} {value}' where operators: '<', '>', 666*d5c09012SAndroid Build Coastguard Worker // '<=', '>=', '!=', '=', ':' are supported (colon ':' represents a HAS 667*d5c09012SAndroid Build Coastguard Worker // operator which is roughly synonymous with equality). {field} can refer to a 668*d5c09012SAndroid Build Coastguard Worker // proto or JSON field, or a synthetic field. Field names can be camelCase or 669*d5c09012SAndroid Build Coastguard Worker // snake_case. 670*d5c09012SAndroid Build Coastguard Worker // 671*d5c09012SAndroid Build Coastguard Worker // Examples: 672*d5c09012SAndroid Build Coastguard Worker // - Filter by name: 673*d5c09012SAndroid Build Coastguard Worker // name = "projects/foo/locations/us-central1/deployments/dep/revisions/bar 674*d5c09012SAndroid Build Coastguard Worker // 675*d5c09012SAndroid Build Coastguard Worker // - Filter by labels: 676*d5c09012SAndroid Build Coastguard Worker // - Resources that have a key called 'foo' 677*d5c09012SAndroid Build Coastguard Worker // labels.foo:* 678*d5c09012SAndroid Build Coastguard Worker // - Resources that have a key called 'foo' whose value is 'bar' 679*d5c09012SAndroid Build Coastguard Worker // labels.foo = bar 680*d5c09012SAndroid Build Coastguard Worker // 681*d5c09012SAndroid Build Coastguard Worker // - Filter by state: 682*d5c09012SAndroid Build Coastguard Worker // - Revisions in CREATING state. 683*d5c09012SAndroid Build Coastguard Worker // state=CREATING 684*d5c09012SAndroid Build Coastguard Worker string filter = 4; 685*d5c09012SAndroid Build Coastguard Worker 686*d5c09012SAndroid Build Coastguard Worker // Field to use to sort the list. 687*d5c09012SAndroid Build Coastguard Worker string order_by = 5; 688*d5c09012SAndroid Build Coastguard Worker} 689*d5c09012SAndroid Build Coastguard Worker 690*d5c09012SAndroid Build Coastguard Worker// A response to a 'ListRevisions' call. Contains a list of Revisions. 691*d5c09012SAndroid Build Coastguard Workermessage ListRevisionsResponse { 692*d5c09012SAndroid Build Coastguard Worker // List of [Revision][google.cloud.config.v1.Revision]s. 693*d5c09012SAndroid Build Coastguard Worker repeated Revision revisions = 1; 694*d5c09012SAndroid Build Coastguard Worker 695*d5c09012SAndroid Build Coastguard Worker // A token to request the next page of resources from the 'ListRevisions' 696*d5c09012SAndroid Build Coastguard Worker // method. The value of an empty string means that there are no more resources 697*d5c09012SAndroid Build Coastguard Worker // to return. 698*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 699*d5c09012SAndroid Build Coastguard Worker 700*d5c09012SAndroid Build Coastguard Worker // Locations that could not be reached. 701*d5c09012SAndroid Build Coastguard Worker repeated string unreachable = 3; 702*d5c09012SAndroid Build Coastguard Worker} 703*d5c09012SAndroid Build Coastguard Worker 704*d5c09012SAndroid Build Coastguard Worker// A request to get a Revision from a 'GetRevision' call. 705*d5c09012SAndroid Build Coastguard Workermessage GetRevisionRequest { 706*d5c09012SAndroid Build Coastguard Worker // Required. The name of the Revision in the format: 707*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}/revisions/{revision}'. 708*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 709*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 710*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "config.googleapis.com/Revision" } 711*d5c09012SAndroid Build Coastguard Worker ]; 712*d5c09012SAndroid Build Coastguard Worker} 713*d5c09012SAndroid Build Coastguard Worker 714*d5c09012SAndroid Build Coastguard Workermessage CreateDeploymentRequest { 715*d5c09012SAndroid Build Coastguard Worker // Required. The parent in whose context the Deployment is created. The parent 716*d5c09012SAndroid Build Coastguard Worker // value is in the format: 'projects/{project_id}/locations/{location}'. 717*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 718*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 719*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 720*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 721*d5c09012SAndroid Build Coastguard Worker } 722*d5c09012SAndroid Build Coastguard Worker ]; 723*d5c09012SAndroid Build Coastguard Worker 724*d5c09012SAndroid Build Coastguard Worker // Required. The Deployment ID. 725*d5c09012SAndroid Build Coastguard Worker string deployment_id = 2 [(google.api.field_behavior) = REQUIRED]; 726*d5c09012SAndroid Build Coastguard Worker 727*d5c09012SAndroid Build Coastguard Worker // Required. [Deployment][google.cloud.config.v1.Deployment] resource to be 728*d5c09012SAndroid Build Coastguard Worker // created. 729*d5c09012SAndroid Build Coastguard Worker Deployment deployment = 3 [(google.api.field_behavior) = REQUIRED]; 730*d5c09012SAndroid Build Coastguard Worker 731*d5c09012SAndroid Build Coastguard Worker // Optional. An optional request ID to identify requests. Specify a unique 732*d5c09012SAndroid Build Coastguard Worker // request ID so that if you must retry your request, the server will know to 733*d5c09012SAndroid Build Coastguard Worker // ignore the request if it has already been completed. The server will 734*d5c09012SAndroid Build Coastguard Worker // guarantee that for at least 60 minutes since the first request. 735*d5c09012SAndroid Build Coastguard Worker // 736*d5c09012SAndroid Build Coastguard Worker // For example, consider a situation where you make an initial request and the 737*d5c09012SAndroid Build Coastguard Worker // request times out. If you make the request again with the same request ID, 738*d5c09012SAndroid Build Coastguard Worker // the server can check if original operation with the same request ID was 739*d5c09012SAndroid Build Coastguard Worker // received, and if so, will ignore the second request. This prevents clients 740*d5c09012SAndroid Build Coastguard Worker // from accidentally creating duplicate commitments. 741*d5c09012SAndroid Build Coastguard Worker // 742*d5c09012SAndroid Build Coastguard Worker // The request ID must be a valid UUID with the exception that zero UUID is 743*d5c09012SAndroid Build Coastguard Worker // not supported (00000000-0000-0000-0000-000000000000). 744*d5c09012SAndroid Build Coastguard Worker string request_id = 4 [(google.api.field_behavior) = OPTIONAL]; 745*d5c09012SAndroid Build Coastguard Worker} 746*d5c09012SAndroid Build Coastguard Worker 747*d5c09012SAndroid Build Coastguard Workermessage UpdateDeploymentRequest { 748*d5c09012SAndroid Build Coastguard Worker // Optional. Field mask used to specify the fields to be overwritten in the 749*d5c09012SAndroid Build Coastguard Worker // Deployment resource by the update. 750*d5c09012SAndroid Build Coastguard Worker // 751*d5c09012SAndroid Build Coastguard Worker // The fields specified in the update_mask are relative to the resource, not 752*d5c09012SAndroid Build Coastguard Worker // the full request. A field will be overwritten if it is in the mask. If the 753*d5c09012SAndroid Build Coastguard Worker // user does not provide a mask then all fields will be overwritten. 754*d5c09012SAndroid Build Coastguard Worker google.protobuf.FieldMask update_mask = 1 755*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 756*d5c09012SAndroid Build Coastguard Worker 757*d5c09012SAndroid Build Coastguard Worker // Required. [Deployment][google.cloud.config.v1.Deployment] to update. 758*d5c09012SAndroid Build Coastguard Worker // 759*d5c09012SAndroid Build Coastguard Worker // The deployment's `name` field is used to identify the resource to be 760*d5c09012SAndroid Build Coastguard Worker // updated. Format: 761*d5c09012SAndroid Build Coastguard Worker // `projects/{project}/locations/{location}/deployments/{deployment}` 762*d5c09012SAndroid Build Coastguard Worker Deployment deployment = 2 [(google.api.field_behavior) = REQUIRED]; 763*d5c09012SAndroid Build Coastguard Worker 764*d5c09012SAndroid Build Coastguard Worker // Optional. An optional request ID to identify requests. Specify a unique 765*d5c09012SAndroid Build Coastguard Worker // request ID so that if you must retry your request, the server will know to 766*d5c09012SAndroid Build Coastguard Worker // ignore the request if it has already been completed. The server will 767*d5c09012SAndroid Build Coastguard Worker // guarantee that for at least 60 minutes since the first request. 768*d5c09012SAndroid Build Coastguard Worker // 769*d5c09012SAndroid Build Coastguard Worker // For example, consider a situation where you make an initial request and the 770*d5c09012SAndroid Build Coastguard Worker // request times out. If you make the request again with the same request ID, 771*d5c09012SAndroid Build Coastguard Worker // the server can check if original operation with the same request ID was 772*d5c09012SAndroid Build Coastguard Worker // received, and if so, will ignore the second request. This prevents clients 773*d5c09012SAndroid Build Coastguard Worker // from accidentally creating duplicate commitments. 774*d5c09012SAndroid Build Coastguard Worker // 775*d5c09012SAndroid Build Coastguard Worker // The request ID must be a valid UUID with the exception that zero UUID is 776*d5c09012SAndroid Build Coastguard Worker // not supported (00000000-0000-0000-0000-000000000000). 777*d5c09012SAndroid Build Coastguard Worker string request_id = 3 [(google.api.field_behavior) = OPTIONAL]; 778*d5c09012SAndroid Build Coastguard Worker} 779*d5c09012SAndroid Build Coastguard Worker 780*d5c09012SAndroid Build Coastguard Workermessage DeleteDeploymentRequest { 781*d5c09012SAndroid Build Coastguard Worker // Policy on how resources actuated by the deployment should be deleted. 782*d5c09012SAndroid Build Coastguard Worker enum DeletePolicy { 783*d5c09012SAndroid Build Coastguard Worker // Unspecified policy, resources will be deleted. 784*d5c09012SAndroid Build Coastguard Worker DELETE_POLICY_UNSPECIFIED = 0; 785*d5c09012SAndroid Build Coastguard Worker 786*d5c09012SAndroid Build Coastguard Worker // Deletes resources actuated by the deployment. 787*d5c09012SAndroid Build Coastguard Worker DELETE = 1; 788*d5c09012SAndroid Build Coastguard Worker 789*d5c09012SAndroid Build Coastguard Worker // Abandons resources and only deletes the deployment and its metadata. 790*d5c09012SAndroid Build Coastguard Worker ABANDON = 2; 791*d5c09012SAndroid Build Coastguard Worker } 792*d5c09012SAndroid Build Coastguard Worker 793*d5c09012SAndroid Build Coastguard Worker // Required. The name of the Deployment in the format: 794*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}'. 795*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 796*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 797*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 798*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Deployment" 799*d5c09012SAndroid Build Coastguard Worker } 800*d5c09012SAndroid Build Coastguard Worker ]; 801*d5c09012SAndroid Build Coastguard Worker 802*d5c09012SAndroid Build Coastguard Worker // Optional. An optional request ID to identify requests. Specify a unique 803*d5c09012SAndroid Build Coastguard Worker // request ID so that if you must retry your request, the server will know to 804*d5c09012SAndroid Build Coastguard Worker // ignore the request if it has already been completed. The server will 805*d5c09012SAndroid Build Coastguard Worker // guarantee that for at least 60 minutes after the first request. 806*d5c09012SAndroid Build Coastguard Worker // 807*d5c09012SAndroid Build Coastguard Worker // For example, consider a situation where you make an initial request and the 808*d5c09012SAndroid Build Coastguard Worker // request times out. If you make the request again with the same request ID, 809*d5c09012SAndroid Build Coastguard Worker // the server can check if original operation with the same request ID was 810*d5c09012SAndroid Build Coastguard Worker // received, and if so, will ignore the second request. This prevents clients 811*d5c09012SAndroid Build Coastguard Worker // from accidentally creating duplicate commitments. 812*d5c09012SAndroid Build Coastguard Worker // 813*d5c09012SAndroid Build Coastguard Worker // The request ID must be a valid UUID with the exception that zero UUID is 814*d5c09012SAndroid Build Coastguard Worker // not supported (00000000-0000-0000-0000-000000000000). 815*d5c09012SAndroid Build Coastguard Worker string request_id = 2 [(google.api.field_behavior) = OPTIONAL]; 816*d5c09012SAndroid Build Coastguard Worker 817*d5c09012SAndroid Build Coastguard Worker // Optional. If set to true, any revisions for this deployment will also be 818*d5c09012SAndroid Build Coastguard Worker // deleted. (Otherwise, the request will only work if the deployment has no 819*d5c09012SAndroid Build Coastguard Worker // revisions.) 820*d5c09012SAndroid Build Coastguard Worker bool force = 3 [(google.api.field_behavior) = OPTIONAL]; 821*d5c09012SAndroid Build Coastguard Worker 822*d5c09012SAndroid Build Coastguard Worker // Optional. Policy on how resources actuated by the deployment should be 823*d5c09012SAndroid Build Coastguard Worker // deleted. If unspecified, the default behavior is to delete the underlying 824*d5c09012SAndroid Build Coastguard Worker // resources. 825*d5c09012SAndroid Build Coastguard Worker DeletePolicy delete_policy = 4 [(google.api.field_behavior) = OPTIONAL]; 826*d5c09012SAndroid Build Coastguard Worker} 827*d5c09012SAndroid Build Coastguard Worker 828*d5c09012SAndroid Build Coastguard Worker// Represents the metadata of the long-running operation. 829*d5c09012SAndroid Build Coastguard Workermessage OperationMetadata { 830*d5c09012SAndroid Build Coastguard Worker // Ephemeral metadata about the state of an operation for a particular 831*d5c09012SAndroid Build Coastguard Worker // resource. 832*d5c09012SAndroid Build Coastguard Worker oneof resource_metadata { 833*d5c09012SAndroid Build Coastguard Worker // Output only. Metadata about the deployment operation state. 834*d5c09012SAndroid Build Coastguard Worker DeploymentOperationMetadata deployment_metadata = 8 835*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 836*d5c09012SAndroid Build Coastguard Worker 837*d5c09012SAndroid Build Coastguard Worker // Output only. Metadata about the preview operation state. 838*d5c09012SAndroid Build Coastguard Worker PreviewOperationMetadata preview_metadata = 9 839*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 840*d5c09012SAndroid Build Coastguard Worker } 841*d5c09012SAndroid Build Coastguard Worker 842*d5c09012SAndroid Build Coastguard Worker // Output only. Time when the operation was created. 843*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 1 844*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 845*d5c09012SAndroid Build Coastguard Worker 846*d5c09012SAndroid Build Coastguard Worker // Output only. Time when the operation finished running. 847*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp end_time = 2 848*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 849*d5c09012SAndroid Build Coastguard Worker 850*d5c09012SAndroid Build Coastguard Worker // Output only. Server-defined resource path for the target of the operation. 851*d5c09012SAndroid Build Coastguard Worker string target = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; 852*d5c09012SAndroid Build Coastguard Worker 853*d5c09012SAndroid Build Coastguard Worker // Output only. Name of the verb executed by the operation. 854*d5c09012SAndroid Build Coastguard Worker string verb = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; 855*d5c09012SAndroid Build Coastguard Worker 856*d5c09012SAndroid Build Coastguard Worker // Output only. Human-readable status of the operation, if any. 857*d5c09012SAndroid Build Coastguard Worker string status_message = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; 858*d5c09012SAndroid Build Coastguard Worker 859*d5c09012SAndroid Build Coastguard Worker // Output only. Identifies whether the user has requested cancellation of the 860*d5c09012SAndroid Build Coastguard Worker // operation. Operations that have successfully been cancelled have 861*d5c09012SAndroid Build Coastguard Worker // [Operation.error][] value with a 862*d5c09012SAndroid Build Coastguard Worker // [google.rpc.Status.code][google.rpc.Status.code] of 1, corresponding to 863*d5c09012SAndroid Build Coastguard Worker // `Code.CANCELLED`. 864*d5c09012SAndroid Build Coastguard Worker bool requested_cancellation = 6 [(google.api.field_behavior) = OUTPUT_ONLY]; 865*d5c09012SAndroid Build Coastguard Worker 866*d5c09012SAndroid Build Coastguard Worker // Output only. API version used to start the operation. 867*d5c09012SAndroid Build Coastguard Worker string api_version = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; 868*d5c09012SAndroid Build Coastguard Worker} 869*d5c09012SAndroid Build Coastguard Worker 870*d5c09012SAndroid Build Coastguard Worker// A child resource of a Deployment generated by a 'CreateDeployment' or 871*d5c09012SAndroid Build Coastguard Worker// 'UpdateDeployment' call. Each Revision contains metadata pertaining to a 872*d5c09012SAndroid Build Coastguard Worker// snapshot of a particular Deployment. 873*d5c09012SAndroid Build Coastguard Workermessage Revision { 874*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 875*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Revision" 876*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/deployments/{deployment}/revisions/{revision}" 877*d5c09012SAndroid Build Coastguard Worker }; 878*d5c09012SAndroid Build Coastguard Worker 879*d5c09012SAndroid Build Coastguard Worker // Actions that generate a revision. 880*d5c09012SAndroid Build Coastguard Worker enum Action { 881*d5c09012SAndroid Build Coastguard Worker // The default value. This value is used if the action is omitted. 882*d5c09012SAndroid Build Coastguard Worker ACTION_UNSPECIFIED = 0; 883*d5c09012SAndroid Build Coastguard Worker 884*d5c09012SAndroid Build Coastguard Worker // The revision was generated by creating a deployment. 885*d5c09012SAndroid Build Coastguard Worker CREATE = 1; 886*d5c09012SAndroid Build Coastguard Worker 887*d5c09012SAndroid Build Coastguard Worker // The revision was generated by updating a deployment. 888*d5c09012SAndroid Build Coastguard Worker UPDATE = 2; 889*d5c09012SAndroid Build Coastguard Worker 890*d5c09012SAndroid Build Coastguard Worker // The revision was deleted. 891*d5c09012SAndroid Build Coastguard Worker DELETE = 3; 892*d5c09012SAndroid Build Coastguard Worker } 893*d5c09012SAndroid Build Coastguard Worker 894*d5c09012SAndroid Build Coastguard Worker // Possible states of a revision. 895*d5c09012SAndroid Build Coastguard Worker enum State { 896*d5c09012SAndroid Build Coastguard Worker // The default value. This value is used if the state is omitted. 897*d5c09012SAndroid Build Coastguard Worker STATE_UNSPECIFIED = 0; 898*d5c09012SAndroid Build Coastguard Worker 899*d5c09012SAndroid Build Coastguard Worker // The revision is being applied. 900*d5c09012SAndroid Build Coastguard Worker APPLYING = 1; 901*d5c09012SAndroid Build Coastguard Worker 902*d5c09012SAndroid Build Coastguard Worker // The revision was applied successfully. 903*d5c09012SAndroid Build Coastguard Worker APPLIED = 2; 904*d5c09012SAndroid Build Coastguard Worker 905*d5c09012SAndroid Build Coastguard Worker // The revision could not be applied successfully. 906*d5c09012SAndroid Build Coastguard Worker FAILED = 3; 907*d5c09012SAndroid Build Coastguard Worker } 908*d5c09012SAndroid Build Coastguard Worker 909*d5c09012SAndroid Build Coastguard Worker // Possible errors if Revision could not be created or updated successfully. 910*d5c09012SAndroid Build Coastguard Worker enum ErrorCode { 911*d5c09012SAndroid Build Coastguard Worker // No error code was specified. 912*d5c09012SAndroid Build Coastguard Worker ERROR_CODE_UNSPECIFIED = 0; 913*d5c09012SAndroid Build Coastguard Worker 914*d5c09012SAndroid Build Coastguard Worker // Cloud Build failed due to a permission issue. 915*d5c09012SAndroid Build Coastguard Worker CLOUD_BUILD_PERMISSION_DENIED = 1; 916*d5c09012SAndroid Build Coastguard Worker 917*d5c09012SAndroid Build Coastguard Worker // Cloud Build job associated with creating or updating a deployment could 918*d5c09012SAndroid Build Coastguard Worker // not be started. 919*d5c09012SAndroid Build Coastguard Worker APPLY_BUILD_API_FAILED = 4; 920*d5c09012SAndroid Build Coastguard Worker 921*d5c09012SAndroid Build Coastguard Worker // Cloud Build job associated with creating or updating a deployment was 922*d5c09012SAndroid Build Coastguard Worker // started but failed. 923*d5c09012SAndroid Build Coastguard Worker APPLY_BUILD_RUN_FAILED = 5; 924*d5c09012SAndroid Build Coastguard Worker 925*d5c09012SAndroid Build Coastguard Worker // quota validation failed for one or more resources in terraform 926*d5c09012SAndroid Build Coastguard Worker // configuration files. 927*d5c09012SAndroid Build Coastguard Worker QUOTA_VALIDATION_FAILED = 7; 928*d5c09012SAndroid Build Coastguard Worker } 929*d5c09012SAndroid Build Coastguard Worker 930*d5c09012SAndroid Build Coastguard Worker // Blueprint that was deployed. 931*d5c09012SAndroid Build Coastguard Worker oneof blueprint { 932*d5c09012SAndroid Build Coastguard Worker // Output only. A blueprint described using Terraform's HashiCorp 933*d5c09012SAndroid Build Coastguard Worker // Configuration Language as a root module. 934*d5c09012SAndroid Build Coastguard Worker TerraformBlueprint terraform_blueprint = 6 935*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 936*d5c09012SAndroid Build Coastguard Worker } 937*d5c09012SAndroid Build Coastguard Worker 938*d5c09012SAndroid Build Coastguard Worker // Revision name. Format: 939*d5c09012SAndroid Build Coastguard Worker // `projects/{project}/locations/{location}/deployments/{deployment}/ 940*d5c09012SAndroid Build Coastguard Worker // revisions/{revision}` 941*d5c09012SAndroid Build Coastguard Worker string name = 1; 942*d5c09012SAndroid Build Coastguard Worker 943*d5c09012SAndroid Build Coastguard Worker // Output only. Time when the revision was created. 944*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 2 945*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 946*d5c09012SAndroid Build Coastguard Worker 947*d5c09012SAndroid Build Coastguard Worker // Output only. Time when the revision was last modified. 948*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 3 949*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 950*d5c09012SAndroid Build Coastguard Worker 951*d5c09012SAndroid Build Coastguard Worker // Output only. The action which created this revision 952*d5c09012SAndroid Build Coastguard Worker Action action = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; 953*d5c09012SAndroid Build Coastguard Worker 954*d5c09012SAndroid Build Coastguard Worker // Output only. Current state of the revision. 955*d5c09012SAndroid Build Coastguard Worker State state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; 956*d5c09012SAndroid Build Coastguard Worker 957*d5c09012SAndroid Build Coastguard Worker // Output only. Outputs and artifacts from applying a deployment. 958*d5c09012SAndroid Build Coastguard Worker ApplyResults apply_results = 7 [(google.api.field_behavior) = OUTPUT_ONLY]; 959*d5c09012SAndroid Build Coastguard Worker 960*d5c09012SAndroid Build Coastguard Worker // Output only. Additional info regarding the current state. 961*d5c09012SAndroid Build Coastguard Worker string state_detail = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; 962*d5c09012SAndroid Build Coastguard Worker 963*d5c09012SAndroid Build Coastguard Worker // Output only. Code describing any errors that may have occurred. 964*d5c09012SAndroid Build Coastguard Worker ErrorCode error_code = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; 965*d5c09012SAndroid Build Coastguard Worker 966*d5c09012SAndroid Build Coastguard Worker // Output only. Cloud Build instance UUID associated with this revision. 967*d5c09012SAndroid Build Coastguard Worker string build = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; 968*d5c09012SAndroid Build Coastguard Worker 969*d5c09012SAndroid Build Coastguard Worker // Output only. Location of Revision operation logs in 970*d5c09012SAndroid Build Coastguard Worker // `gs://{bucket}/{object}` format. 971*d5c09012SAndroid Build Coastguard Worker string logs = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; 972*d5c09012SAndroid Build Coastguard Worker 973*d5c09012SAndroid Build Coastguard Worker // Output only. Errors encountered when creating or updating this deployment. 974*d5c09012SAndroid Build Coastguard Worker // Errors are truncated to 10 entries, see `delete_results` and `error_logs` 975*d5c09012SAndroid Build Coastguard Worker // for full details. 976*d5c09012SAndroid Build Coastguard Worker repeated TerraformError tf_errors = 12 977*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 978*d5c09012SAndroid Build Coastguard Worker 979*d5c09012SAndroid Build Coastguard Worker // Output only. Location of Terraform error logs in Google Cloud Storage. 980*d5c09012SAndroid Build Coastguard Worker // Format: `gs://{bucket}/{object}`. 981*d5c09012SAndroid Build Coastguard Worker string error_logs = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; 982*d5c09012SAndroid Build Coastguard Worker 983*d5c09012SAndroid Build Coastguard Worker // Output only. User-specified Service Account (SA) to be used as credential 984*d5c09012SAndroid Build Coastguard Worker // to manage resources. Format: 985*d5c09012SAndroid Build Coastguard Worker // `projects/{projectID}/serviceAccounts/{serviceAccount}` 986*d5c09012SAndroid Build Coastguard Worker string service_account = 14 [ 987*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OUTPUT_ONLY, 988*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 989*d5c09012SAndroid Build Coastguard Worker type: "iam.googleapis.com/ServiceAccount" 990*d5c09012SAndroid Build Coastguard Worker } 991*d5c09012SAndroid Build Coastguard Worker ]; 992*d5c09012SAndroid Build Coastguard Worker 993*d5c09012SAndroid Build Coastguard Worker // Output only. By default, Infra Manager will return a failure when 994*d5c09012SAndroid Build Coastguard Worker // Terraform encounters a 409 code (resource conflict error) during actuation. 995*d5c09012SAndroid Build Coastguard Worker // If this flag is set to true, Infra Manager will instead 996*d5c09012SAndroid Build Coastguard Worker // attempt to automatically import the resource into the Terraform state (for 997*d5c09012SAndroid Build Coastguard Worker // supported resource types) and continue actuation. 998*d5c09012SAndroid Build Coastguard Worker // 999*d5c09012SAndroid Build Coastguard Worker // Not all resource types are supported, refer to documentation. 1000*d5c09012SAndroid Build Coastguard Worker bool import_existing_resources = 15 1001*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1002*d5c09012SAndroid Build Coastguard Worker 1003*d5c09012SAndroid Build Coastguard Worker // Output only. The user-specified Cloud Build worker pool resource in which 1004*d5c09012SAndroid Build Coastguard Worker // the Cloud Build job will execute. Format: 1005*d5c09012SAndroid Build Coastguard Worker // `projects/{project}/locations/{location}/workerPools/{workerPoolId}`. 1006*d5c09012SAndroid Build Coastguard Worker // If this field is unspecified, the default Cloud Build worker pool will be 1007*d5c09012SAndroid Build Coastguard Worker // used. 1008*d5c09012SAndroid Build Coastguard Worker string worker_pool = 17 [ 1009*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OUTPUT_ONLY, 1010*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1011*d5c09012SAndroid Build Coastguard Worker type: "cloudbuild.googleapis.com/WorkerPool" 1012*d5c09012SAndroid Build Coastguard Worker } 1013*d5c09012SAndroid Build Coastguard Worker ]; 1014*d5c09012SAndroid Build Coastguard Worker 1015*d5c09012SAndroid Build Coastguard Worker // Output only. The user-specified Terraform version constraint. 1016*d5c09012SAndroid Build Coastguard Worker // Example: "=1.3.10". 1017*d5c09012SAndroid Build Coastguard Worker string tf_version_constraint = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; 1018*d5c09012SAndroid Build Coastguard Worker 1019*d5c09012SAndroid Build Coastguard Worker // Output only. The version of Terraform used to create the Revision. 1020*d5c09012SAndroid Build Coastguard Worker // It is in the format of "Major.Minor.Patch", for example, "1.3.10". 1021*d5c09012SAndroid Build Coastguard Worker string tf_version = 19 [(google.api.field_behavior) = OUTPUT_ONLY]; 1022*d5c09012SAndroid Build Coastguard Worker 1023*d5c09012SAndroid Build Coastguard Worker // Output only. Cloud Storage path containing quota validation results. This 1024*d5c09012SAndroid Build Coastguard Worker // field is set when a user sets Deployment.quota_validation field to ENABLED 1025*d5c09012SAndroid Build Coastguard Worker // or ENFORCED. Format: `gs://{bucket}/{object}`. 1026*d5c09012SAndroid Build Coastguard Worker string quota_validation_results = 29 1027*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1028*d5c09012SAndroid Build Coastguard Worker 1029*d5c09012SAndroid Build Coastguard Worker // Optional. Input to control quota checks for resources in terraform 1030*d5c09012SAndroid Build Coastguard Worker // configuration files. There are limited resources on which quota validation 1031*d5c09012SAndroid Build Coastguard Worker // applies. 1032*d5c09012SAndroid Build Coastguard Worker QuotaValidation quota_validation = 20 1033*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1034*d5c09012SAndroid Build Coastguard Worker} 1035*d5c09012SAndroid Build Coastguard Worker 1036*d5c09012SAndroid Build Coastguard Worker// Errors encountered during actuation using Terraform 1037*d5c09012SAndroid Build Coastguard Workermessage TerraformError { 1038*d5c09012SAndroid Build Coastguard Worker // Address of the resource associated with the error, 1039*d5c09012SAndroid Build Coastguard Worker // e.g. `google_compute_network.vpc_network`. 1040*d5c09012SAndroid Build Coastguard Worker string resource_address = 1; 1041*d5c09012SAndroid Build Coastguard Worker 1042*d5c09012SAndroid Build Coastguard Worker // HTTP response code returned from Google Cloud Platform APIs when Terraform 1043*d5c09012SAndroid Build Coastguard Worker // fails to provision the resource. If unset or 0, no HTTP response code was 1044*d5c09012SAndroid Build Coastguard Worker // returned by Terraform. 1045*d5c09012SAndroid Build Coastguard Worker int32 http_response_code = 2; 1046*d5c09012SAndroid Build Coastguard Worker 1047*d5c09012SAndroid Build Coastguard Worker // A human-readable error description. 1048*d5c09012SAndroid Build Coastguard Worker string error_description = 3; 1049*d5c09012SAndroid Build Coastguard Worker 1050*d5c09012SAndroid Build Coastguard Worker // Original error response from underlying Google API, if available. 1051*d5c09012SAndroid Build Coastguard Worker google.rpc.Status error = 4; 1052*d5c09012SAndroid Build Coastguard Worker} 1053*d5c09012SAndroid Build Coastguard Worker 1054*d5c09012SAndroid Build Coastguard Worker// A set of files in a Git repository. 1055*d5c09012SAndroid Build Coastguard Workermessage GitSource { 1056*d5c09012SAndroid Build Coastguard Worker // Optional. Repository URL. 1057*d5c09012SAndroid Build Coastguard Worker // Example: 'https://github.com/kubernetes/examples.git' 1058*d5c09012SAndroid Build Coastguard Worker optional string repo = 1 [(google.api.field_behavior) = OPTIONAL]; 1059*d5c09012SAndroid Build Coastguard Worker 1060*d5c09012SAndroid Build Coastguard Worker // Optional. Subdirectory inside the repository. 1061*d5c09012SAndroid Build Coastguard Worker // Example: 'staging/my-package' 1062*d5c09012SAndroid Build Coastguard Worker optional string directory = 2 [(google.api.field_behavior) = OPTIONAL]; 1063*d5c09012SAndroid Build Coastguard Worker 1064*d5c09012SAndroid Build Coastguard Worker // Optional. Git reference (e.g. branch or tag). 1065*d5c09012SAndroid Build Coastguard Worker optional string ref = 3 [(google.api.field_behavior) = OPTIONAL]; 1066*d5c09012SAndroid Build Coastguard Worker} 1067*d5c09012SAndroid Build Coastguard Worker 1068*d5c09012SAndroid Build Coastguard Worker// Ephemeral metadata content describing the state of a deployment operation. 1069*d5c09012SAndroid Build Coastguard Workermessage DeploymentOperationMetadata { 1070*d5c09012SAndroid Build Coastguard Worker // The possible steps a deployment may be running. 1071*d5c09012SAndroid Build Coastguard Worker enum DeploymentStep { 1072*d5c09012SAndroid Build Coastguard Worker // Unspecified deployment step 1073*d5c09012SAndroid Build Coastguard Worker DEPLOYMENT_STEP_UNSPECIFIED = 0; 1074*d5c09012SAndroid Build Coastguard Worker 1075*d5c09012SAndroid Build Coastguard Worker // Infra Manager is creating a Google Cloud Storage bucket to store 1076*d5c09012SAndroid Build Coastguard Worker // artifacts and metadata about the deployment and revision 1077*d5c09012SAndroid Build Coastguard Worker PREPARING_STORAGE_BUCKET = 1; 1078*d5c09012SAndroid Build Coastguard Worker 1079*d5c09012SAndroid Build Coastguard Worker // Downloading the blueprint onto the Google Cloud Storage bucket 1080*d5c09012SAndroid Build Coastguard Worker DOWNLOADING_BLUEPRINT = 2; 1081*d5c09012SAndroid Build Coastguard Worker 1082*d5c09012SAndroid Build Coastguard Worker // Initializing Terraform using `terraform init` 1083*d5c09012SAndroid Build Coastguard Worker RUNNING_TF_INIT = 3; 1084*d5c09012SAndroid Build Coastguard Worker 1085*d5c09012SAndroid Build Coastguard Worker // Running `terraform plan` 1086*d5c09012SAndroid Build Coastguard Worker RUNNING_TF_PLAN = 4; 1087*d5c09012SAndroid Build Coastguard Worker 1088*d5c09012SAndroid Build Coastguard Worker // Actuating resources using Terraform using `terraform apply` 1089*d5c09012SAndroid Build Coastguard Worker RUNNING_TF_APPLY = 5; 1090*d5c09012SAndroid Build Coastguard Worker 1091*d5c09012SAndroid Build Coastguard Worker // Destroying resources using Terraform using `terraform destroy` 1092*d5c09012SAndroid Build Coastguard Worker RUNNING_TF_DESTROY = 6; 1093*d5c09012SAndroid Build Coastguard Worker 1094*d5c09012SAndroid Build Coastguard Worker // Validating the uploaded TF state file when unlocking a deployment 1095*d5c09012SAndroid Build Coastguard Worker RUNNING_TF_VALIDATE = 7; 1096*d5c09012SAndroid Build Coastguard Worker 1097*d5c09012SAndroid Build Coastguard Worker // Unlocking a deployment 1098*d5c09012SAndroid Build Coastguard Worker UNLOCKING_DEPLOYMENT = 8; 1099*d5c09012SAndroid Build Coastguard Worker 1100*d5c09012SAndroid Build Coastguard Worker // Operation was successful 1101*d5c09012SAndroid Build Coastguard Worker SUCCEEDED = 9; 1102*d5c09012SAndroid Build Coastguard Worker 1103*d5c09012SAndroid Build Coastguard Worker // Operation failed 1104*d5c09012SAndroid Build Coastguard Worker FAILED = 10; 1105*d5c09012SAndroid Build Coastguard Worker 1106*d5c09012SAndroid Build Coastguard Worker // Validating the provided repository. 1107*d5c09012SAndroid Build Coastguard Worker VALIDATING_REPOSITORY = 11; 1108*d5c09012SAndroid Build Coastguard Worker 1109*d5c09012SAndroid Build Coastguard Worker // Running quota validation 1110*d5c09012SAndroid Build Coastguard Worker RUNNING_QUOTA_VALIDATION = 12; 1111*d5c09012SAndroid Build Coastguard Worker } 1112*d5c09012SAndroid Build Coastguard Worker 1113*d5c09012SAndroid Build Coastguard Worker // The current step the deployment operation is running. 1114*d5c09012SAndroid Build Coastguard Worker DeploymentStep step = 1; 1115*d5c09012SAndroid Build Coastguard Worker 1116*d5c09012SAndroid Build Coastguard Worker // Outputs and artifacts from applying a deployment. 1117*d5c09012SAndroid Build Coastguard Worker ApplyResults apply_results = 2; 1118*d5c09012SAndroid Build Coastguard Worker 1119*d5c09012SAndroid Build Coastguard Worker // Output only. Cloud Build instance UUID associated with this operation. 1120*d5c09012SAndroid Build Coastguard Worker string build = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; 1121*d5c09012SAndroid Build Coastguard Worker 1122*d5c09012SAndroid Build Coastguard Worker // Output only. Location of Deployment operations logs in 1123*d5c09012SAndroid Build Coastguard Worker // `gs://{bucket}/{object}` format. 1124*d5c09012SAndroid Build Coastguard Worker string logs = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; 1125*d5c09012SAndroid Build Coastguard Worker} 1126*d5c09012SAndroid Build Coastguard Worker 1127*d5c09012SAndroid Build Coastguard Worker// Resource represents a Google Cloud Platform resource actuated by IM. 1128*d5c09012SAndroid Build Coastguard Worker// Resources are child resources of Revisions. 1129*d5c09012SAndroid Build Coastguard Workermessage Resource { 1130*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 1131*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Resource" 1132*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/deployments/{deployment}/revisions/{revision}/resources/{resource}" 1133*d5c09012SAndroid Build Coastguard Worker }; 1134*d5c09012SAndroid Build Coastguard Worker 1135*d5c09012SAndroid Build Coastguard Worker // Possible intent of the resource. 1136*d5c09012SAndroid Build Coastguard Worker enum Intent { 1137*d5c09012SAndroid Build Coastguard Worker // The default value. This value is used if the intent is omitted. 1138*d5c09012SAndroid Build Coastguard Worker INTENT_UNSPECIFIED = 0; 1139*d5c09012SAndroid Build Coastguard Worker 1140*d5c09012SAndroid Build Coastguard Worker // Infra Manager will create this Resource. 1141*d5c09012SAndroid Build Coastguard Worker CREATE = 1; 1142*d5c09012SAndroid Build Coastguard Worker 1143*d5c09012SAndroid Build Coastguard Worker // Infra Manager will update this Resource. 1144*d5c09012SAndroid Build Coastguard Worker UPDATE = 2; 1145*d5c09012SAndroid Build Coastguard Worker 1146*d5c09012SAndroid Build Coastguard Worker // Infra Manager will delete this Resource. 1147*d5c09012SAndroid Build Coastguard Worker DELETE = 3; 1148*d5c09012SAndroid Build Coastguard Worker 1149*d5c09012SAndroid Build Coastguard Worker // Infra Manager will destroy and recreate this Resource. 1150*d5c09012SAndroid Build Coastguard Worker RECREATE = 4; 1151*d5c09012SAndroid Build Coastguard Worker 1152*d5c09012SAndroid Build Coastguard Worker // Infra Manager will leave this Resource untouched. 1153*d5c09012SAndroid Build Coastguard Worker UNCHANGED = 5; 1154*d5c09012SAndroid Build Coastguard Worker } 1155*d5c09012SAndroid Build Coastguard Worker 1156*d5c09012SAndroid Build Coastguard Worker // Possible states of a resource. 1157*d5c09012SAndroid Build Coastguard Worker enum State { 1158*d5c09012SAndroid Build Coastguard Worker // The default value. This value is used if the state is omitted. 1159*d5c09012SAndroid Build Coastguard Worker STATE_UNSPECIFIED = 0; 1160*d5c09012SAndroid Build Coastguard Worker 1161*d5c09012SAndroid Build Coastguard Worker // Resource has been planned for reconcile. 1162*d5c09012SAndroid Build Coastguard Worker PLANNED = 1; 1163*d5c09012SAndroid Build Coastguard Worker 1164*d5c09012SAndroid Build Coastguard Worker // Resource is actively reconciling into the intended state. 1165*d5c09012SAndroid Build Coastguard Worker IN_PROGRESS = 2; 1166*d5c09012SAndroid Build Coastguard Worker 1167*d5c09012SAndroid Build Coastguard Worker // Resource has reconciled to intended state. 1168*d5c09012SAndroid Build Coastguard Worker RECONCILED = 3; 1169*d5c09012SAndroid Build Coastguard Worker 1170*d5c09012SAndroid Build Coastguard Worker // Resource failed to reconcile. 1171*d5c09012SAndroid Build Coastguard Worker FAILED = 4; 1172*d5c09012SAndroid Build Coastguard Worker } 1173*d5c09012SAndroid Build Coastguard Worker 1174*d5c09012SAndroid Build Coastguard Worker // Output only. Resource name. 1175*d5c09012SAndroid Build Coastguard Worker // Format: 1176*d5c09012SAndroid Build Coastguard Worker // `projects/{project}/locations/{location}/deployments/{deployment}/revisions/{revision}/resources/{resource}` 1177*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 1178*d5c09012SAndroid Build Coastguard Worker 1179*d5c09012SAndroid Build Coastguard Worker // Output only. Terraform-specific info if this resource was created using 1180*d5c09012SAndroid Build Coastguard Worker // Terraform. 1181*d5c09012SAndroid Build Coastguard Worker ResourceTerraformInfo terraform_info = 2 1182*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1183*d5c09012SAndroid Build Coastguard Worker 1184*d5c09012SAndroid Build Coastguard Worker // Output only. Map of Cloud Asset Inventory (CAI) type to CAI info (e.g. CAI 1185*d5c09012SAndroid Build Coastguard Worker // ID). CAI type format follows 1186*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/asset-inventory/docs/supported-asset-types 1187*d5c09012SAndroid Build Coastguard Worker map<string, ResourceCAIInfo> cai_assets = 3 1188*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1189*d5c09012SAndroid Build Coastguard Worker 1190*d5c09012SAndroid Build Coastguard Worker // Output only. Intent of the resource. 1191*d5c09012SAndroid Build Coastguard Worker Intent intent = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; 1192*d5c09012SAndroid Build Coastguard Worker 1193*d5c09012SAndroid Build Coastguard Worker // Output only. Current state of the resource. 1194*d5c09012SAndroid Build Coastguard Worker State state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; 1195*d5c09012SAndroid Build Coastguard Worker} 1196*d5c09012SAndroid Build Coastguard Worker 1197*d5c09012SAndroid Build Coastguard Worker// Terraform info of a Resource. 1198*d5c09012SAndroid Build Coastguard Workermessage ResourceTerraformInfo { 1199*d5c09012SAndroid Build Coastguard Worker // TF resource address that uniquely identifies this resource within this 1200*d5c09012SAndroid Build Coastguard Worker // deployment. 1201*d5c09012SAndroid Build Coastguard Worker string address = 1; 1202*d5c09012SAndroid Build Coastguard Worker 1203*d5c09012SAndroid Build Coastguard Worker // TF resource type 1204*d5c09012SAndroid Build Coastguard Worker string type = 2; 1205*d5c09012SAndroid Build Coastguard Worker 1206*d5c09012SAndroid Build Coastguard Worker // ID attribute of the TF resource 1207*d5c09012SAndroid Build Coastguard Worker string id = 3; 1208*d5c09012SAndroid Build Coastguard Worker} 1209*d5c09012SAndroid Build Coastguard Worker 1210*d5c09012SAndroid Build Coastguard Worker// CAI info of a Resource. 1211*d5c09012SAndroid Build Coastguard Workermessage ResourceCAIInfo { 1212*d5c09012SAndroid Build Coastguard Worker // CAI resource name in the format following 1213*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/apis/design/resource_names#full_resource_name 1214*d5c09012SAndroid Build Coastguard Worker string full_resource_name = 1; 1215*d5c09012SAndroid Build Coastguard Worker} 1216*d5c09012SAndroid Build Coastguard Worker 1217*d5c09012SAndroid Build Coastguard Worker// A request to get a Resource from a 'GetResource' call. 1218*d5c09012SAndroid Build Coastguard Workermessage GetResourceRequest { 1219*d5c09012SAndroid Build Coastguard Worker // Required. The name of the Resource in the format: 1220*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}/revisions/{revision}/resource/{resource}'. 1221*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 1222*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1223*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "config.googleapis.com/Resource" } 1224*d5c09012SAndroid Build Coastguard Worker ]; 1225*d5c09012SAndroid Build Coastguard Worker} 1226*d5c09012SAndroid Build Coastguard Worker 1227*d5c09012SAndroid Build Coastguard Worker// A request to list Resources passed to a 'ListResources' call. 1228*d5c09012SAndroid Build Coastguard Workermessage ListResourcesRequest { 1229*d5c09012SAndroid Build Coastguard Worker // Required. The parent in whose context the Resources are listed. The parent 1230*d5c09012SAndroid Build Coastguard Worker // value is in the format: 1231*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}/revisions/{revision}'. 1232*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 1233*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1234*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "config.googleapis.com/Revision" } 1235*d5c09012SAndroid Build Coastguard Worker ]; 1236*d5c09012SAndroid Build Coastguard Worker 1237*d5c09012SAndroid Build Coastguard Worker // When requesting a page of resources, 'page_size' specifies number of 1238*d5c09012SAndroid Build Coastguard Worker // resources to return. If unspecified, at most 500 will be returned. The 1239*d5c09012SAndroid Build Coastguard Worker // maximum value is 1000. 1240*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2; 1241*d5c09012SAndroid Build Coastguard Worker 1242*d5c09012SAndroid Build Coastguard Worker // Token returned by previous call to 'ListResources' which specifies the 1243*d5c09012SAndroid Build Coastguard Worker // position in the list from where to continue listing the resources. 1244*d5c09012SAndroid Build Coastguard Worker string page_token = 3; 1245*d5c09012SAndroid Build Coastguard Worker 1246*d5c09012SAndroid Build Coastguard Worker // Lists the Resources that match the filter expression. A filter 1247*d5c09012SAndroid Build Coastguard Worker // expression filters the resources listed in the response. The expression 1248*d5c09012SAndroid Build Coastguard Worker // must be of the form '{field} {operator} {value}' where operators: '<', '>', 1249*d5c09012SAndroid Build Coastguard Worker // '<=', 1250*d5c09012SAndroid Build Coastguard Worker // '>=', 1251*d5c09012SAndroid Build Coastguard Worker // '!=', '=', ':' are supported (colon ':' represents a HAS operator which is 1252*d5c09012SAndroid Build Coastguard Worker // roughly synonymous with equality). {field} can refer to a proto or JSON 1253*d5c09012SAndroid Build Coastguard Worker // field, or a synthetic field. Field names can be camelCase or snake_case. 1254*d5c09012SAndroid Build Coastguard Worker // 1255*d5c09012SAndroid Build Coastguard Worker // Examples: 1256*d5c09012SAndroid Build Coastguard Worker // - Filter by name: 1257*d5c09012SAndroid Build Coastguard Worker // name = 1258*d5c09012SAndroid Build Coastguard Worker // "projects/foo/locations/us-central1/deployments/dep/revisions/bar/resources/baz 1259*d5c09012SAndroid Build Coastguard Worker string filter = 4; 1260*d5c09012SAndroid Build Coastguard Worker 1261*d5c09012SAndroid Build Coastguard Worker // Field to use to sort the list. 1262*d5c09012SAndroid Build Coastguard Worker string order_by = 5; 1263*d5c09012SAndroid Build Coastguard Worker} 1264*d5c09012SAndroid Build Coastguard Worker 1265*d5c09012SAndroid Build Coastguard Worker// A response to a 'ListResources' call. Contains a list of Resources. 1266*d5c09012SAndroid Build Coastguard Workermessage ListResourcesResponse { 1267*d5c09012SAndroid Build Coastguard Worker // List of [Resources][]s. 1268*d5c09012SAndroid Build Coastguard Worker repeated Resource resources = 1; 1269*d5c09012SAndroid Build Coastguard Worker 1270*d5c09012SAndroid Build Coastguard Worker // A token to request the next page of resources from the 'ListResources' 1271*d5c09012SAndroid Build Coastguard Worker // method. The value of an empty string means that there are no more resources 1272*d5c09012SAndroid Build Coastguard Worker // to return. 1273*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 1274*d5c09012SAndroid Build Coastguard Worker 1275*d5c09012SAndroid Build Coastguard Worker // Locations that could not be reached. 1276*d5c09012SAndroid Build Coastguard Worker repeated string unreachable = 3; 1277*d5c09012SAndroid Build Coastguard Worker} 1278*d5c09012SAndroid Build Coastguard Worker 1279*d5c09012SAndroid Build Coastguard Worker// Contains info about a Terraform state file 1280*d5c09012SAndroid Build Coastguard Workermessage Statefile { 1281*d5c09012SAndroid Build Coastguard Worker // Output only. Cloud Storage signed URI used for downloading or uploading the 1282*d5c09012SAndroid Build Coastguard Worker // state file. 1283*d5c09012SAndroid Build Coastguard Worker string signed_uri = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 1284*d5c09012SAndroid Build Coastguard Worker} 1285*d5c09012SAndroid Build Coastguard Worker 1286*d5c09012SAndroid Build Coastguard Worker// A request to export a state file passed to a 'ExportDeploymentStatefile' 1287*d5c09012SAndroid Build Coastguard Worker// call. 1288*d5c09012SAndroid Build Coastguard Workermessage ExportDeploymentStatefileRequest { 1289*d5c09012SAndroid Build Coastguard Worker // Required. The parent in whose context the statefile is listed. The parent 1290*d5c09012SAndroid Build Coastguard Worker // value is in the format: 1291*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}'. 1292*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 1293*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1294*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1295*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Deployment" 1296*d5c09012SAndroid Build Coastguard Worker } 1297*d5c09012SAndroid Build Coastguard Worker ]; 1298*d5c09012SAndroid Build Coastguard Worker 1299*d5c09012SAndroid Build Coastguard Worker // Optional. If this flag is set to true, the exported deployment state file 1300*d5c09012SAndroid Build Coastguard Worker // will be the draft state. This will enable the draft file to be validated 1301*d5c09012SAndroid Build Coastguard Worker // before copying it over to the working state on unlock. 1302*d5c09012SAndroid Build Coastguard Worker bool draft = 3 [(google.api.field_behavior) = OPTIONAL]; 1303*d5c09012SAndroid Build Coastguard Worker} 1304*d5c09012SAndroid Build Coastguard Worker 1305*d5c09012SAndroid Build Coastguard Worker// A request to export a state file passed to a 'ExportRevisionStatefile' 1306*d5c09012SAndroid Build Coastguard Worker// call. 1307*d5c09012SAndroid Build Coastguard Workermessage ExportRevisionStatefileRequest { 1308*d5c09012SAndroid Build Coastguard Worker // Required. The parent in whose context the statefile is listed. The parent 1309*d5c09012SAndroid Build Coastguard Worker // value is in the format: 1310*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}/revisions/{revision}'. 1311*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 1312*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1313*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "config.googleapis.com/Revision" } 1314*d5c09012SAndroid Build Coastguard Worker ]; 1315*d5c09012SAndroid Build Coastguard Worker} 1316*d5c09012SAndroid Build Coastguard Worker 1317*d5c09012SAndroid Build Coastguard Worker// A request to import a state file passed to a 'ImportStatefile' call. 1318*d5c09012SAndroid Build Coastguard Workermessage ImportStatefileRequest { 1319*d5c09012SAndroid Build Coastguard Worker // Required. The parent in whose context the statefile is listed. The parent 1320*d5c09012SAndroid Build Coastguard Worker // value is in the format: 1321*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}'. 1322*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 1323*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1324*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1325*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Deployment" 1326*d5c09012SAndroid Build Coastguard Worker } 1327*d5c09012SAndroid Build Coastguard Worker ]; 1328*d5c09012SAndroid Build Coastguard Worker 1329*d5c09012SAndroid Build Coastguard Worker // Required. Lock ID of the lock file to verify that the user who is importing 1330*d5c09012SAndroid Build Coastguard Worker // the state file previously locked the Deployment. 1331*d5c09012SAndroid Build Coastguard Worker int64 lock_id = 2 [(google.api.field_behavior) = REQUIRED]; 1332*d5c09012SAndroid Build Coastguard Worker 1333*d5c09012SAndroid Build Coastguard Worker // Optional. 1334*d5c09012SAndroid Build Coastguard Worker bool skip_draft = 3 [(google.api.field_behavior) = OPTIONAL]; 1335*d5c09012SAndroid Build Coastguard Worker} 1336*d5c09012SAndroid Build Coastguard Worker 1337*d5c09012SAndroid Build Coastguard Worker// A request to delete a state file passed to a 'DeleteStatefile' call. 1338*d5c09012SAndroid Build Coastguard Workermessage DeleteStatefileRequest { 1339*d5c09012SAndroid Build Coastguard Worker // Required. The name of the deployment in the format: 1340*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}'. 1341*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 1342*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1343*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1344*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Deployment" 1345*d5c09012SAndroid Build Coastguard Worker } 1346*d5c09012SAndroid Build Coastguard Worker ]; 1347*d5c09012SAndroid Build Coastguard Worker 1348*d5c09012SAndroid Build Coastguard Worker // Required. Lock ID of the lock file to verify that the user who is deleting 1349*d5c09012SAndroid Build Coastguard Worker // the state file previously locked the Deployment. 1350*d5c09012SAndroid Build Coastguard Worker int64 lock_id = 2 [(google.api.field_behavior) = REQUIRED]; 1351*d5c09012SAndroid Build Coastguard Worker} 1352*d5c09012SAndroid Build Coastguard Worker 1353*d5c09012SAndroid Build Coastguard Worker// A request to lock a deployment passed to a 'LockDeployment' call. 1354*d5c09012SAndroid Build Coastguard Workermessage LockDeploymentRequest { 1355*d5c09012SAndroid Build Coastguard Worker // Required. The name of the deployment in the format: 1356*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}'. 1357*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 1358*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1359*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1360*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Deployment" 1361*d5c09012SAndroid Build Coastguard Worker } 1362*d5c09012SAndroid Build Coastguard Worker ]; 1363*d5c09012SAndroid Build Coastguard Worker} 1364*d5c09012SAndroid Build Coastguard Worker 1365*d5c09012SAndroid Build Coastguard Worker// A request to unlock a state file passed to a 'UnlockDeployment' call. 1366*d5c09012SAndroid Build Coastguard Workermessage UnlockDeploymentRequest { 1367*d5c09012SAndroid Build Coastguard Worker // Required. The name of the deployment in the format: 1368*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}'. 1369*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 1370*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1371*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1372*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Deployment" 1373*d5c09012SAndroid Build Coastguard Worker } 1374*d5c09012SAndroid Build Coastguard Worker ]; 1375*d5c09012SAndroid Build Coastguard Worker 1376*d5c09012SAndroid Build Coastguard Worker // Required. Lock ID of the lock file to be unlocked. 1377*d5c09012SAndroid Build Coastguard Worker int64 lock_id = 2 [(google.api.field_behavior) = REQUIRED]; 1378*d5c09012SAndroid Build Coastguard Worker} 1379*d5c09012SAndroid Build Coastguard Worker 1380*d5c09012SAndroid Build Coastguard Worker// A request to get a state file lock info passed to a 'ExportLockInfo' call. 1381*d5c09012SAndroid Build Coastguard Workermessage ExportLockInfoRequest { 1382*d5c09012SAndroid Build Coastguard Worker // Required. The name of the deployment in the format: 1383*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/deployments/{deployment}'. 1384*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 1385*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1386*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1387*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Deployment" 1388*d5c09012SAndroid Build Coastguard Worker } 1389*d5c09012SAndroid Build Coastguard Worker ]; 1390*d5c09012SAndroid Build Coastguard Worker} 1391*d5c09012SAndroid Build Coastguard Worker 1392*d5c09012SAndroid Build Coastguard Worker// Details about the lock which locked the deployment. 1393*d5c09012SAndroid Build Coastguard Workermessage LockInfo { 1394*d5c09012SAndroid Build Coastguard Worker // Unique ID for the lock to be overridden with generation ID in the backend. 1395*d5c09012SAndroid Build Coastguard Worker int64 lock_id = 1; 1396*d5c09012SAndroid Build Coastguard Worker 1397*d5c09012SAndroid Build Coastguard Worker // Terraform operation, provided by the caller. 1398*d5c09012SAndroid Build Coastguard Worker string operation = 2; 1399*d5c09012SAndroid Build Coastguard Worker 1400*d5c09012SAndroid Build Coastguard Worker // Extra information to store with the lock, provided by the caller. 1401*d5c09012SAndroid Build Coastguard Worker string info = 3; 1402*d5c09012SAndroid Build Coastguard Worker 1403*d5c09012SAndroid Build Coastguard Worker // user@hostname when available 1404*d5c09012SAndroid Build Coastguard Worker string who = 4; 1405*d5c09012SAndroid Build Coastguard Worker 1406*d5c09012SAndroid Build Coastguard Worker // Terraform version 1407*d5c09012SAndroid Build Coastguard Worker string version = 5; 1408*d5c09012SAndroid Build Coastguard Worker 1409*d5c09012SAndroid Build Coastguard Worker // Time that the lock was taken. 1410*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 6; 1411*d5c09012SAndroid Build Coastguard Worker} 1412*d5c09012SAndroid Build Coastguard Worker 1413*d5c09012SAndroid Build Coastguard Worker// A preview represents a set of actions Infra Manager would perform 1414*d5c09012SAndroid Build Coastguard Worker// to move the resources towards the desired state as specified in the 1415*d5c09012SAndroid Build Coastguard Worker// configuration. 1416*d5c09012SAndroid Build Coastguard Workermessage Preview { 1417*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 1418*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Preview" 1419*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/previews/{preview}" 1420*d5c09012SAndroid Build Coastguard Worker plural: "previews" 1421*d5c09012SAndroid Build Coastguard Worker singular: "preview" 1422*d5c09012SAndroid Build Coastguard Worker }; 1423*d5c09012SAndroid Build Coastguard Worker 1424*d5c09012SAndroid Build Coastguard Worker // Possible states of a preview. 1425*d5c09012SAndroid Build Coastguard Worker enum State { 1426*d5c09012SAndroid Build Coastguard Worker // The default value. This value is used if the state is unknown. 1427*d5c09012SAndroid Build Coastguard Worker STATE_UNSPECIFIED = 0; 1428*d5c09012SAndroid Build Coastguard Worker 1429*d5c09012SAndroid Build Coastguard Worker // The preview is being created. 1430*d5c09012SAndroid Build Coastguard Worker CREATING = 1; 1431*d5c09012SAndroid Build Coastguard Worker 1432*d5c09012SAndroid Build Coastguard Worker // The preview has succeeded. 1433*d5c09012SAndroid Build Coastguard Worker SUCCEEDED = 2; 1434*d5c09012SAndroid Build Coastguard Worker 1435*d5c09012SAndroid Build Coastguard Worker // The preview is being applied. 1436*d5c09012SAndroid Build Coastguard Worker APPLYING = 3; 1437*d5c09012SAndroid Build Coastguard Worker 1438*d5c09012SAndroid Build Coastguard Worker // The preview is stale. A preview can become stale if a revision has been 1439*d5c09012SAndroid Build Coastguard Worker // applied after this preview was created. 1440*d5c09012SAndroid Build Coastguard Worker STALE = 4; 1441*d5c09012SAndroid Build Coastguard Worker 1442*d5c09012SAndroid Build Coastguard Worker // The preview is being deleted. 1443*d5c09012SAndroid Build Coastguard Worker DELETING = 5; 1444*d5c09012SAndroid Build Coastguard Worker 1445*d5c09012SAndroid Build Coastguard Worker // The preview has encountered an unexpected error. 1446*d5c09012SAndroid Build Coastguard Worker FAILED = 6; 1447*d5c09012SAndroid Build Coastguard Worker 1448*d5c09012SAndroid Build Coastguard Worker // The preview has been deleted. 1449*d5c09012SAndroid Build Coastguard Worker DELETED = 7; 1450*d5c09012SAndroid Build Coastguard Worker } 1451*d5c09012SAndroid Build Coastguard Worker 1452*d5c09012SAndroid Build Coastguard Worker // Preview mode provides options for customizing preview operations. 1453*d5c09012SAndroid Build Coastguard Worker enum PreviewMode { 1454*d5c09012SAndroid Build Coastguard Worker // Unspecified policy, default mode will be used. 1455*d5c09012SAndroid Build Coastguard Worker PREVIEW_MODE_UNSPECIFIED = 0; 1456*d5c09012SAndroid Build Coastguard Worker 1457*d5c09012SAndroid Build Coastguard Worker // DEFAULT mode generates an execution plan for reconciling current resource 1458*d5c09012SAndroid Build Coastguard Worker // state into expected resource state. 1459*d5c09012SAndroid Build Coastguard Worker DEFAULT = 1; 1460*d5c09012SAndroid Build Coastguard Worker 1461*d5c09012SAndroid Build Coastguard Worker // DELETE mode generates as execution plan for destroying current resources. 1462*d5c09012SAndroid Build Coastguard Worker DELETE = 2; 1463*d5c09012SAndroid Build Coastguard Worker } 1464*d5c09012SAndroid Build Coastguard Worker 1465*d5c09012SAndroid Build Coastguard Worker // Possible errors that can occur with previews. 1466*d5c09012SAndroid Build Coastguard Worker enum ErrorCode { 1467*d5c09012SAndroid Build Coastguard Worker // No error code was specified. 1468*d5c09012SAndroid Build Coastguard Worker ERROR_CODE_UNSPECIFIED = 0; 1469*d5c09012SAndroid Build Coastguard Worker 1470*d5c09012SAndroid Build Coastguard Worker // Cloud Build failed due to a permissions issue. 1471*d5c09012SAndroid Build Coastguard Worker CLOUD_BUILD_PERMISSION_DENIED = 1; 1472*d5c09012SAndroid Build Coastguard Worker 1473*d5c09012SAndroid Build Coastguard Worker // Cloud Storage bucket failed to create due to a permissions issue. 1474*d5c09012SAndroid Build Coastguard Worker BUCKET_CREATION_PERMISSION_DENIED = 2; 1475*d5c09012SAndroid Build Coastguard Worker 1476*d5c09012SAndroid Build Coastguard Worker // Cloud Storage bucket failed for a non-permissions-related issue. 1477*d5c09012SAndroid Build Coastguard Worker BUCKET_CREATION_FAILED = 3; 1478*d5c09012SAndroid Build Coastguard Worker 1479*d5c09012SAndroid Build Coastguard Worker // Acquiring lock on provided deployment reference failed. 1480*d5c09012SAndroid Build Coastguard Worker DEPLOYMENT_LOCK_ACQUIRE_FAILED = 4; 1481*d5c09012SAndroid Build Coastguard Worker 1482*d5c09012SAndroid Build Coastguard Worker // Preview encountered an error when trying to access Cloud Build API. 1483*d5c09012SAndroid Build Coastguard Worker PREVIEW_BUILD_API_FAILED = 5; 1484*d5c09012SAndroid Build Coastguard Worker 1485*d5c09012SAndroid Build Coastguard Worker // Preview created a build but build failed and logs were generated. 1486*d5c09012SAndroid Build Coastguard Worker PREVIEW_BUILD_RUN_FAILED = 6; 1487*d5c09012SAndroid Build Coastguard Worker } 1488*d5c09012SAndroid Build Coastguard Worker 1489*d5c09012SAndroid Build Coastguard Worker // Blueprint to preview. 1490*d5c09012SAndroid Build Coastguard Worker oneof blueprint { 1491*d5c09012SAndroid Build Coastguard Worker // The terraform blueprint to preview. 1492*d5c09012SAndroid Build Coastguard Worker TerraformBlueprint terraform_blueprint = 6; 1493*d5c09012SAndroid Build Coastguard Worker } 1494*d5c09012SAndroid Build Coastguard Worker 1495*d5c09012SAndroid Build Coastguard Worker // Identifier. Resource name of the preview. Resource name can be user 1496*d5c09012SAndroid Build Coastguard Worker // provided or server generated ID if unspecified. Format: 1497*d5c09012SAndroid Build Coastguard Worker // `projects/{project}/locations/{location}/previews/{preview}` 1498*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = IDENTIFIER]; 1499*d5c09012SAndroid Build Coastguard Worker 1500*d5c09012SAndroid Build Coastguard Worker // Output only. Time the preview was created. 1501*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 2 1502*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1503*d5c09012SAndroid Build Coastguard Worker 1504*d5c09012SAndroid Build Coastguard Worker // Optional. User-defined labels for the preview. 1505*d5c09012SAndroid Build Coastguard Worker map<string, string> labels = 3 [(google.api.field_behavior) = OPTIONAL]; 1506*d5c09012SAndroid Build Coastguard Worker 1507*d5c09012SAndroid Build Coastguard Worker // Output only. Current state of the preview. 1508*d5c09012SAndroid Build Coastguard Worker State state = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; 1509*d5c09012SAndroid Build Coastguard Worker 1510*d5c09012SAndroid Build Coastguard Worker // Optional. Optional deployment reference. If specified, the preview will be 1511*d5c09012SAndroid Build Coastguard Worker // performed using the provided deployment's current state and use any 1512*d5c09012SAndroid Build Coastguard Worker // relevant fields from the deployment unless explicitly specified in the 1513*d5c09012SAndroid Build Coastguard Worker // preview create request. 1514*d5c09012SAndroid Build Coastguard Worker string deployment = 5 [ 1515*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OPTIONAL, 1516*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1517*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/Deployment" 1518*d5c09012SAndroid Build Coastguard Worker } 1519*d5c09012SAndroid Build Coastguard Worker ]; 1520*d5c09012SAndroid Build Coastguard Worker 1521*d5c09012SAndroid Build Coastguard Worker // Optional. Current mode of preview. 1522*d5c09012SAndroid Build Coastguard Worker PreviewMode preview_mode = 15 [(google.api.field_behavior) = OPTIONAL]; 1523*d5c09012SAndroid Build Coastguard Worker 1524*d5c09012SAndroid Build Coastguard Worker // Optional. User-specified Service Account (SA) credentials to be used when 1525*d5c09012SAndroid Build Coastguard Worker // previewing resources. 1526*d5c09012SAndroid Build Coastguard Worker // Format: `projects/{projectID}/serviceAccounts/{serviceAccount}` 1527*d5c09012SAndroid Build Coastguard Worker string service_account = 7 [ 1528*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OPTIONAL, 1529*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1530*d5c09012SAndroid Build Coastguard Worker type: "iam.googleapis.com/ServiceAccount" 1531*d5c09012SAndroid Build Coastguard Worker } 1532*d5c09012SAndroid Build Coastguard Worker ]; 1533*d5c09012SAndroid Build Coastguard Worker 1534*d5c09012SAndroid Build Coastguard Worker // Optional. User-defined location of Cloud Build logs, artifacts, and 1535*d5c09012SAndroid Build Coastguard Worker // in Google Cloud Storage. 1536*d5c09012SAndroid Build Coastguard Worker // Format: `gs://{bucket}/{folder}` 1537*d5c09012SAndroid Build Coastguard Worker // A default bucket will be bootstrapped if the field is not set or empty 1538*d5c09012SAndroid Build Coastguard Worker // Default Bucket Format: `gs://<project number>-<region>-blueprint-config` 1539*d5c09012SAndroid Build Coastguard Worker // Constraints: 1540*d5c09012SAndroid Build Coastguard Worker // - The bucket needs to be in the same project as the deployment 1541*d5c09012SAndroid Build Coastguard Worker // - The path cannot be within the path of `gcs_source` 1542*d5c09012SAndroid Build Coastguard Worker // If omitted and deployment resource ref provided has artifacts_gcs_bucket 1543*d5c09012SAndroid Build Coastguard Worker // defined, that artifact bucket is used. 1544*d5c09012SAndroid Build Coastguard Worker optional string artifacts_gcs_bucket = 8 1545*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1546*d5c09012SAndroid Build Coastguard Worker 1547*d5c09012SAndroid Build Coastguard Worker // Optional. The user-specified Worker Pool resource in which the Cloud Build 1548*d5c09012SAndroid Build Coastguard Worker // job will execute. Format 1549*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/workerPools/{workerPoolId} If this 1550*d5c09012SAndroid Build Coastguard Worker // field is unspecified, the default Cloud Build worker pool will be used. If 1551*d5c09012SAndroid Build Coastguard Worker // omitted and deployment resource ref provided has worker_pool defined, that 1552*d5c09012SAndroid Build Coastguard Worker // worker pool is used. 1553*d5c09012SAndroid Build Coastguard Worker optional string worker_pool = 9 [ 1554*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OPTIONAL, 1555*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1556*d5c09012SAndroid Build Coastguard Worker type: "cloudbuild.googleapis.com/WorkerPool" 1557*d5c09012SAndroid Build Coastguard Worker } 1558*d5c09012SAndroid Build Coastguard Worker ]; 1559*d5c09012SAndroid Build Coastguard Worker 1560*d5c09012SAndroid Build Coastguard Worker // Output only. Code describing any errors that may have occurred. 1561*d5c09012SAndroid Build Coastguard Worker ErrorCode error_code = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; 1562*d5c09012SAndroid Build Coastguard Worker 1563*d5c09012SAndroid Build Coastguard Worker // Output only. Additional information regarding the current state. 1564*d5c09012SAndroid Build Coastguard Worker google.rpc.Status error_status = 11 1565*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1566*d5c09012SAndroid Build Coastguard Worker 1567*d5c09012SAndroid Build Coastguard Worker // Output only. Cloud Build instance UUID associated with this preview. 1568*d5c09012SAndroid Build Coastguard Worker string build = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; 1569*d5c09012SAndroid Build Coastguard Worker 1570*d5c09012SAndroid Build Coastguard Worker // Output only. Summary of errors encountered during Terraform preview. 1571*d5c09012SAndroid Build Coastguard Worker // It has a size limit of 10, i.e. only top 10 errors will be summarized here. 1572*d5c09012SAndroid Build Coastguard Worker repeated TerraformError tf_errors = 13 1573*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1574*d5c09012SAndroid Build Coastguard Worker 1575*d5c09012SAndroid Build Coastguard Worker // Output only. Link to tf-error.ndjson file, which contains the full list of 1576*d5c09012SAndroid Build Coastguard Worker // the errors encountered during a Terraform preview. 1577*d5c09012SAndroid Build Coastguard Worker // Format: `gs://{bucket}/{object}`. 1578*d5c09012SAndroid Build Coastguard Worker string error_logs = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; 1579*d5c09012SAndroid Build Coastguard Worker 1580*d5c09012SAndroid Build Coastguard Worker // Output only. Artifacts from preview. 1581*d5c09012SAndroid Build Coastguard Worker PreviewArtifacts preview_artifacts = 16 1582*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1583*d5c09012SAndroid Build Coastguard Worker 1584*d5c09012SAndroid Build Coastguard Worker // Output only. Location of preview logs in `gs://{bucket}/{object}` format. 1585*d5c09012SAndroid Build Coastguard Worker string logs = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; 1586*d5c09012SAndroid Build Coastguard Worker 1587*d5c09012SAndroid Build Coastguard Worker // Output only. The current Terraform version set on the preview. 1588*d5c09012SAndroid Build Coastguard Worker // It is in the format of "Major.Minor.Patch", for example, "1.3.10". 1589*d5c09012SAndroid Build Coastguard Worker string tf_version = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; 1590*d5c09012SAndroid Build Coastguard Worker 1591*d5c09012SAndroid Build Coastguard Worker // Optional. The user-specified Terraform version constraint. 1592*d5c09012SAndroid Build Coastguard Worker // Example: "=1.3.10". 1593*d5c09012SAndroid Build Coastguard Worker optional string tf_version_constraint = 19 1594*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1595*d5c09012SAndroid Build Coastguard Worker} 1596*d5c09012SAndroid Build Coastguard Worker 1597*d5c09012SAndroid Build Coastguard Worker// Ephemeral metadata content describing the state of a preview operation. 1598*d5c09012SAndroid Build Coastguard Workermessage PreviewOperationMetadata { 1599*d5c09012SAndroid Build Coastguard Worker // The possible steps a preview may be running. 1600*d5c09012SAndroid Build Coastguard Worker enum PreviewStep { 1601*d5c09012SAndroid Build Coastguard Worker // Unspecified preview step. 1602*d5c09012SAndroid Build Coastguard Worker PREVIEW_STEP_UNSPECIFIED = 0; 1603*d5c09012SAndroid Build Coastguard Worker 1604*d5c09012SAndroid Build Coastguard Worker // Infra Manager is creating a Google Cloud Storage bucket to store 1605*d5c09012SAndroid Build Coastguard Worker // artifacts and metadata about the preview. 1606*d5c09012SAndroid Build Coastguard Worker PREPARING_STORAGE_BUCKET = 1; 1607*d5c09012SAndroid Build Coastguard Worker 1608*d5c09012SAndroid Build Coastguard Worker // Downloading the blueprint onto the Google Cloud Storage bucket. 1609*d5c09012SAndroid Build Coastguard Worker DOWNLOADING_BLUEPRINT = 2; 1610*d5c09012SAndroid Build Coastguard Worker 1611*d5c09012SAndroid Build Coastguard Worker // Initializing Terraform using `terraform init`. 1612*d5c09012SAndroid Build Coastguard Worker RUNNING_TF_INIT = 3; 1613*d5c09012SAndroid Build Coastguard Worker 1614*d5c09012SAndroid Build Coastguard Worker // Running `terraform plan`. 1615*d5c09012SAndroid Build Coastguard Worker RUNNING_TF_PLAN = 4; 1616*d5c09012SAndroid Build Coastguard Worker 1617*d5c09012SAndroid Build Coastguard Worker // Fetching a deployment. 1618*d5c09012SAndroid Build Coastguard Worker FETCHING_DEPLOYMENT = 5; 1619*d5c09012SAndroid Build Coastguard Worker 1620*d5c09012SAndroid Build Coastguard Worker // Locking a deployment. 1621*d5c09012SAndroid Build Coastguard Worker LOCKING_DEPLOYMENT = 6; 1622*d5c09012SAndroid Build Coastguard Worker 1623*d5c09012SAndroid Build Coastguard Worker // Unlocking a deployment. 1624*d5c09012SAndroid Build Coastguard Worker UNLOCKING_DEPLOYMENT = 7; 1625*d5c09012SAndroid Build Coastguard Worker 1626*d5c09012SAndroid Build Coastguard Worker // Operation was successful. 1627*d5c09012SAndroid Build Coastguard Worker SUCCEEDED = 8; 1628*d5c09012SAndroid Build Coastguard Worker 1629*d5c09012SAndroid Build Coastguard Worker // Operation failed. 1630*d5c09012SAndroid Build Coastguard Worker FAILED = 9; 1631*d5c09012SAndroid Build Coastguard Worker 1632*d5c09012SAndroid Build Coastguard Worker // Validating the provided repository. 1633*d5c09012SAndroid Build Coastguard Worker VALIDATING_REPOSITORY = 10; 1634*d5c09012SAndroid Build Coastguard Worker } 1635*d5c09012SAndroid Build Coastguard Worker 1636*d5c09012SAndroid Build Coastguard Worker // The current step the preview operation is running. 1637*d5c09012SAndroid Build Coastguard Worker PreviewStep step = 1; 1638*d5c09012SAndroid Build Coastguard Worker 1639*d5c09012SAndroid Build Coastguard Worker // Artifacts from preview. 1640*d5c09012SAndroid Build Coastguard Worker PreviewArtifacts preview_artifacts = 2; 1641*d5c09012SAndroid Build Coastguard Worker 1642*d5c09012SAndroid Build Coastguard Worker // Output only. Location of preview logs in `gs://{bucket}/{object}` format. 1643*d5c09012SAndroid Build Coastguard Worker string logs = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; 1644*d5c09012SAndroid Build Coastguard Worker 1645*d5c09012SAndroid Build Coastguard Worker // Output only. Cloud Build instance UUID associated with this preview. 1646*d5c09012SAndroid Build Coastguard Worker string build = 4 [(google.api.field_behavior) = OUTPUT_ONLY]; 1647*d5c09012SAndroid Build Coastguard Worker} 1648*d5c09012SAndroid Build Coastguard Worker 1649*d5c09012SAndroid Build Coastguard Worker// Artifacts created by preview. 1650*d5c09012SAndroid Build Coastguard Workermessage PreviewArtifacts { 1651*d5c09012SAndroid Build Coastguard Worker // Output only. Location of a blueprint copy and other content in Google Cloud 1652*d5c09012SAndroid Build Coastguard Worker // Storage. Format: `gs://{bucket}/{object}` 1653*d5c09012SAndroid Build Coastguard Worker string content = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 1654*d5c09012SAndroid Build Coastguard Worker 1655*d5c09012SAndroid Build Coastguard Worker // Output only. Location of artifacts in Google Cloud Storage. 1656*d5c09012SAndroid Build Coastguard Worker // Format: `gs://{bucket}/{object}` 1657*d5c09012SAndroid Build Coastguard Worker string artifacts = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 1658*d5c09012SAndroid Build Coastguard Worker} 1659*d5c09012SAndroid Build Coastguard Worker 1660*d5c09012SAndroid Build Coastguard Worker// A request to create a preview. 1661*d5c09012SAndroid Build Coastguard Workermessage CreatePreviewRequest { 1662*d5c09012SAndroid Build Coastguard Worker // Required. The parent in whose context the Preview is created. The parent 1663*d5c09012SAndroid Build Coastguard Worker // value is in the format: 'projects/{project_id}/locations/{location}'. 1664*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 1665*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1666*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1667*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 1668*d5c09012SAndroid Build Coastguard Worker } 1669*d5c09012SAndroid Build Coastguard Worker ]; 1670*d5c09012SAndroid Build Coastguard Worker 1671*d5c09012SAndroid Build Coastguard Worker // Optional. The preview ID. 1672*d5c09012SAndroid Build Coastguard Worker string preview_id = 2 [(google.api.field_behavior) = OPTIONAL]; 1673*d5c09012SAndroid Build Coastguard Worker 1674*d5c09012SAndroid Build Coastguard Worker // Required. [Preview][google.cloud.config.v1.Preview] resource to be created. 1675*d5c09012SAndroid Build Coastguard Worker Preview preview = 3 [(google.api.field_behavior) = REQUIRED]; 1676*d5c09012SAndroid Build Coastguard Worker 1677*d5c09012SAndroid Build Coastguard Worker // Optional. An optional request ID to identify requests. Specify a unique 1678*d5c09012SAndroid Build Coastguard Worker // request ID so that if you must retry your request, the server will know to 1679*d5c09012SAndroid Build Coastguard Worker // ignore the request if it has already been completed. The server will 1680*d5c09012SAndroid Build Coastguard Worker // guarantee that for at least 60 minutes since the first request. 1681*d5c09012SAndroid Build Coastguard Worker // 1682*d5c09012SAndroid Build Coastguard Worker // For example, consider a situation where you make an initial request and the 1683*d5c09012SAndroid Build Coastguard Worker // request times out. If you make the request again with the same request ID, 1684*d5c09012SAndroid Build Coastguard Worker // the server can check if original operation with the same request ID was 1685*d5c09012SAndroid Build Coastguard Worker // received, and if so, will ignore the second request. This prevents clients 1686*d5c09012SAndroid Build Coastguard Worker // from accidentally creating duplicate commitments. 1687*d5c09012SAndroid Build Coastguard Worker // 1688*d5c09012SAndroid Build Coastguard Worker // The request ID must be a valid UUID with the exception that zero UUID is 1689*d5c09012SAndroid Build Coastguard Worker // not supported (00000000-0000-0000-0000-000000000000). 1690*d5c09012SAndroid Build Coastguard Worker string request_id = 4 [ 1691*d5c09012SAndroid Build Coastguard Worker (google.api.field_info).format = UUID4, 1692*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OPTIONAL 1693*d5c09012SAndroid Build Coastguard Worker ]; 1694*d5c09012SAndroid Build Coastguard Worker} 1695*d5c09012SAndroid Build Coastguard Worker 1696*d5c09012SAndroid Build Coastguard Worker// A request to get details about a preview. 1697*d5c09012SAndroid Build Coastguard Workermessage GetPreviewRequest { 1698*d5c09012SAndroid Build Coastguard Worker // Required. The name of the preview. Format: 1699*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/previews/{preview}'. 1700*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 1701*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1702*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "config.googleapis.com/Preview" } 1703*d5c09012SAndroid Build Coastguard Worker ]; 1704*d5c09012SAndroid Build Coastguard Worker} 1705*d5c09012SAndroid Build Coastguard Worker 1706*d5c09012SAndroid Build Coastguard Worker// A request to list all previews for a given project and location. 1707*d5c09012SAndroid Build Coastguard Workermessage ListPreviewsRequest { 1708*d5c09012SAndroid Build Coastguard Worker // Required. The parent in whose context the Previews are listed. The parent 1709*d5c09012SAndroid Build Coastguard Worker // value is in the format: 'projects/{project_id}/locations/{location}'. 1710*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 1711*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1712*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1713*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 1714*d5c09012SAndroid Build Coastguard Worker } 1715*d5c09012SAndroid Build Coastguard Worker ]; 1716*d5c09012SAndroid Build Coastguard Worker 1717*d5c09012SAndroid Build Coastguard Worker // Optional. When requesting a page of resources, 'page_size' specifies number 1718*d5c09012SAndroid Build Coastguard Worker // of resources to return. If unspecified, at most 500 will be returned. The 1719*d5c09012SAndroid Build Coastguard Worker // maximum value is 1000. 1720*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; 1721*d5c09012SAndroid Build Coastguard Worker 1722*d5c09012SAndroid Build Coastguard Worker // Optional. Token returned by previous call to 'ListDeployments' which 1723*d5c09012SAndroid Build Coastguard Worker // specifies the position in the list from where to continue listing the 1724*d5c09012SAndroid Build Coastguard Worker // resources. 1725*d5c09012SAndroid Build Coastguard Worker string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; 1726*d5c09012SAndroid Build Coastguard Worker 1727*d5c09012SAndroid Build Coastguard Worker // Optional. Lists the Deployments that match the filter expression. A filter 1728*d5c09012SAndroid Build Coastguard Worker // expression filters the resources listed in the response. The expression 1729*d5c09012SAndroid Build Coastguard Worker // must be of the form '{field} {operator} {value}' where operators: '<', '>', 1730*d5c09012SAndroid Build Coastguard Worker // '<=', '>=', '!=', '=', ':' are supported (colon ':' represents a HAS 1731*d5c09012SAndroid Build Coastguard Worker // operator which is roughly synonymous with equality). {field} can refer to a 1732*d5c09012SAndroid Build Coastguard Worker // proto or JSON field, or a synthetic field. Field names can be camelCase or 1733*d5c09012SAndroid Build Coastguard Worker // snake_case. 1734*d5c09012SAndroid Build Coastguard Worker // 1735*d5c09012SAndroid Build Coastguard Worker // Examples: 1736*d5c09012SAndroid Build Coastguard Worker // - Filter by name: 1737*d5c09012SAndroid Build Coastguard Worker // name = "projects/foo/locations/us-central1/deployments/bar 1738*d5c09012SAndroid Build Coastguard Worker // 1739*d5c09012SAndroid Build Coastguard Worker // - Filter by labels: 1740*d5c09012SAndroid Build Coastguard Worker // - Resources that have a key called 'foo' 1741*d5c09012SAndroid Build Coastguard Worker // labels.foo:* 1742*d5c09012SAndroid Build Coastguard Worker // - Resources that have a key called 'foo' whose value is 'bar' 1743*d5c09012SAndroid Build Coastguard Worker // labels.foo = bar 1744*d5c09012SAndroid Build Coastguard Worker // 1745*d5c09012SAndroid Build Coastguard Worker // - Filter by state: 1746*d5c09012SAndroid Build Coastguard Worker // - Deployments in CREATING state. 1747*d5c09012SAndroid Build Coastguard Worker // state=CREATING 1748*d5c09012SAndroid Build Coastguard Worker string filter = 4 [(google.api.field_behavior) = OPTIONAL]; 1749*d5c09012SAndroid Build Coastguard Worker 1750*d5c09012SAndroid Build Coastguard Worker // Optional. Field to use to sort the list. 1751*d5c09012SAndroid Build Coastguard Worker string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; 1752*d5c09012SAndroid Build Coastguard Worker} 1753*d5c09012SAndroid Build Coastguard Worker 1754*d5c09012SAndroid Build Coastguard Worker// A response to a `ListPreviews` call. Contains a list of Previews. 1755*d5c09012SAndroid Build Coastguard Workermessage ListPreviewsResponse { 1756*d5c09012SAndroid Build Coastguard Worker // List of [Previews][]s. 1757*d5c09012SAndroid Build Coastguard Worker repeated Preview previews = 1; 1758*d5c09012SAndroid Build Coastguard Worker 1759*d5c09012SAndroid Build Coastguard Worker // Token to be supplied to the next ListPreviews request via `page_token` 1760*d5c09012SAndroid Build Coastguard Worker // to obtain the next set of results. 1761*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 1762*d5c09012SAndroid Build Coastguard Worker 1763*d5c09012SAndroid Build Coastguard Worker // Locations that could not be reached. 1764*d5c09012SAndroid Build Coastguard Worker repeated string unreachable = 3; 1765*d5c09012SAndroid Build Coastguard Worker} 1766*d5c09012SAndroid Build Coastguard Worker 1767*d5c09012SAndroid Build Coastguard Worker// A request to delete a preview. 1768*d5c09012SAndroid Build Coastguard Workermessage DeletePreviewRequest { 1769*d5c09012SAndroid Build Coastguard Worker // Required. The name of the Preview in the format: 1770*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/previews/{preview}'. 1771*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 1772*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1773*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "config.googleapis.com/Preview" } 1774*d5c09012SAndroid Build Coastguard Worker ]; 1775*d5c09012SAndroid Build Coastguard Worker 1776*d5c09012SAndroid Build Coastguard Worker // Optional. An optional request ID to identify requests. Specify a unique 1777*d5c09012SAndroid Build Coastguard Worker // request ID so that if you must retry your request, the server will know to 1778*d5c09012SAndroid Build Coastguard Worker // ignore the request if it has already been completed. The server will 1779*d5c09012SAndroid Build Coastguard Worker // guarantee that for at least 60 minutes after the first request. 1780*d5c09012SAndroid Build Coastguard Worker // 1781*d5c09012SAndroid Build Coastguard Worker // For example, consider a situation where you make an initial request and the 1782*d5c09012SAndroid Build Coastguard Worker // request times out. If you make the request again with the same request ID, 1783*d5c09012SAndroid Build Coastguard Worker // the server can check if original operation with the same request ID was 1784*d5c09012SAndroid Build Coastguard Worker // received, and if so, will ignore the second request. This prevents clients 1785*d5c09012SAndroid Build Coastguard Worker // from accidentally creating duplicate commitments. 1786*d5c09012SAndroid Build Coastguard Worker // 1787*d5c09012SAndroid Build Coastguard Worker // The request ID must be a valid UUID with the exception that zero UUID is 1788*d5c09012SAndroid Build Coastguard Worker // not supported (00000000-0000-0000-0000-000000000000). 1789*d5c09012SAndroid Build Coastguard Worker string request_id = 2 [ 1790*d5c09012SAndroid Build Coastguard Worker (google.api.field_info).format = UUID4, 1791*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OPTIONAL 1792*d5c09012SAndroid Build Coastguard Worker ]; 1793*d5c09012SAndroid Build Coastguard Worker} 1794*d5c09012SAndroid Build Coastguard Worker 1795*d5c09012SAndroid Build Coastguard Worker// A request to export preview results. 1796*d5c09012SAndroid Build Coastguard Workermessage ExportPreviewResultRequest { 1797*d5c09012SAndroid Build Coastguard Worker // Required. The preview whose results should be exported. The preview value 1798*d5c09012SAndroid Build Coastguard Worker // is in the format: 1799*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/previews/{preview}'. 1800*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 1801*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1802*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "config.googleapis.com/Preview" } 1803*d5c09012SAndroid Build Coastguard Worker ]; 1804*d5c09012SAndroid Build Coastguard Worker} 1805*d5c09012SAndroid Build Coastguard Worker 1806*d5c09012SAndroid Build Coastguard Worker// A response to `ExportPreviewResult` call. Contains preview results. 1807*d5c09012SAndroid Build Coastguard Workermessage ExportPreviewResultResponse { 1808*d5c09012SAndroid Build Coastguard Worker // Output only. Signed URLs for accessing the plan files. 1809*d5c09012SAndroid Build Coastguard Worker PreviewResult result = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 1810*d5c09012SAndroid Build Coastguard Worker} 1811*d5c09012SAndroid Build Coastguard Worker 1812*d5c09012SAndroid Build Coastguard Worker// Contains a signed Cloud Storage URLs. 1813*d5c09012SAndroid Build Coastguard Workermessage PreviewResult { 1814*d5c09012SAndroid Build Coastguard Worker // Output only. Plan binary signed URL 1815*d5c09012SAndroid Build Coastguard Worker string binary_signed_uri = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 1816*d5c09012SAndroid Build Coastguard Worker 1817*d5c09012SAndroid Build Coastguard Worker // Output only. Plan JSON signed URL 1818*d5c09012SAndroid Build Coastguard Worker string json_signed_uri = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 1819*d5c09012SAndroid Build Coastguard Worker} 1820*d5c09012SAndroid Build Coastguard Worker 1821*d5c09012SAndroid Build Coastguard Worker// The request message for the GetTerraformVersion method. 1822*d5c09012SAndroid Build Coastguard Workermessage GetTerraformVersionRequest { 1823*d5c09012SAndroid Build Coastguard Worker // Required. The name of the TerraformVersion. Format: 1824*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/terraformVersions/{terraform_version}' 1825*d5c09012SAndroid Build Coastguard Worker string name = 1 [ 1826*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1827*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1828*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/TerraformVersion" 1829*d5c09012SAndroid Build Coastguard Worker } 1830*d5c09012SAndroid Build Coastguard Worker ]; 1831*d5c09012SAndroid Build Coastguard Worker} 1832*d5c09012SAndroid Build Coastguard Worker 1833*d5c09012SAndroid Build Coastguard Worker// The request message for the ListTerraformVersions method. 1834*d5c09012SAndroid Build Coastguard Workermessage ListTerraformVersionsRequest { 1835*d5c09012SAndroid Build Coastguard Worker // Required. The parent in whose context the TerraformVersions are listed. The 1836*d5c09012SAndroid Build Coastguard Worker // parent value is in the format: 1837*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}'. 1838*d5c09012SAndroid Build Coastguard Worker string parent = 1 [ 1839*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = REQUIRED, 1840*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { 1841*d5c09012SAndroid Build Coastguard Worker type: "locations.googleapis.com/Location" 1842*d5c09012SAndroid Build Coastguard Worker } 1843*d5c09012SAndroid Build Coastguard Worker ]; 1844*d5c09012SAndroid Build Coastguard Worker 1845*d5c09012SAndroid Build Coastguard Worker // Optional. When requesting a page of resources, 'page_size' specifies number 1846*d5c09012SAndroid Build Coastguard Worker // of resources to return. If unspecified, at most 500 will be returned. The 1847*d5c09012SAndroid Build Coastguard Worker // maximum value is 1000. 1848*d5c09012SAndroid Build Coastguard Worker int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; 1849*d5c09012SAndroid Build Coastguard Worker 1850*d5c09012SAndroid Build Coastguard Worker // Optional. Token returned by previous call to 'ListTerraformVersions' which 1851*d5c09012SAndroid Build Coastguard Worker // specifies the position in the list from where to continue listing the 1852*d5c09012SAndroid Build Coastguard Worker // resources. 1853*d5c09012SAndroid Build Coastguard Worker string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; 1854*d5c09012SAndroid Build Coastguard Worker 1855*d5c09012SAndroid Build Coastguard Worker // Optional. Lists the TerraformVersions that match the filter expression. A 1856*d5c09012SAndroid Build Coastguard Worker // filter expression filters the resources listed in the response. The 1857*d5c09012SAndroid Build Coastguard Worker // expression must be of the form '{field} {operator} {value}' where 1858*d5c09012SAndroid Build Coastguard Worker // operators: '<', '>', 1859*d5c09012SAndroid Build Coastguard Worker // '<=', '>=', '!=', '=', ':' are supported (colon ':' represents a HAS 1860*d5c09012SAndroid Build Coastguard Worker // operator which is roughly synonymous with equality). {field} can refer to a 1861*d5c09012SAndroid Build Coastguard Worker // proto or JSON field, or a synthetic field. Field names can be camelCase or 1862*d5c09012SAndroid Build Coastguard Worker // snake_case. 1863*d5c09012SAndroid Build Coastguard Worker string filter = 4 [(google.api.field_behavior) = OPTIONAL]; 1864*d5c09012SAndroid Build Coastguard Worker 1865*d5c09012SAndroid Build Coastguard Worker // Optional. Field to use to sort the list. 1866*d5c09012SAndroid Build Coastguard Worker string order_by = 5 [(google.api.field_behavior) = OPTIONAL]; 1867*d5c09012SAndroid Build Coastguard Worker} 1868*d5c09012SAndroid Build Coastguard Worker 1869*d5c09012SAndroid Build Coastguard Worker// The response message for the `ListTerraformVersions` method. 1870*d5c09012SAndroid Build Coastguard Workermessage ListTerraformVersionsResponse { 1871*d5c09012SAndroid Build Coastguard Worker // List of [TerraformVersion][google.cloud.config.v1.TerraformVersion]s. 1872*d5c09012SAndroid Build Coastguard Worker repeated TerraformVersion terraform_versions = 1; 1873*d5c09012SAndroid Build Coastguard Worker 1874*d5c09012SAndroid Build Coastguard Worker // Token to be supplied to the next ListTerraformVersions request via 1875*d5c09012SAndroid Build Coastguard Worker // `page_token` to obtain the next set of results. 1876*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 1877*d5c09012SAndroid Build Coastguard Worker 1878*d5c09012SAndroid Build Coastguard Worker // Unreachable resources, if any. 1879*d5c09012SAndroid Build Coastguard Worker repeated string unreachable = 3; 1880*d5c09012SAndroid Build Coastguard Worker} 1881*d5c09012SAndroid Build Coastguard Worker 1882*d5c09012SAndroid Build Coastguard Worker// A TerraformVersion represents the support state the corresponding 1883*d5c09012SAndroid Build Coastguard Worker// Terraform version. 1884*d5c09012SAndroid Build Coastguard Workermessage TerraformVersion { 1885*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 1886*d5c09012SAndroid Build Coastguard Worker type: "config.googleapis.com/TerraformVersion" 1887*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/terraformVersions/{terraform_version}" 1888*d5c09012SAndroid Build Coastguard Worker plural: "terraformVersions" 1889*d5c09012SAndroid Build Coastguard Worker singular: "terraformVersion" 1890*d5c09012SAndroid Build Coastguard Worker }; 1891*d5c09012SAndroid Build Coastguard Worker 1892*d5c09012SAndroid Build Coastguard Worker // Possible states of a TerraformVersion. 1893*d5c09012SAndroid Build Coastguard Worker enum State { 1894*d5c09012SAndroid Build Coastguard Worker // The default value. This value is used if the state is omitted. 1895*d5c09012SAndroid Build Coastguard Worker STATE_UNSPECIFIED = 0; 1896*d5c09012SAndroid Build Coastguard Worker 1897*d5c09012SAndroid Build Coastguard Worker // The version is actively supported. 1898*d5c09012SAndroid Build Coastguard Worker ACTIVE = 1; 1899*d5c09012SAndroid Build Coastguard Worker 1900*d5c09012SAndroid Build Coastguard Worker // The version is deprecated. 1901*d5c09012SAndroid Build Coastguard Worker DEPRECATED = 2; 1902*d5c09012SAndroid Build Coastguard Worker 1903*d5c09012SAndroid Build Coastguard Worker // The version is obsolete. 1904*d5c09012SAndroid Build Coastguard Worker OBSOLETE = 3; 1905*d5c09012SAndroid Build Coastguard Worker } 1906*d5c09012SAndroid Build Coastguard Worker 1907*d5c09012SAndroid Build Coastguard Worker // Identifier. The version name is in the format: 1908*d5c09012SAndroid Build Coastguard Worker // 'projects/{project_id}/locations/{location}/terraformVersions/{terraform_version}'. 1909*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = IDENTIFIER]; 1910*d5c09012SAndroid Build Coastguard Worker 1911*d5c09012SAndroid Build Coastguard Worker // Output only. The state of the version, ACTIVE, DEPRECATED or OBSOLETE. 1912*d5c09012SAndroid Build Coastguard Worker State state = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 1913*d5c09012SAndroid Build Coastguard Worker 1914*d5c09012SAndroid Build Coastguard Worker // Output only. When the version is supported. 1915*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp support_time = 3 1916*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1917*d5c09012SAndroid Build Coastguard Worker 1918*d5c09012SAndroid Build Coastguard Worker // Output only. When the version is deprecated. 1919*d5c09012SAndroid Build Coastguard Worker optional google.protobuf.Timestamp deprecate_time = 4 1920*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1921*d5c09012SAndroid Build Coastguard Worker 1922*d5c09012SAndroid Build Coastguard Worker // Output only. When the version is obsolete. 1923*d5c09012SAndroid Build Coastguard Worker optional google.protobuf.Timestamp obsolete_time = 5 1924*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1925*d5c09012SAndroid Build Coastguard Worker} 1926