google-cloud-config-v1 0.a → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +149 -0
  4. data/README.md +144 -8
  5. data/lib/google/cloud/config/v1/bindings_override.rb +135 -0
  6. data/lib/google/cloud/config/v1/config/client.rb +2055 -0
  7. data/lib/google/cloud/config/v1/config/credentials.rb +47 -0
  8. data/lib/google/cloud/config/v1/config/operations.rb +770 -0
  9. data/lib/google/cloud/config/v1/config/paths.rb +149 -0
  10. data/lib/google/cloud/config/v1/config/rest/client.rb +1626 -0
  11. data/lib/google/cloud/config/v1/config/rest/operations.rb +795 -0
  12. data/lib/google/cloud/config/v1/config/rest/service_stub.rb +1000 -0
  13. data/lib/google/cloud/config/v1/config/rest.rb +55 -0
  14. data/lib/google/cloud/config/v1/config.rb +57 -0
  15. data/lib/google/cloud/config/v1/config_pb.rb +100 -0
  16. data/lib/google/cloud/config/v1/config_services_pb.rb +79 -0
  17. data/lib/google/cloud/config/v1/rest.rb +38 -0
  18. data/lib/google/cloud/config/v1/version.rb +7 -2
  19. data/lib/google/cloud/config/v1.rb +45 -0
  20. data/lib/google-cloud-config-v1.rb +21 -0
  21. data/proto_docs/README.md +4 -0
  22. data/proto_docs/google/api/client.rb +381 -0
  23. data/proto_docs/google/api/field_behavior.rb +85 -0
  24. data/proto_docs/google/api/launch_stage.rb +71 -0
  25. data/proto_docs/google/api/resource.rb +222 -0
  26. data/proto_docs/google/cloud/config/v1/config.rb +1082 -0
  27. data/proto_docs/google/longrunning/operations.rb +164 -0
  28. data/proto_docs/google/protobuf/any.rb +144 -0
  29. data/proto_docs/google/protobuf/duration.rb +98 -0
  30. data/proto_docs/google/protobuf/empty.rb +34 -0
  31. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  32. data/proto_docs/google/protobuf/struct.rb +96 -0
  33. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  34. data/proto_docs/google/rpc/status.rb +48 -0
  35. data/proto_docs/google/type/expr.rb +75 -0
  36. metadata +230 -13
@@ -0,0 +1,1082 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Config
23
+ module V1
24
+ # A Deployment is a group of resources and configs managed and provisioned by
25
+ # Infra Manager.
26
+ # @!attribute [rw] terraform_blueprint
27
+ # @return [::Google::Cloud::Config::V1::TerraformBlueprint]
28
+ # A blueprint described using Terraform's HashiCorp Configuration Language
29
+ # as a root module.
30
+ # @!attribute [rw] name
31
+ # @return [::String]
32
+ # Resource name of the deployment.
33
+ # Format: `projects/{project}/locations/{location}/deployments/{deployment}`
34
+ # @!attribute [r] create_time
35
+ # @return [::Google::Protobuf::Timestamp]
36
+ # Output only. Time when the deployment was created.
37
+ # @!attribute [r] update_time
38
+ # @return [::Google::Protobuf::Timestamp]
39
+ # Output only. Time when the deployment was last modified.
40
+ # @!attribute [rw] labels
41
+ # @return [::Google::Protobuf::Map{::String => ::String}]
42
+ # User-defined metadata for the deployment.
43
+ # @!attribute [r] state
44
+ # @return [::Google::Cloud::Config::V1::Deployment::State]
45
+ # Output only. Current state of the deployment.
46
+ # @!attribute [r] latest_revision
47
+ # @return [::String]
48
+ # Output only. Revision name that was most recently applied.
49
+ # Format: `projects/{project}/locations/{location}/deployments/{deployment}/
50
+ # revisions/\\{revision}`
51
+ # @!attribute [r] state_detail
52
+ # @return [::String]
53
+ # Output only. Additional information regarding the current state.
54
+ # @!attribute [r] error_code
55
+ # @return [::Google::Cloud::Config::V1::Deployment::ErrorCode]
56
+ # Output only. Error code describing errors that may have occurred.
57
+ # @!attribute [r] delete_results
58
+ # @return [::Google::Cloud::Config::V1::ApplyResults]
59
+ # Output only. Location of artifacts from a DeleteDeployment operation.
60
+ # @!attribute [r] delete_build
61
+ # @return [::String]
62
+ # Output only. Cloud Build instance UUID associated with deleting this
63
+ # deployment.
64
+ # @!attribute [r] delete_logs
65
+ # @return [::String]
66
+ # Output only. Location of Cloud Build logs in Google Cloud Storage,
67
+ # populated when deleting this deployment. Format: `gs://{bucket}/{object}`.
68
+ # @!attribute [r] tf_errors
69
+ # @return [::Array<::Google::Cloud::Config::V1::TerraformError>]
70
+ # Output only. Errors encountered when deleting this deployment.
71
+ # Errors are truncated to 10 entries, see `delete_results` and `error_logs`
72
+ # for full details.
73
+ # @!attribute [r] error_logs
74
+ # @return [::String]
75
+ # Output only. Location of Terraform error logs in Google Cloud Storage.
76
+ # Format: `gs://{bucket}/{object}`.
77
+ # @!attribute [rw] artifacts_gcs_bucket
78
+ # @return [::String]
79
+ # Optional. User-defined location of Cloud Build logs and artifacts in Google
80
+ # Cloud Storage. Format: `gs://{bucket}/{folder}`
81
+ #
82
+ # A default bucket will be bootstrapped if the field is not set or empty.
83
+ # Default bucket format: `gs://<project number>-<region>-blueprint-config`
84
+ # Constraints:
85
+ # - The bucket needs to be in the same project as the deployment
86
+ # - The path cannot be within the path of `gcs_source`
87
+ # - The field cannot be updated, including changing its presence
88
+ # @!attribute [rw] service_account
89
+ # @return [::String]
90
+ # Optional. User-specified Service Account (SA) credentials to be used when
91
+ # actuating resources.
92
+ # Format: `projects/{projectID}/serviceAccounts/{serviceAccount}`
93
+ # @!attribute [rw] import_existing_resources
94
+ # @return [::Boolean]
95
+ # By default, Infra Manager will return a failure when
96
+ # Terraform encounters a 409 code (resource conflict error) during actuation.
97
+ # If this flag is set to true, Infra Manager will instead
98
+ # attempt to automatically import the resource into the Terraform state (for
99
+ # supported resource types) and continue actuation.
100
+ #
101
+ # Not all resource types are supported, refer to documentation.
102
+ # @!attribute [rw] worker_pool
103
+ # @return [::String]
104
+ # Optional. The user-specified Cloud Build worker pool resource in which the
105
+ # Cloud Build job will execute. Format:
106
+ # `projects/{project}/locations/{location}/workerPools/{workerPoolId}`.
107
+ # If this field is unspecified, the default Cloud Build worker pool will be
108
+ # used.
109
+ # @!attribute [r] lock_state
110
+ # @return [::Google::Cloud::Config::V1::Deployment::LockState]
111
+ # Output only. Current lock state of the deployment.
112
+ class Deployment
113
+ include ::Google::Protobuf::MessageExts
114
+ extend ::Google::Protobuf::MessageExts::ClassMethods
115
+
116
+ # @!attribute [rw] key
117
+ # @return [::String]
118
+ # @!attribute [rw] value
119
+ # @return [::String]
120
+ class LabelsEntry
121
+ include ::Google::Protobuf::MessageExts
122
+ extend ::Google::Protobuf::MessageExts::ClassMethods
123
+ end
124
+
125
+ # Possible states of a deployment.
126
+ module State
127
+ # The default value. This value is used if the state is omitted.
128
+ STATE_UNSPECIFIED = 0
129
+
130
+ # The deployment is being created.
131
+ CREATING = 1
132
+
133
+ # The deployment is healthy.
134
+ ACTIVE = 2
135
+
136
+ # The deployment is being updated.
137
+ UPDATING = 3
138
+
139
+ # The deployment is being deleted.
140
+ DELETING = 4
141
+
142
+ # The deployment has encountered an unexpected error.
143
+ FAILED = 5
144
+
145
+ # The deployment is no longer being actively reconciled.
146
+ # This may be the result of recovering the project after deletion.
147
+ SUSPENDED = 6
148
+
149
+ # The deployment has been deleted.
150
+ DELETED = 7
151
+ end
152
+
153
+ # Possible errors that can occur with deployments.
154
+ module ErrorCode
155
+ # No error code was specified.
156
+ ERROR_CODE_UNSPECIFIED = 0
157
+
158
+ # The revision failed. See Revision for more details.
159
+ REVISION_FAILED = 1
160
+
161
+ # Cloud Build failed due to a permission issue.
162
+ CLOUD_BUILD_PERMISSION_DENIED = 3
163
+
164
+ # Cloud Build job associated with a deployment deletion could not be
165
+ # started.
166
+ DELETE_BUILD_API_FAILED = 5
167
+
168
+ # Cloud Build job associated with a deployment deletion was started but
169
+ # failed.
170
+ DELETE_BUILD_RUN_FAILED = 6
171
+
172
+ # Cloud Storage bucket creation failed due to a permission issue.
173
+ BUCKET_CREATION_PERMISSION_DENIED = 7
174
+
175
+ # Cloud Storage bucket creation failed due to an issue unrelated to
176
+ # permissions.
177
+ BUCKET_CREATION_FAILED = 8
178
+ end
179
+
180
+ # Possible lock states of a deployment.
181
+ module LockState
182
+ # The default value. This value is used if the lock state is omitted.
183
+ LOCK_STATE_UNSPECIFIED = 0
184
+
185
+ # The deployment is locked.
186
+ LOCKED = 1
187
+
188
+ # The deployment is unlocked.
189
+ UNLOCKED = 2
190
+
191
+ # The deployment is being locked.
192
+ LOCKING = 3
193
+
194
+ # The deployment is being unlocked.
195
+ UNLOCKING = 4
196
+
197
+ # The deployment has failed to lock.
198
+ LOCK_FAILED = 5
199
+
200
+ # The deployment has failed to unlock.
201
+ UNLOCK_FAILED = 6
202
+ end
203
+ end
204
+
205
+ # TerraformBlueprint describes the source of a Terraform root module which
206
+ # describes the resources and configs to be deployed.
207
+ # @!attribute [rw] gcs_source
208
+ # @return [::String]
209
+ # Required. URI of an object in Google Cloud Storage.
210
+ # Format: `gs://{bucket}/{object}`
211
+ #
212
+ # URI may also specify an object version for zipped objects.
213
+ # Format: `gs://{bucket}/{object}#{version}`
214
+ # @!attribute [rw] git_source
215
+ # @return [::Google::Cloud::Config::V1::GitSource]
216
+ # Required. URI of a public Git repo.
217
+ # @!attribute [rw] input_values
218
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Config::V1::TerraformVariable}]
219
+ # Input variable values for the Terraform blueprint.
220
+ class TerraformBlueprint
221
+ include ::Google::Protobuf::MessageExts
222
+ extend ::Google::Protobuf::MessageExts::ClassMethods
223
+
224
+ # @!attribute [rw] key
225
+ # @return [::String]
226
+ # @!attribute [rw] value
227
+ # @return [::Google::Cloud::Config::V1::TerraformVariable]
228
+ class InputValuesEntry
229
+ include ::Google::Protobuf::MessageExts
230
+ extend ::Google::Protobuf::MessageExts::ClassMethods
231
+ end
232
+ end
233
+
234
+ # A Terraform input variable.
235
+ # @!attribute [rw] input_value
236
+ # @return [::Google::Protobuf::Value]
237
+ # Input variable value.
238
+ class TerraformVariable
239
+ include ::Google::Protobuf::MessageExts
240
+ extend ::Google::Protobuf::MessageExts::ClassMethods
241
+ end
242
+
243
+ # Outputs and artifacts from applying a deployment.
244
+ # @!attribute [rw] content
245
+ # @return [::String]
246
+ # Location of a blueprint copy and other manifests in Google Cloud Storage.
247
+ # Format: `gs://{bucket}/{object}`
248
+ # @!attribute [rw] artifacts
249
+ # @return [::String]
250
+ # Location of artifacts (e.g. logs) in Google Cloud Storage.
251
+ # Format: `gs://{bucket}/{object}`
252
+ # @!attribute [rw] outputs
253
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Config::V1::TerraformOutput}]
254
+ # Map of output name to output info.
255
+ class ApplyResults
256
+ include ::Google::Protobuf::MessageExts
257
+ extend ::Google::Protobuf::MessageExts::ClassMethods
258
+
259
+ # @!attribute [rw] key
260
+ # @return [::String]
261
+ # @!attribute [rw] value
262
+ # @return [::Google::Cloud::Config::V1::TerraformOutput]
263
+ class OutputsEntry
264
+ include ::Google::Protobuf::MessageExts
265
+ extend ::Google::Protobuf::MessageExts::ClassMethods
266
+ end
267
+ end
268
+
269
+ # Describes a Terraform output.
270
+ # @!attribute [rw] sensitive
271
+ # @return [::Boolean]
272
+ # Identifies whether Terraform has set this output as a potential
273
+ # sensitive value.
274
+ # @!attribute [rw] value
275
+ # @return [::Google::Protobuf::Value]
276
+ # Value of output.
277
+ class TerraformOutput
278
+ include ::Google::Protobuf::MessageExts
279
+ extend ::Google::Protobuf::MessageExts::ClassMethods
280
+ end
281
+
282
+ # @!attribute [rw] parent
283
+ # @return [::String]
284
+ # Required. The parent in whose context the Deployments are listed. The
285
+ # parent value is in the format:
286
+ # 'projects/\\{project_id}/locations/\\{location}'.
287
+ # @!attribute [rw] page_size
288
+ # @return [::Integer]
289
+ # When requesting a page of resources, 'page_size' specifies number of
290
+ # resources to return. If unspecified or set to 0, all resources will be
291
+ # returned.
292
+ # @!attribute [rw] page_token
293
+ # @return [::String]
294
+ # Token returned by previous call to 'ListDeployments' which specifies the
295
+ # position in the list from where to continue listing the resources.
296
+ # @!attribute [rw] filter
297
+ # @return [::String]
298
+ # Lists the Deployments that match the filter expression. A filter
299
+ # expression filters the resources listed in the response. The expression
300
+ # must be of the form '\\{field} \\{operator} \\{value}' where operators: '<', '>',
301
+ # '<=', '>=', '!=', '=', ':' are supported (colon ':' represents a HAS
302
+ # operator which is roughly synonymous with equality). \\{field} can refer to a
303
+ # proto or JSON field, or a synthetic field. Field names can be camelCase or
304
+ # snake_case.
305
+ #
306
+ # Examples:
307
+ # - Filter by name:
308
+ # name = "projects/foo/locations/us-central1/deployments/bar
309
+ #
310
+ # - Filter by labels:
311
+ # - Resources that have a key called 'foo'
312
+ # labels.foo:*
313
+ # - Resources that have a key called 'foo' whose value is 'bar'
314
+ # labels.foo = bar
315
+ #
316
+ # - Filter by state:
317
+ # - Deployments in CREATING state.
318
+ # state=CREATING
319
+ # @!attribute [rw] order_by
320
+ # @return [::String]
321
+ # Field to use to sort the list.
322
+ class ListDeploymentsRequest
323
+ include ::Google::Protobuf::MessageExts
324
+ extend ::Google::Protobuf::MessageExts::ClassMethods
325
+ end
326
+
327
+ # @!attribute [rw] deployments
328
+ # @return [::Array<::Google::Cloud::Config::V1::Deployment>]
329
+ # List of {::Google::Cloud::Config::V1::Deployment Deployment}s.
330
+ # @!attribute [rw] next_page_token
331
+ # @return [::String]
332
+ # Token to be supplied to the next ListDeployments request via `page_token`
333
+ # to obtain the next set of results.
334
+ # @!attribute [rw] unreachable
335
+ # @return [::Array<::String>]
336
+ # Locations that could not be reached.
337
+ class ListDeploymentsResponse
338
+ include ::Google::Protobuf::MessageExts
339
+ extend ::Google::Protobuf::MessageExts::ClassMethods
340
+ end
341
+
342
+ # @!attribute [rw] name
343
+ # @return [::String]
344
+ # Required. The name of the deployment. Format:
345
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}'.
346
+ class GetDeploymentRequest
347
+ include ::Google::Protobuf::MessageExts
348
+ extend ::Google::Protobuf::MessageExts::ClassMethods
349
+ end
350
+
351
+ # A request to list Revisions passed to a 'ListRevisions' call.
352
+ # @!attribute [rw] parent
353
+ # @return [::String]
354
+ # Required. The parent in whose context the Revisions are listed. The parent
355
+ # value is in the format:
356
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}'.
357
+ # @!attribute [rw] page_size
358
+ # @return [::Integer]
359
+ # When requesting a page of resources, `page_size` specifies number of
360
+ # resources to return. If unspecified or set to 0, all resources will be
361
+ # returned.
362
+ # @!attribute [rw] page_token
363
+ # @return [::String]
364
+ # Token returned by previous call to 'ListRevisions' which specifies the
365
+ # position in the list from where to continue listing the resources.
366
+ # @!attribute [rw] filter
367
+ # @return [::String]
368
+ # Lists the Revisions that match the filter expression. A filter
369
+ # expression filters the resources listed in the response. The expression
370
+ # must be of the form '\\{field} \\{operator} \\{value}' where operators: '<', '>',
371
+ # '<=', '>=', '!=', '=', ':' are supported (colon ':' represents a HAS
372
+ # operator which is roughly synonymous with equality). \\{field} can refer to a
373
+ # proto or JSON field, or a synthetic field. Field names can be camelCase or
374
+ # snake_case.
375
+ #
376
+ # Examples:
377
+ # - Filter by name:
378
+ # name = "projects/foo/locations/us-central1/deployments/dep/revisions/bar
379
+ #
380
+ # - Filter by labels:
381
+ # - Resources that have a key called 'foo'
382
+ # labels.foo:*
383
+ # - Resources that have a key called 'foo' whose value is 'bar'
384
+ # labels.foo = bar
385
+ #
386
+ # - Filter by state:
387
+ # - Revisions in CREATING state.
388
+ # state=CREATING
389
+ # @!attribute [rw] order_by
390
+ # @return [::String]
391
+ # Field to use to sort the list.
392
+ class ListRevisionsRequest
393
+ include ::Google::Protobuf::MessageExts
394
+ extend ::Google::Protobuf::MessageExts::ClassMethods
395
+ end
396
+
397
+ # A response to a 'ListRevisions' call. Contains a list of Revisions.
398
+ # @!attribute [rw] revisions
399
+ # @return [::Array<::Google::Cloud::Config::V1::Revision>]
400
+ # List of {::Google::Cloud::Config::V1::Revision Revision}s.
401
+ # @!attribute [rw] next_page_token
402
+ # @return [::String]
403
+ # A token to request the next page of resources from the 'ListRevisions'
404
+ # method. The value of an empty string means that there are no more resources
405
+ # to return.
406
+ # @!attribute [rw] unreachable
407
+ # @return [::Array<::String>]
408
+ # Locations that could not be reached.
409
+ class ListRevisionsResponse
410
+ include ::Google::Protobuf::MessageExts
411
+ extend ::Google::Protobuf::MessageExts::ClassMethods
412
+ end
413
+
414
+ # A request to get a Revision from a 'GetRevision' call.
415
+ # @!attribute [rw] name
416
+ # @return [::String]
417
+ # Required. The name of the Revision in the format:
418
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}/revisions/\\{revision}'.
419
+ class GetRevisionRequest
420
+ include ::Google::Protobuf::MessageExts
421
+ extend ::Google::Protobuf::MessageExts::ClassMethods
422
+ end
423
+
424
+ # @!attribute [rw] parent
425
+ # @return [::String]
426
+ # Required. The parent in whose context the Deployment is created. The parent
427
+ # value is in the format: 'projects/\\{project_id}/locations/\\{location}'.
428
+ # @!attribute [rw] deployment_id
429
+ # @return [::String]
430
+ # Required. The Deployment ID.
431
+ # @!attribute [rw] deployment
432
+ # @return [::Google::Cloud::Config::V1::Deployment]
433
+ # Required. {::Google::Cloud::Config::V1::Deployment Deployment} resource to be
434
+ # created.
435
+ # @!attribute [rw] request_id
436
+ # @return [::String]
437
+ # Optional. An optional request ID to identify requests. Specify a unique
438
+ # request ID so that if you must retry your request, the server will know to
439
+ # ignore the request if it has already been completed. The server will
440
+ # guarantee that for at least 60 minutes since the first request.
441
+ #
442
+ # For example, consider a situation where you make an initial request and the
443
+ # request times out. If you make the request again with the same request ID,
444
+ # the server can check if original operation with the same request ID was
445
+ # received, and if so, will ignore the second request. This prevents clients
446
+ # from accidentally creating duplicate commitments.
447
+ #
448
+ # The request ID must be a valid UUID with the exception that zero UUID is
449
+ # not supported (00000000-0000-0000-0000-000000000000).
450
+ class CreateDeploymentRequest
451
+ include ::Google::Protobuf::MessageExts
452
+ extend ::Google::Protobuf::MessageExts::ClassMethods
453
+ end
454
+
455
+ # @!attribute [rw] update_mask
456
+ # @return [::Google::Protobuf::FieldMask]
457
+ # Optional. Field mask used to specify the fields to be overwritten in the
458
+ # Deployment resource by the update.
459
+ #
460
+ # The fields specified in the update_mask are relative to the resource, not
461
+ # the full request. A field will be overwritten if it is in the mask. If the
462
+ # user does not provide a mask then all fields will be overwritten.
463
+ # @!attribute [rw] deployment
464
+ # @return [::Google::Cloud::Config::V1::Deployment]
465
+ # Required. {::Google::Cloud::Config::V1::Deployment Deployment} to update.
466
+ #
467
+ # The deployment's `name` field is used to identify the resource to be
468
+ # updated. Format:
469
+ # `projects/{project}/locations/{location}/deployments/{deployment}`
470
+ # @!attribute [rw] request_id
471
+ # @return [::String]
472
+ # Optional. An optional request ID to identify requests. Specify a unique
473
+ # request ID so that if you must retry your request, the server will know to
474
+ # ignore the request if it has already been completed. The server will
475
+ # guarantee that for at least 60 minutes since the first request.
476
+ #
477
+ # For example, consider a situation where you make an initial request and the
478
+ # request times out. If you make the request again with the same request ID,
479
+ # the server can check if original operation with the same request ID was
480
+ # received, and if so, will ignore the second request. This prevents clients
481
+ # from accidentally creating duplicate commitments.
482
+ #
483
+ # The request ID must be a valid UUID with the exception that zero UUID is
484
+ # not supported (00000000-0000-0000-0000-000000000000).
485
+ class UpdateDeploymentRequest
486
+ include ::Google::Protobuf::MessageExts
487
+ extend ::Google::Protobuf::MessageExts::ClassMethods
488
+ end
489
+
490
+ # @!attribute [rw] name
491
+ # @return [::String]
492
+ # Required. The name of the Deployment in the format:
493
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}'.
494
+ # @!attribute [rw] request_id
495
+ # @return [::String]
496
+ # Optional. An optional request ID to identify requests. Specify a unique
497
+ # request ID so that if you must retry your request, the server will know to
498
+ # ignore the request if it has already been completed. The server will
499
+ # guarantee that for at least 60 minutes after the first request.
500
+ #
501
+ # For example, consider a situation where you make an initial request and the
502
+ # request times out. If you make the request again with the same request ID,
503
+ # the server can check if original operation with the same request ID was
504
+ # received, and if so, will ignore the second request. This prevents clients
505
+ # from accidentally creating duplicate commitments.
506
+ #
507
+ # The request ID must be a valid UUID with the exception that zero UUID is
508
+ # not supported (00000000-0000-0000-0000-000000000000).
509
+ # @!attribute [rw] force
510
+ # @return [::Boolean]
511
+ # Optional. If set to true, any revisions for this deployment will also be
512
+ # deleted. (Otherwise, the request will only work if the deployment has no
513
+ # revisions.)
514
+ # @!attribute [rw] delete_policy
515
+ # @return [::Google::Cloud::Config::V1::DeleteDeploymentRequest::DeletePolicy]
516
+ # Optional. Policy on how resources actuated by the deployment should be
517
+ # deleted. If unspecified, the default behavior is to delete the underlying
518
+ # resources.
519
+ class DeleteDeploymentRequest
520
+ include ::Google::Protobuf::MessageExts
521
+ extend ::Google::Protobuf::MessageExts::ClassMethods
522
+
523
+ # Policy on how resources actuated by the deployment should be deleted.
524
+ module DeletePolicy
525
+ # Unspecified policy, resources will be deleted.
526
+ DELETE_POLICY_UNSPECIFIED = 0
527
+
528
+ # Deletes resources actuated by the deployment.
529
+ DELETE = 1
530
+
531
+ # Abandons resources and only deletes the deployment and its metadata.
532
+ ABANDON = 2
533
+ end
534
+ end
535
+
536
+ # Represents the metadata of the long-running operation.
537
+ # @!attribute [r] deployment_metadata
538
+ # @return [::Google::Cloud::Config::V1::DeploymentOperationMetadata]
539
+ # Output only. Metadata about the deployment operation state.
540
+ # @!attribute [r] create_time
541
+ # @return [::Google::Protobuf::Timestamp]
542
+ # Output only. Time when the operation was created.
543
+ # @!attribute [r] end_time
544
+ # @return [::Google::Protobuf::Timestamp]
545
+ # Output only. Time when the operation finished running.
546
+ # @!attribute [r] target
547
+ # @return [::String]
548
+ # Output only. Server-defined resource path for the target of the operation.
549
+ # @!attribute [r] verb
550
+ # @return [::String]
551
+ # Output only. Name of the verb executed by the operation.
552
+ # @!attribute [r] status_message
553
+ # @return [::String]
554
+ # Output only. Human-readable status of the operation, if any.
555
+ # @!attribute [r] requested_cancellation
556
+ # @return [::Boolean]
557
+ # Output only. Identifies whether the user has requested cancellation of the
558
+ # operation. Operations that have successfully been cancelled have
559
+ # [Operation.error][] value with a
560
+ # {::Google::Rpc::Status#code google.rpc.Status.code} of 1, corresponding to
561
+ # `Code.CANCELLED`.
562
+ # @!attribute [r] api_version
563
+ # @return [::String]
564
+ # Output only. API version used to start the operation.
565
+ class OperationMetadata
566
+ include ::Google::Protobuf::MessageExts
567
+ extend ::Google::Protobuf::MessageExts::ClassMethods
568
+ end
569
+
570
+ # A child resource of a Deployment generated by a 'CreateDeployment' or
571
+ # 'UpdateDeployment' call. Each Revision contains metadata pertaining to a
572
+ # snapshot of a particular Deployment.
573
+ # @!attribute [r] terraform_blueprint
574
+ # @return [::Google::Cloud::Config::V1::TerraformBlueprint]
575
+ # Output only. A blueprint described using Terraform's HashiCorp
576
+ # Configuration Language as a root module.
577
+ # @!attribute [rw] name
578
+ # @return [::String]
579
+ # Revision name. Format:
580
+ # `projects/{project}/locations/{location}/deployments/{deployment}/
581
+ # revisions/\\{revision}`
582
+ # @!attribute [r] create_time
583
+ # @return [::Google::Protobuf::Timestamp]
584
+ # Output only. Time when the revision was created.
585
+ # @!attribute [r] update_time
586
+ # @return [::Google::Protobuf::Timestamp]
587
+ # Output only. Time when the revision was last modified.
588
+ # @!attribute [r] action
589
+ # @return [::Google::Cloud::Config::V1::Revision::Action]
590
+ # Output only. The action which created this revision
591
+ # @!attribute [r] state
592
+ # @return [::Google::Cloud::Config::V1::Revision::State]
593
+ # Output only. Current state of the revision.
594
+ # @!attribute [r] apply_results
595
+ # @return [::Google::Cloud::Config::V1::ApplyResults]
596
+ # Output only. Outputs and artifacts from applying a deployment.
597
+ # @!attribute [r] state_detail
598
+ # @return [::String]
599
+ # Output only. Additional info regarding the current state.
600
+ # @!attribute [r] error_code
601
+ # @return [::Google::Cloud::Config::V1::Revision::ErrorCode]
602
+ # Output only. Code describing any errors that may have occurred.
603
+ # @!attribute [r] build
604
+ # @return [::String]
605
+ # Output only. Cloud Build instance UUID associated with this revision.
606
+ # @!attribute [r] logs
607
+ # @return [::String]
608
+ # Output only. Location of Revision operation logs in
609
+ # `gs://{bucket}/{object}` format.
610
+ # @!attribute [r] tf_errors
611
+ # @return [::Array<::Google::Cloud::Config::V1::TerraformError>]
612
+ # Output only. Errors encountered when creating or updating this deployment.
613
+ # Errors are truncated to 10 entries, see `delete_results` and `error_logs`
614
+ # for full details.
615
+ # @!attribute [r] error_logs
616
+ # @return [::String]
617
+ # Output only. Location of Terraform error logs in Google Cloud Storage.
618
+ # Format: `gs://{bucket}/{object}`.
619
+ # @!attribute [r] service_account
620
+ # @return [::String]
621
+ # Output only. User-specified Service Account (SA) to be used as credential
622
+ # to manage resources. Format:
623
+ # `projects/{projectID}/serviceAccounts/{serviceAccount}`
624
+ # @!attribute [r] import_existing_resources
625
+ # @return [::Boolean]
626
+ # Output only. By default, Infra Manager will return a failure when
627
+ # Terraform encounters a 409 code (resource conflict error) during actuation.
628
+ # If this flag is set to true, Infra Manager will instead
629
+ # attempt to automatically import the resource into the Terraform state (for
630
+ # supported resource types) and continue actuation.
631
+ #
632
+ # Not all resource types are supported, refer to documentation.
633
+ # @!attribute [r] worker_pool
634
+ # @return [::String]
635
+ # Output only. The user-specified Cloud Build worker pool resource in which
636
+ # the Cloud Build job will execute. Format:
637
+ # `projects/{project}/locations/{location}/workerPools/{workerPoolId}`.
638
+ # If this field is unspecified, the default Cloud Build worker pool will be
639
+ # used.
640
+ class Revision
641
+ include ::Google::Protobuf::MessageExts
642
+ extend ::Google::Protobuf::MessageExts::ClassMethods
643
+
644
+ # Actions that generate a revision.
645
+ module Action
646
+ # The default value. This value is used if the action is omitted.
647
+ ACTION_UNSPECIFIED = 0
648
+
649
+ # The revision was generated by creating a deployment.
650
+ CREATE = 1
651
+
652
+ # The revision was generated by updating a deployment.
653
+ UPDATE = 2
654
+
655
+ # The revision was deleted.
656
+ DELETE = 3
657
+ end
658
+
659
+ # Possible states of a revision.
660
+ module State
661
+ # The default value. This value is used if the state is omitted.
662
+ STATE_UNSPECIFIED = 0
663
+
664
+ # The revision is being applied.
665
+ APPLYING = 1
666
+
667
+ # The revision was applied successfully.
668
+ APPLIED = 2
669
+
670
+ # The revision could not be applied successfully.
671
+ FAILED = 3
672
+ end
673
+
674
+ # Possible errors if Revision could not be created or updated successfully.
675
+ module ErrorCode
676
+ # No error code was specified.
677
+ ERROR_CODE_UNSPECIFIED = 0
678
+
679
+ # Cloud Build failed due to a permission issue.
680
+ CLOUD_BUILD_PERMISSION_DENIED = 1
681
+
682
+ # Cloud Build job associated with creating or updating a deployment could
683
+ # not be started.
684
+ APPLY_BUILD_API_FAILED = 4
685
+
686
+ # Cloud Build job associated with creating or updating a deployment was
687
+ # started but failed.
688
+ APPLY_BUILD_RUN_FAILED = 5
689
+ end
690
+ end
691
+
692
+ # Errors encountered during actuation using Terraform
693
+ # @!attribute [rw] resource_address
694
+ # @return [::String]
695
+ # Address of the resource associated with the error,
696
+ # e.g. `google_compute_network.vpc_network`.
697
+ # @!attribute [rw] http_response_code
698
+ # @return [::Integer]
699
+ # HTTP response code returned from Google Cloud Platform APIs when Terraform
700
+ # fails to provision the resource. If unset or 0, no HTTP response code was
701
+ # returned by Terraform.
702
+ # @!attribute [rw] error_description
703
+ # @return [::String]
704
+ # A human-readable error description.
705
+ # @!attribute [rw] error
706
+ # @return [::Google::Rpc::Status]
707
+ # Original error response from underlying Google API, if available.
708
+ class TerraformError
709
+ include ::Google::Protobuf::MessageExts
710
+ extend ::Google::Protobuf::MessageExts::ClassMethods
711
+ end
712
+
713
+ # A set of files in a Git repository.
714
+ # @!attribute [rw] repo
715
+ # @return [::String]
716
+ # Optional. Repository URL.
717
+ # Example: 'https://github.com/kubernetes/examples.git'
718
+ # @!attribute [rw] directory
719
+ # @return [::String]
720
+ # Optional. Subdirectory inside the repository.
721
+ # Example: 'staging/my-package'
722
+ # @!attribute [rw] ref
723
+ # @return [::String]
724
+ # Optional. Git reference (e.g. branch or tag).
725
+ class GitSource
726
+ include ::Google::Protobuf::MessageExts
727
+ extend ::Google::Protobuf::MessageExts::ClassMethods
728
+ end
729
+
730
+ # Ephemeral metadata content describing the state of a deployment operation.
731
+ # @!attribute [rw] step
732
+ # @return [::Google::Cloud::Config::V1::DeploymentOperationMetadata::DeploymentStep]
733
+ # The current step the deployment operation is running.
734
+ # @!attribute [rw] apply_results
735
+ # @return [::Google::Cloud::Config::V1::ApplyResults]
736
+ # Outputs and artifacts from applying a deployment.
737
+ # @!attribute [r] build
738
+ # @return [::String]
739
+ # Output only. Cloud Build instance UUID associated with this operation.
740
+ # @!attribute [r] logs
741
+ # @return [::String]
742
+ # Output only. Location of Deployment operations logs in
743
+ # `gs://{bucket}/{object}` format.
744
+ class DeploymentOperationMetadata
745
+ include ::Google::Protobuf::MessageExts
746
+ extend ::Google::Protobuf::MessageExts::ClassMethods
747
+
748
+ # The possible steps a deployment may be running.
749
+ module DeploymentStep
750
+ # Unspecified deployment step
751
+ DEPLOYMENT_STEP_UNSPECIFIED = 0
752
+
753
+ # Infra Manager is creating a Google Cloud Storage bucket to store
754
+ # artifacts and metadata about the deployment and revision
755
+ PREPARING_STORAGE_BUCKET = 1
756
+
757
+ # Downloading the blueprint onto the Google Cloud Storage bucket
758
+ DOWNLOADING_BLUEPRINT = 2
759
+
760
+ # Initializing Terraform using `terraform init`
761
+ RUNNING_TF_INIT = 3
762
+
763
+ # Running `terraform plan`
764
+ RUNNING_TF_PLAN = 4
765
+
766
+ # Actuating resources using Terraform using `terraform apply`
767
+ RUNNING_TF_APPLY = 5
768
+
769
+ # Destroying resources using Terraform using `terraform destroy`
770
+ RUNNING_TF_DESTROY = 6
771
+
772
+ # Validating the uploaded TF state file when unlocking a deployment
773
+ RUNNING_TF_VALIDATE = 7
774
+
775
+ # Unlocking a deployment
776
+ UNLOCKING_DEPLOYMENT = 8
777
+
778
+ # Operation was successful
779
+ SUCCEEDED = 9
780
+
781
+ # Operation failed
782
+ FAILED = 10
783
+ end
784
+ end
785
+
786
+ # Resource represents a Google Cloud Platform resource actuated by IM.
787
+ # Resources are child resources of Revisions.
788
+ # @!attribute [r] name
789
+ # @return [::String]
790
+ # Output only. Resource name.
791
+ # Format:
792
+ # `projects/{project}/locations/{location}/deployments/{deployment}/revisions/{revision}/resources/{resource}`
793
+ # @!attribute [r] terraform_info
794
+ # @return [::Google::Cloud::Config::V1::ResourceTerraformInfo]
795
+ # Output only. Terraform-specific info if this resource was created using
796
+ # Terraform.
797
+ # @!attribute [r] cai_assets
798
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Config::V1::ResourceCAIInfo}]
799
+ # Output only. Map of Cloud Asset Inventory (CAI) type to CAI info (e.g. CAI
800
+ # ID). CAI type format follows
801
+ # https://cloud.google.com/asset-inventory/docs/supported-asset-types
802
+ # @!attribute [r] intent
803
+ # @return [::Google::Cloud::Config::V1::Resource::Intent]
804
+ # Output only. Intent of the resource.
805
+ # @!attribute [r] state
806
+ # @return [::Google::Cloud::Config::V1::Resource::State]
807
+ # Output only. Current state of the resource.
808
+ class Resource
809
+ include ::Google::Protobuf::MessageExts
810
+ extend ::Google::Protobuf::MessageExts::ClassMethods
811
+
812
+ # @!attribute [rw] key
813
+ # @return [::String]
814
+ # @!attribute [rw] value
815
+ # @return [::Google::Cloud::Config::V1::ResourceCAIInfo]
816
+ class CaiAssetsEntry
817
+ include ::Google::Protobuf::MessageExts
818
+ extend ::Google::Protobuf::MessageExts::ClassMethods
819
+ end
820
+
821
+ # Possible intent of the resource.
822
+ module Intent
823
+ # The default value. This value is used if the intent is omitted.
824
+ INTENT_UNSPECIFIED = 0
825
+
826
+ # Infra Manager will create this Resource.
827
+ CREATE = 1
828
+
829
+ # Infra Manager will update this Resource.
830
+ UPDATE = 2
831
+
832
+ # Infra Manager will delete this Resource.
833
+ DELETE = 3
834
+
835
+ # Infra Manager will destroy and recreate this Resource.
836
+ RECREATE = 4
837
+
838
+ # Infra Manager will leave this Resource untouched.
839
+ UNCHANGED = 5
840
+ end
841
+
842
+ # Possible states of a resource.
843
+ module State
844
+ # The default value. This value is used if the state is omitted.
845
+ STATE_UNSPECIFIED = 0
846
+
847
+ # Resource has been planned for reconcile.
848
+ PLANNED = 1
849
+
850
+ # Resource is actively reconciling into the intended state.
851
+ IN_PROGRESS = 2
852
+
853
+ # Resource has reconciled to intended state.
854
+ RECONCILED = 3
855
+
856
+ # Resource failed to reconcile.
857
+ FAILED = 4
858
+ end
859
+ end
860
+
861
+ # Terraform info of a Resource.
862
+ # @!attribute [rw] address
863
+ # @return [::String]
864
+ # TF resource address that uniquely identifies this resource within this
865
+ # deployment.
866
+ # @!attribute [rw] type
867
+ # @return [::String]
868
+ # TF resource type
869
+ # @!attribute [rw] id
870
+ # @return [::String]
871
+ # ID attribute of the TF resource
872
+ class ResourceTerraformInfo
873
+ include ::Google::Protobuf::MessageExts
874
+ extend ::Google::Protobuf::MessageExts::ClassMethods
875
+ end
876
+
877
+ # CAI info of a Resource.
878
+ # @!attribute [rw] full_resource_name
879
+ # @return [::String]
880
+ # CAI resource name in the format following
881
+ # https://cloud.google.com/apis/design/resource_names#full_resource_name
882
+ class ResourceCAIInfo
883
+ include ::Google::Protobuf::MessageExts
884
+ extend ::Google::Protobuf::MessageExts::ClassMethods
885
+ end
886
+
887
+ # A request to get a Resource from a 'GetResource' call.
888
+ # @!attribute [rw] name
889
+ # @return [::String]
890
+ # Required. The name of the Resource in the format:
891
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}/revisions/\\{revision}/resource/\\{resource}'.
892
+ class GetResourceRequest
893
+ include ::Google::Protobuf::MessageExts
894
+ extend ::Google::Protobuf::MessageExts::ClassMethods
895
+ end
896
+
897
+ # A request to list Resources passed to a 'ListResources' call.
898
+ # @!attribute [rw] parent
899
+ # @return [::String]
900
+ # Required. The parent in whose context the Resources are listed. The parent
901
+ # value is in the format:
902
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}/revisions/\\{revision}'.
903
+ # @!attribute [rw] page_size
904
+ # @return [::Integer]
905
+ # When requesting a page of resources, 'page_size' specifies number of
906
+ # resources to return. If unspecified or set to 0, all resources will be
907
+ # returned.
908
+ # @!attribute [rw] page_token
909
+ # @return [::String]
910
+ # Token returned by previous call to 'ListResources' which specifies the
911
+ # position in the list from where to continue listing the resources.
912
+ # @!attribute [rw] filter
913
+ # @return [::String]
914
+ # Lists the Resources that match the filter expression. A filter
915
+ # expression filters the resources listed in the response. The expression
916
+ # must be of the form '\\{field} \\{operator} \\{value}' where operators: '<', '>',
917
+ # '<=',
918
+ # '>=',
919
+ # '!=', '=', ':' are supported (colon ':' represents a HAS operator which is
920
+ # roughly synonymous with equality). \\{field} can refer to a proto or JSON
921
+ # field, or a synthetic field. Field names can be camelCase or snake_case.
922
+ #
923
+ # Examples:
924
+ # - Filter by name:
925
+ # name =
926
+ # "projects/foo/locations/us-central1/deployments/dep/revisions/bar/resources/baz
927
+ # @!attribute [rw] order_by
928
+ # @return [::String]
929
+ # Field to use to sort the list.
930
+ class ListResourcesRequest
931
+ include ::Google::Protobuf::MessageExts
932
+ extend ::Google::Protobuf::MessageExts::ClassMethods
933
+ end
934
+
935
+ # A response to a 'ListResources' call. Contains a list of Resources.
936
+ # @!attribute [rw] resources
937
+ # @return [::Array<::Google::Cloud::Config::V1::Resource>]
938
+ # List of [Resources][]s.
939
+ # @!attribute [rw] next_page_token
940
+ # @return [::String]
941
+ # A token to request the next page of resources from the 'ListResources'
942
+ # method. The value of an empty string means that there are no more resources
943
+ # to return.
944
+ # @!attribute [rw] unreachable
945
+ # @return [::Array<::String>]
946
+ # Locations that could not be reached.
947
+ class ListResourcesResponse
948
+ include ::Google::Protobuf::MessageExts
949
+ extend ::Google::Protobuf::MessageExts::ClassMethods
950
+ end
951
+
952
+ # Contains info about a Terraform state file
953
+ # @!attribute [r] signed_uri
954
+ # @return [::String]
955
+ # Output only. Cloud Storage signed URI used for downloading or uploading the
956
+ # state file.
957
+ class Statefile
958
+ include ::Google::Protobuf::MessageExts
959
+ extend ::Google::Protobuf::MessageExts::ClassMethods
960
+ end
961
+
962
+ # A request to export a state file passed to a 'ExportDeploymentStatefile'
963
+ # call.
964
+ # @!attribute [rw] parent
965
+ # @return [::String]
966
+ # Required. The parent in whose context the statefile is listed. The parent
967
+ # value is in the format:
968
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}'.
969
+ # @!attribute [rw] draft
970
+ # @return [::Boolean]
971
+ # Optional. If this flag is set to true, the exported deployment state file
972
+ # will be the draft state. This will enable the draft file to be validated
973
+ # before copying it over to the working state on unlock.
974
+ class ExportDeploymentStatefileRequest
975
+ include ::Google::Protobuf::MessageExts
976
+ extend ::Google::Protobuf::MessageExts::ClassMethods
977
+ end
978
+
979
+ # A request to export a state file passed to a 'ExportRevisionStatefile'
980
+ # call.
981
+ # @!attribute [rw] parent
982
+ # @return [::String]
983
+ # Required. The parent in whose context the statefile is listed. The parent
984
+ # value is in the format:
985
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}/revisions/\\{revision}'.
986
+ class ExportRevisionStatefileRequest
987
+ include ::Google::Protobuf::MessageExts
988
+ extend ::Google::Protobuf::MessageExts::ClassMethods
989
+ end
990
+
991
+ # A request to import a state file passed to a 'ImportStatefile' call.
992
+ # @!attribute [rw] parent
993
+ # @return [::String]
994
+ # Required. The parent in whose context the statefile is listed. The parent
995
+ # value is in the format:
996
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}'.
997
+ # @!attribute [rw] lock_id
998
+ # @return [::Integer]
999
+ # Required. Lock ID of the lock file to verify that the user who is importing
1000
+ # the state file previously locked the Deployment.
1001
+ # @!attribute [rw] skip_draft
1002
+ # @return [::Boolean]
1003
+ # Optional.
1004
+ class ImportStatefileRequest
1005
+ include ::Google::Protobuf::MessageExts
1006
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1007
+ end
1008
+
1009
+ # A request to delete a state file passed to a 'DeleteStatefile' call.
1010
+ # @!attribute [rw] name
1011
+ # @return [::String]
1012
+ # Required. The name of the deployment in the format:
1013
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}'.
1014
+ # @!attribute [rw] lock_id
1015
+ # @return [::Integer]
1016
+ # Required. Lock ID of the lock file to verify that the user who is deleting
1017
+ # the state file previously locked the Deployment.
1018
+ class DeleteStatefileRequest
1019
+ include ::Google::Protobuf::MessageExts
1020
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1021
+ end
1022
+
1023
+ # A request to lock a deployment passed to a 'LockDeployment' call.
1024
+ # @!attribute [rw] name
1025
+ # @return [::String]
1026
+ # Required. The name of the deployment in the format:
1027
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}'.
1028
+ class LockDeploymentRequest
1029
+ include ::Google::Protobuf::MessageExts
1030
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1031
+ end
1032
+
1033
+ # A request to unlock a state file passed to a 'UnlockDeployment' call.
1034
+ # @!attribute [rw] name
1035
+ # @return [::String]
1036
+ # Required. The name of the deployment in the format:
1037
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}'.
1038
+ # @!attribute [rw] lock_id
1039
+ # @return [::Integer]
1040
+ # Required. Lock ID of the lock file to be unlocked.
1041
+ class UnlockDeploymentRequest
1042
+ include ::Google::Protobuf::MessageExts
1043
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1044
+ end
1045
+
1046
+ # A request to get a state file lock info passed to a 'ExportLockInfo' call.
1047
+ # @!attribute [rw] name
1048
+ # @return [::String]
1049
+ # Required. The name of the deployment in the format:
1050
+ # 'projects/\\{project_id}/locations/\\{location}/deployments/\\{deployment}'.
1051
+ class ExportLockInfoRequest
1052
+ include ::Google::Protobuf::MessageExts
1053
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1054
+ end
1055
+
1056
+ # Details about the lock which locked the deployment.
1057
+ # @!attribute [rw] lock_id
1058
+ # @return [::Integer]
1059
+ # Unique ID for the lock to be overridden with generation ID in the backend.
1060
+ # @!attribute [rw] operation
1061
+ # @return [::String]
1062
+ # Terraform operation, provided by the caller.
1063
+ # @!attribute [rw] info
1064
+ # @return [::String]
1065
+ # Extra information to store with the lock, provided by the caller.
1066
+ # @!attribute [rw] who
1067
+ # @return [::String]
1068
+ # user@hostname when available
1069
+ # @!attribute [rw] version
1070
+ # @return [::String]
1071
+ # Terraform version
1072
+ # @!attribute [rw] create_time
1073
+ # @return [::Google::Protobuf::Timestamp]
1074
+ # Time that the lock was taken.
1075
+ class LockInfo
1076
+ include ::Google::Protobuf::MessageExts
1077
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1078
+ end
1079
+ end
1080
+ end
1081
+ end
1082
+ end