google-cloud-deploy-v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,1257 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 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 Deploy
23
+ module V1
24
+ # A `DeliveryPipeline` resource in the Google Cloud Deploy API.
25
+ #
26
+ # A `DeliveryPipeline` defines a pipeline through which a Skaffold
27
+ # configuration can progress.
28
+ # @!attribute [rw] name
29
+ # @return [::String]
30
+ # Optional. Name of the `DeliveryPipeline`. Format is projects/\\{project}/
31
+ # locations/\\{location}/deliveryPipelines/[a-z][a-z0-9\-]\\{0,62}.
32
+ # @!attribute [r] uid
33
+ # @return [::String]
34
+ # Output only. Unique identifier of the `DeliveryPipeline`.
35
+ # @!attribute [rw] description
36
+ # @return [::String]
37
+ # Description of the `DeliveryPipeline`. Max length is 255 characters.
38
+ # @!attribute [rw] annotations
39
+ # @return [::Google::Protobuf::Map{::String => ::String}]
40
+ # User annotations. These attributes can only be set and used by the
41
+ # user, and not by Google Cloud Deploy. See
42
+ # https://google.aip.dev/128#annotations for more details such as format and
43
+ # size limitations.
44
+ # @!attribute [rw] labels
45
+ # @return [::Google::Protobuf::Map{::String => ::String}]
46
+ # Labels are attributes that can be set and used by both the
47
+ # user and by Google Cloud Deploy. Labels must meet the following
48
+ # constraints: Each resource is limited to 64 labels. Keys must conform to
49
+ # the regexp: [a-zA-Z][a-zA-Z0-9_-]\\{0,62} Values must conform to the regexp:
50
+ # [a-zA-Z0-9_-]\\{0,63} Both keys and values are additionally constrained to be
51
+ # <= 128 bytes in size.
52
+ # @!attribute [r] create_time
53
+ # @return [::Google::Protobuf::Timestamp]
54
+ # Output only. Time at which the pipeline was created.
55
+ # @!attribute [r] update_time
56
+ # @return [::Google::Protobuf::Timestamp]
57
+ # Output only. Most recent time at which the pipeline was updated.
58
+ # @!attribute [rw] serial_pipeline
59
+ # @return [::Google::Cloud::Deploy::V1::SerialPipeline]
60
+ # SerialPipeline defines a sequential set of stages for a
61
+ # `DeliveryPipeline`.
62
+ # @!attribute [r] condition
63
+ # @return [::Google::Cloud::Deploy::V1::PipelineCondition]
64
+ # Output only. Information around the state of the Delivery Pipeline.
65
+ # @!attribute [rw] etag
66
+ # @return [::String]
67
+ # This checksum is computed by the server based on the value of other
68
+ # fields, and may be sent on update and delete requests to ensure the
69
+ # client has an up-to-date value before proceeding.
70
+ class DeliveryPipeline
71
+ include ::Google::Protobuf::MessageExts
72
+ extend ::Google::Protobuf::MessageExts::ClassMethods
73
+
74
+ # @!attribute [rw] key
75
+ # @return [::String]
76
+ # @!attribute [rw] value
77
+ # @return [::String]
78
+ class AnnotationsEntry
79
+ include ::Google::Protobuf::MessageExts
80
+ extend ::Google::Protobuf::MessageExts::ClassMethods
81
+ end
82
+
83
+ # @!attribute [rw] key
84
+ # @return [::String]
85
+ # @!attribute [rw] value
86
+ # @return [::String]
87
+ class LabelsEntry
88
+ include ::Google::Protobuf::MessageExts
89
+ extend ::Google::Protobuf::MessageExts::ClassMethods
90
+ end
91
+ end
92
+
93
+ # SerialPipeline defines a sequential set of stages for a `DeliveryPipeline`.
94
+ # @!attribute [rw] stages
95
+ # @return [::Array<::Google::Cloud::Deploy::V1::Stage>]
96
+ # Each stage specifies configuration for a `Target`. The ordering
97
+ # of this list defines the promotion flow.
98
+ class SerialPipeline
99
+ include ::Google::Protobuf::MessageExts
100
+ extend ::Google::Protobuf::MessageExts::ClassMethods
101
+ end
102
+
103
+ # Stage specifies a location to which to deploy.
104
+ # @!attribute [rw] target_id
105
+ # @return [::String]
106
+ # The target_id to which this stage points. This field refers exclusively to
107
+ # the last segment of a target name. For example, this field would just be
108
+ # `my-target` (rather than
109
+ # `projects/project/deliveryPipelines/pipeline/targets/my-target`). The
110
+ # parent `DeliveryPipeline` of the `Target` is inferred to be the parent
111
+ # `DeliveryPipeline` of the `Release` in which this `Stage` lives.
112
+ # @!attribute [rw] profiles
113
+ # @return [::Array<::String>]
114
+ # Skaffold profiles to use when rendering the manifest for this stage's
115
+ # `Target`.
116
+ class Stage
117
+ include ::Google::Protobuf::MessageExts
118
+ extend ::Google::Protobuf::MessageExts::ClassMethods
119
+ end
120
+
121
+ # PipelineReadyCondition contains information around the status of the
122
+ # Pipeline.
123
+ # @!attribute [rw] status
124
+ # @return [::Boolean]
125
+ # True if the Pipeline is in a valid state. Otherwise at least one condition
126
+ # in `PipelineCondition` is in an invalid state. Iterate over those
127
+ # conditions and see which condition(s) has status = false to find out what
128
+ # is wrong with the Pipeline.
129
+ # @!attribute [rw] update_time
130
+ # @return [::Google::Protobuf::Timestamp]
131
+ # Last time the condition was updated.
132
+ class PipelineReadyCondition
133
+ include ::Google::Protobuf::MessageExts
134
+ extend ::Google::Protobuf::MessageExts::ClassMethods
135
+ end
136
+
137
+ # TargetsPresentCondition contains information on any Targets defined in
138
+ # the Delivery Pipeline that do not actually exist.
139
+ # @!attribute [rw] status
140
+ # @return [::Boolean]
141
+ # True if there aren't any missing Targets.
142
+ # @!attribute [rw] missing_targets
143
+ # @return [::Array<::String>]
144
+ # The list of Target names that are missing. For example,
145
+ # projects/\\{project_id}/locations/\\{location_name}/targets/\\{target_name}.
146
+ # @!attribute [rw] update_time
147
+ # @return [::Google::Protobuf::Timestamp]
148
+ # Last time the condition was updated.
149
+ class TargetsPresentCondition
150
+ include ::Google::Protobuf::MessageExts
151
+ extend ::Google::Protobuf::MessageExts::ClassMethods
152
+ end
153
+
154
+ # PipelineCondition contains all conditions relevant to a Delivery Pipeline.
155
+ # @!attribute [rw] pipeline_ready_condition
156
+ # @return [::Google::Cloud::Deploy::V1::PipelineReadyCondition]
157
+ # Details around the Pipeline's overall status.
158
+ # @!attribute [rw] targets_present_condition
159
+ # @return [::Google::Cloud::Deploy::V1::TargetsPresentCondition]
160
+ # Detalis around targets enumerated in the pipeline.
161
+ class PipelineCondition
162
+ include ::Google::Protobuf::MessageExts
163
+ extend ::Google::Protobuf::MessageExts::ClassMethods
164
+ end
165
+
166
+ # The request object for `ListDeliveryPipelines`.
167
+ # @!attribute [rw] parent
168
+ # @return [::String]
169
+ # Required. The parent, which owns this collection of pipelines. Format must be
170
+ # projects/\\{project_id}/locations/\\{location_name}.
171
+ # @!attribute [rw] page_size
172
+ # @return [::Integer]
173
+ # The maximum number of pipelines to return. The service may return
174
+ # fewer than this value. If unspecified, at most 50 pipelines will
175
+ # be returned. The maximum value is 1000; values above 1000 will be set
176
+ # to 1000.
177
+ # @!attribute [rw] page_token
178
+ # @return [::String]
179
+ # A page token, received from a previous `ListDeliveryPipelines` call.
180
+ # Provide this to retrieve the subsequent page.
181
+ #
182
+ # When paginating, all other provided parameters match
183
+ # the call that provided the page token.
184
+ # @!attribute [rw] filter
185
+ # @return [::String]
186
+ # Filter builds to be returned. See https://google.aip.dev/160 for more
187
+ # details.
188
+ # @!attribute [rw] order_by
189
+ # @return [::String]
190
+ # Field to sort by. See https://google.aip.dev/132#ordering for more details.
191
+ class ListDeliveryPipelinesRequest
192
+ include ::Google::Protobuf::MessageExts
193
+ extend ::Google::Protobuf::MessageExts::ClassMethods
194
+ end
195
+
196
+ # The response object from `ListDeliveryPipelines`.
197
+ # @!attribute [rw] delivery_pipelines
198
+ # @return [::Array<::Google::Cloud::Deploy::V1::DeliveryPipeline>]
199
+ # The `DeliveryPipeline` objects.
200
+ # @!attribute [rw] next_page_token
201
+ # @return [::String]
202
+ # A token, which can be sent as `page_token` to retrieve the next page.
203
+ # If this field is omitted, there are no subsequent pages.
204
+ # @!attribute [rw] unreachable
205
+ # @return [::Array<::String>]
206
+ # Locations that could not be reached.
207
+ class ListDeliveryPipelinesResponse
208
+ include ::Google::Protobuf::MessageExts
209
+ extend ::Google::Protobuf::MessageExts::ClassMethods
210
+ end
211
+
212
+ # The request object for `GetDeliveryPipeline`
213
+ # @!attribute [rw] name
214
+ # @return [::String]
215
+ # Required. Name of the `DeliveryPipeline`. Format must be
216
+ # projects/\\{project_id}/locations/\\{location_name}/deliveryPipelines/\\{pipeline_name}.
217
+ class GetDeliveryPipelineRequest
218
+ include ::Google::Protobuf::MessageExts
219
+ extend ::Google::Protobuf::MessageExts::ClassMethods
220
+ end
221
+
222
+ # The request object for `CreateDeliveryPipeline`.
223
+ # @!attribute [rw] parent
224
+ # @return [::String]
225
+ # Required. The parent collection in which the `DeliveryPipeline` should be created.
226
+ # Format should be projects/\\{project_id}/locations/\\{location_name}.
227
+ # @!attribute [rw] delivery_pipeline_id
228
+ # @return [::String]
229
+ # Required. ID of the `DeliveryPipeline`.
230
+ # @!attribute [rw] delivery_pipeline
231
+ # @return [::Google::Cloud::Deploy::V1::DeliveryPipeline]
232
+ # Required. The `DeliveryPipeline` to create.
233
+ # @!attribute [rw] request_id
234
+ # @return [::String]
235
+ # Optional. A request ID to identify requests. Specify a unique request ID
236
+ # so that if you must retry your request, the server will know to ignore
237
+ # the request if it has already been completed. The server will guarantee
238
+ # that for at least 60 minutes since the first request.
239
+ #
240
+ # For example, consider a situation where you make an initial request and the
241
+ # request times out. If you make the request again with the same request ID,
242
+ # the server can check if original operation with the same request ID was
243
+ # received, and if so, will ignore the second request. This prevents clients
244
+ # from accidentally creating duplicate commitments.
245
+ #
246
+ # The request ID must be a valid UUID with the exception that zero UUID is
247
+ # not supported (00000000-0000-0000-0000-000000000000).
248
+ # @!attribute [rw] validate_only
249
+ # @return [::Boolean]
250
+ # Optional. If set to true, the request is validated and the user is provided with
251
+ # an expected result, but no actual change is made.
252
+ class CreateDeliveryPipelineRequest
253
+ include ::Google::Protobuf::MessageExts
254
+ extend ::Google::Protobuf::MessageExts::ClassMethods
255
+ end
256
+
257
+ # The request object for `UpdateDeliveryPipeline`.
258
+ # @!attribute [rw] update_mask
259
+ # @return [::Google::Protobuf::FieldMask]
260
+ # Required. Field mask is used to specify the fields to be overwritten in the
261
+ # `DeliveryPipeline` resource by the update.
262
+ # The fields specified in the update_mask are relative to the resource, not
263
+ # the full request. A field will be overwritten if it is in the mask. If the
264
+ # user does not provide a mask then all fields will be overwritten.
265
+ # @!attribute [rw] delivery_pipeline
266
+ # @return [::Google::Cloud::Deploy::V1::DeliveryPipeline]
267
+ # Required. The `DeliveryPipeline` to update.
268
+ # @!attribute [rw] request_id
269
+ # @return [::String]
270
+ # Optional. A request ID to identify requests. Specify a unique request ID
271
+ # so that if you must retry your request, the server will know to ignore
272
+ # the request if it has already been completed. The server will guarantee
273
+ # that for at least 60 minutes since the first request.
274
+ #
275
+ # For example, consider a situation where you make an initial request and the
276
+ # request times out. If you make the request again with the same request ID,
277
+ # the server can check if original operation with the same request ID was
278
+ # received, and if so, will ignore the second request. This prevents clients
279
+ # from accidentally creating duplicate commitments.
280
+ #
281
+ # The request ID must be a valid UUID with the exception that zero UUID is
282
+ # not supported (00000000-0000-0000-0000-000000000000).
283
+ # @!attribute [rw] allow_missing
284
+ # @return [::Boolean]
285
+ # Optional. If set to true, updating a `DeliveryPipeline` that does not exist will
286
+ # result in the creation of a new `DeliveryPipeline`.
287
+ # @!attribute [rw] validate_only
288
+ # @return [::Boolean]
289
+ # Optional. If set to true, the request is validated and the user is provided with
290
+ # an expected result, but no actual change is made.
291
+ class UpdateDeliveryPipelineRequest
292
+ include ::Google::Protobuf::MessageExts
293
+ extend ::Google::Protobuf::MessageExts::ClassMethods
294
+ end
295
+
296
+ # The request object for `DeleteDeliveryPipeline`.
297
+ # @!attribute [rw] name
298
+ # @return [::String]
299
+ # Required. The name of the `DeliveryPipeline` to delete. Format should be
300
+ # projects/\\{project_id}/locations/\\{location_name}/deliveryPipelines/\\{pipeline_name}.
301
+ # @!attribute [rw] request_id
302
+ # @return [::String]
303
+ # Optional. A request ID to identify requests. Specify a unique request ID
304
+ # so that if you must retry your request, the server will know to ignore
305
+ # the request if it has already been completed. The server will guarantee
306
+ # that for at least 60 minutes after the first request.
307
+ #
308
+ # For example, consider a situation where you make an initial request and the
309
+ # request times out. If you make the request again with the same request ID,
310
+ # the server can check if original operation with the same request ID was
311
+ # received, and if so, will ignore the second request. This prevents clients
312
+ # from accidentally creating duplicate commitments.
313
+ #
314
+ # The request ID must be a valid UUID with the exception that zero UUID is
315
+ # not supported (00000000-0000-0000-0000-000000000000).
316
+ # @!attribute [rw] allow_missing
317
+ # @return [::Boolean]
318
+ # Optional. If set to true, then deleting an already deleted or non-existing
319
+ # `DeliveryPipeline` will succeed.
320
+ # @!attribute [rw] validate_only
321
+ # @return [::Boolean]
322
+ # Optional. If set, validate the request and preview the review, but do not actually
323
+ # post it.
324
+ # @!attribute [rw] force
325
+ # @return [::Boolean]
326
+ # Optional. If set to true, all child resources under this pipeline will also be
327
+ # deleted. Otherwise, the request will only work if the pipeline has
328
+ # no child resources.
329
+ # @!attribute [rw] etag
330
+ # @return [::String]
331
+ # Optional. This checksum is computed by the server based on the value of other
332
+ # fields, and may be sent on update and delete requests to ensure the
333
+ # client has an up-to-date value before proceeding.
334
+ class DeleteDeliveryPipelineRequest
335
+ include ::Google::Protobuf::MessageExts
336
+ extend ::Google::Protobuf::MessageExts::ClassMethods
337
+ end
338
+
339
+ # A `Target` resource in the Google Cloud Deploy API.
340
+ #
341
+ # A `Target` defines a location to which a Skaffold configuration
342
+ # can be deployed.
343
+ # @!attribute [rw] name
344
+ # @return [::String]
345
+ # Optional. Name of the `Target`. Format is projects/\\{project}/locations/\\{location}/
346
+ # deliveryPipelines/\\{deliveryPipeline}/targets/[a-z][a-z0-9\-]\\{0,62}.
347
+ # @!attribute [r] target_id
348
+ # @return [::String]
349
+ # Output only. Resource id of the `Target`.
350
+ # @!attribute [r] uid
351
+ # @return [::String]
352
+ # Output only. Unique identifier of the `Target`.
353
+ # @!attribute [rw] description
354
+ # @return [::String]
355
+ # Optional. Description of the `Target`. Max length is 255 characters.
356
+ # @!attribute [rw] annotations
357
+ # @return [::Google::Protobuf::Map{::String => ::String}]
358
+ # Optional. User annotations. These attributes can only be set and used by the
359
+ # user, and not by Google Cloud Deploy. See
360
+ # https://google.aip.dev/128#annotations for more details such as format and
361
+ # size limitations.
362
+ # @!attribute [rw] labels
363
+ # @return [::Google::Protobuf::Map{::String => ::String}]
364
+ # Optional. Labels are attributes that can be set and used by both the
365
+ # user and by Google Cloud Deploy. Labels must meet the following
366
+ # constraints: Each resource is limited to 64 labels. Keys must conform to
367
+ # the regexp: [a-zA-Z][a-zA-Z0-9_-]\\{0,62} Values must conform to the regexp:
368
+ # [a-zA-Z0-9_-]\\{0,63} Both keys and values are additionally constrained to be
369
+ # <= 128 bytes in size.
370
+ # @!attribute [rw] require_approval
371
+ # @return [::Boolean]
372
+ # Optional. Whether or not the `Target` requires approval.
373
+ # @!attribute [r] create_time
374
+ # @return [::Google::Protobuf::Timestamp]
375
+ # Output only. Time at which the `Target` was created.
376
+ # @!attribute [r] update_time
377
+ # @return [::Google::Protobuf::Timestamp]
378
+ # Output only. Most recent time at which the `Target` was updated.
379
+ # @!attribute [rw] gke
380
+ # @return [::Google::Cloud::Deploy::V1::GkeCluster]
381
+ # Information specifying a GKE Cluster.
382
+ # @!attribute [rw] etag
383
+ # @return [::String]
384
+ # Optional. This checksum is computed by the server based on the value of other
385
+ # fields, and may be sent on update and delete requests to ensure the
386
+ # client has an up-to-date value before proceeding.
387
+ # @!attribute [rw] execution_configs
388
+ # @return [::Array<::Google::Cloud::Deploy::V1::ExecutionConfig>]
389
+ # Configurations for all execution that relates to this `Target`.
390
+ # Each `ExecutionEnvironmentUsage` value may only be used in a single
391
+ # configuration; using the same value multiple times is an error.
392
+ # When one or more configurations are specified, they must include the
393
+ # `RENDER` and `DEPLOY` `ExecutionEnvironmentUsage` values.
394
+ # When no configurations are specified, execution will use the default
395
+ # specified in `DefaultPool`.
396
+ class Target
397
+ include ::Google::Protobuf::MessageExts
398
+ extend ::Google::Protobuf::MessageExts::ClassMethods
399
+
400
+ # @!attribute [rw] key
401
+ # @return [::String]
402
+ # @!attribute [rw] value
403
+ # @return [::String]
404
+ class AnnotationsEntry
405
+ include ::Google::Protobuf::MessageExts
406
+ extend ::Google::Protobuf::MessageExts::ClassMethods
407
+ end
408
+
409
+ # @!attribute [rw] key
410
+ # @return [::String]
411
+ # @!attribute [rw] value
412
+ # @return [::String]
413
+ class LabelsEntry
414
+ include ::Google::Protobuf::MessageExts
415
+ extend ::Google::Protobuf::MessageExts::ClassMethods
416
+ end
417
+ end
418
+
419
+ # Configuration of the environment to use when calling Skaffold.
420
+ # @!attribute [rw] usages
421
+ # @return [::Array<::Google::Cloud::Deploy::V1::ExecutionConfig::ExecutionEnvironmentUsage>]
422
+ # Required. Usages when this configuration should be applied.
423
+ # @!attribute [rw] default_pool
424
+ # @return [::Google::Cloud::Deploy::V1::DefaultPool]
425
+ # Optional. Use default Cloud Build pool.
426
+ # @!attribute [rw] private_pool
427
+ # @return [::Google::Cloud::Deploy::V1::PrivatePool]
428
+ # Optional. Use private Cloud Build pool.
429
+ class ExecutionConfig
430
+ include ::Google::Protobuf::MessageExts
431
+ extend ::Google::Protobuf::MessageExts::ClassMethods
432
+
433
+ # Possible usages of this configuration.
434
+ module ExecutionEnvironmentUsage
435
+ # Default value. This value is unused.
436
+ EXECUTION_ENVIRONMENT_USAGE_UNSPECIFIED = 0
437
+
438
+ # Use for rendering.
439
+ RENDER = 1
440
+
441
+ # Use for deploying and deployment hooks.
442
+ DEPLOY = 2
443
+ end
444
+ end
445
+
446
+ # Execution using the default Cloud Build pool.
447
+ # @!attribute [rw] service_account
448
+ # @return [::String]
449
+ # Optional. Google service account to use for execution. If unspecified,
450
+ # the project execution service account
451
+ # (<PROJECT_NUMBER>-compute@developer.gserviceaccount.com) will be used.
452
+ # @!attribute [rw] artifact_storage
453
+ # @return [::String]
454
+ # Optional. Cloud Storage location where execution outputs should be stored. This can
455
+ # either be a bucket ("gs://my-bucket") or a path within a bucket
456
+ # ("gs://my-bucket/my-dir").
457
+ # If unspecified, a default bucket located in the same region will be used.
458
+ class DefaultPool
459
+ include ::Google::Protobuf::MessageExts
460
+ extend ::Google::Protobuf::MessageExts::ClassMethods
461
+ end
462
+
463
+ # Execution using a private Cloud Build pool.
464
+ # @!attribute [rw] worker_pool
465
+ # @return [::String]
466
+ # Required. Resource name of the Cloud Build worker pool to use. The format is
467
+ # `projects/{project}/locations/{location}/workerPools/{pool}`.
468
+ # @!attribute [rw] service_account
469
+ # @return [::String]
470
+ # Optional. Google service account to use for execution. If unspecified,
471
+ # the project execution service account
472
+ # (<PROJECT_NUMBER>-compute@developer.gserviceaccount.com) will be used.
473
+ # @!attribute [rw] artifact_storage
474
+ # @return [::String]
475
+ # Optional. Cloud Storage location where execution outputs should be stored. This can
476
+ # either be a bucket ("gs://my-bucket") or a path within a bucket
477
+ # ("gs://my-bucket/my-dir").
478
+ # If unspecified, a default bucket located in the same region will be used.
479
+ class PrivatePool
480
+ include ::Google::Protobuf::MessageExts
481
+ extend ::Google::Protobuf::MessageExts::ClassMethods
482
+ end
483
+
484
+ # Information specifying a GKE Cluster.
485
+ # @!attribute [rw] cluster
486
+ # @return [::String]
487
+ # Information specifying a GKE Cluster. Format is
488
+ # `projects/{project_id}/locations/{location_id}/clusters/{cluster_id}.
489
+ class GkeCluster
490
+ include ::Google::Protobuf::MessageExts
491
+ extend ::Google::Protobuf::MessageExts::ClassMethods
492
+ end
493
+
494
+ # The request object for `ListTargets`.
495
+ # @!attribute [rw] parent
496
+ # @return [::String]
497
+ # Required. The parent, which owns this collection of targets. Format must be
498
+ # projects/\\{project_id}/locations/\\{location_name}.
499
+ # @!attribute [rw] page_size
500
+ # @return [::Integer]
501
+ # Optional. The maximum number of `Target` objects to return. The service may return
502
+ # fewer than this value. If unspecified, at most 50 `Target` objects will be
503
+ # returned. The maximum value is 1000; values above 1000 will be set to 1000.
504
+ # @!attribute [rw] page_token
505
+ # @return [::String]
506
+ # Optional. A page token, received from a previous `ListTargets` call.
507
+ # Provide this to retrieve the subsequent page.
508
+ #
509
+ # When paginating, all other provided parameters match
510
+ # the call that provided the page token.
511
+ # @!attribute [rw] filter
512
+ # @return [::String]
513
+ # Optional. Filter builds to be returned. See https://google.aip.dev/160 for more
514
+ # details.
515
+ # @!attribute [rw] order_by
516
+ # @return [::String]
517
+ # Optional. Field to sort by. See https://google.aip.dev/132#ordering for more details.
518
+ class ListTargetsRequest
519
+ include ::Google::Protobuf::MessageExts
520
+ extend ::Google::Protobuf::MessageExts::ClassMethods
521
+ end
522
+
523
+ # The response object from `ListTargets`.
524
+ # @!attribute [rw] targets
525
+ # @return [::Array<::Google::Cloud::Deploy::V1::Target>]
526
+ # The `Target` objects.
527
+ # @!attribute [rw] next_page_token
528
+ # @return [::String]
529
+ # A token, which can be sent as `page_token` to retrieve the next page.
530
+ # If this field is omitted, there are no subsequent pages.
531
+ # @!attribute [rw] unreachable
532
+ # @return [::Array<::String>]
533
+ # Locations that could not be reached.
534
+ class ListTargetsResponse
535
+ include ::Google::Protobuf::MessageExts
536
+ extend ::Google::Protobuf::MessageExts::ClassMethods
537
+ end
538
+
539
+ # The request object for `GetTarget`.
540
+ # @!attribute [rw] name
541
+ # @return [::String]
542
+ # Required. Name of the `Target`. Format must be
543
+ # projects/\\{project_id}/locations/\\{location_name}/targets/\\{target_name}.
544
+ class GetTargetRequest
545
+ include ::Google::Protobuf::MessageExts
546
+ extend ::Google::Protobuf::MessageExts::ClassMethods
547
+ end
548
+
549
+ # The request object for `CreateTarget`.
550
+ # @!attribute [rw] parent
551
+ # @return [::String]
552
+ # Required. The parent collection in which the `Target` should be created.
553
+ # Format should be
554
+ # projects/\\{project_id}/locations/\\{location_name}.
555
+ # @!attribute [rw] target_id
556
+ # @return [::String]
557
+ # Required. ID of the `Target`.
558
+ # @!attribute [rw] target
559
+ # @return [::Google::Cloud::Deploy::V1::Target]
560
+ # Required. The `Target` to create.
561
+ # @!attribute [rw] request_id
562
+ # @return [::String]
563
+ # Optional. A request ID to identify requests. Specify a unique request ID
564
+ # so that if you must retry your request, the server will know to ignore
565
+ # the request if it has already been completed. The server will guarantee
566
+ # that for at least 60 minutes since the first request.
567
+ #
568
+ # For example, consider a situation where you make an initial request and the
569
+ # request times out. If you make the request again with the same request ID,
570
+ # the server can check if original operation with the same request ID was
571
+ # received, and if so, will ignore the second request. This prevents clients
572
+ # from accidentally creating duplicate commitments.
573
+ #
574
+ # The request ID must be a valid UUID with the exception that zero UUID is
575
+ # not supported (00000000-0000-0000-0000-000000000000).
576
+ # @!attribute [rw] validate_only
577
+ # @return [::Boolean]
578
+ # Optional. If set to true, the request is validated and the user is provided with
579
+ # an expected result, but no actual change is made.
580
+ class CreateTargetRequest
581
+ include ::Google::Protobuf::MessageExts
582
+ extend ::Google::Protobuf::MessageExts::ClassMethods
583
+ end
584
+
585
+ # The request object for `UpdateTarget`.
586
+ # @!attribute [rw] update_mask
587
+ # @return [::Google::Protobuf::FieldMask]
588
+ # Required. Field mask is used to specify the fields to be overwritten in the
589
+ # Target resource by the update.
590
+ # The fields specified in the update_mask are relative to the resource, not
591
+ # the full request. A field will be overwritten if it is in the mask. If the
592
+ # user does not provide a mask then all fields will be overwritten.
593
+ # @!attribute [rw] target
594
+ # @return [::Google::Cloud::Deploy::V1::Target]
595
+ # Required. The `Target` to update.
596
+ # @!attribute [rw] request_id
597
+ # @return [::String]
598
+ # Optional. A request ID to identify requests. Specify a unique request ID
599
+ # so that if you must retry your request, the server will know to ignore
600
+ # the request if it has already been completed. The server will guarantee
601
+ # that for at least 60 minutes since the first request.
602
+ #
603
+ # For example, consider a situation where you make an initial request and the
604
+ # request times out. If you make the request again with the same request ID,
605
+ # the server can check if original operation with the same request ID was
606
+ # received, and if so, will ignore the second request. This prevents clients
607
+ # from accidentally creating duplicate commitments.
608
+ #
609
+ # The request ID must be a valid UUID with the exception that zero UUID is
610
+ # not supported (00000000-0000-0000-0000-000000000000).
611
+ # @!attribute [rw] allow_missing
612
+ # @return [::Boolean]
613
+ # Optional. If set to true, updating a `Target` that does not exist will
614
+ # result in the creation of a new `Target`.
615
+ # @!attribute [rw] validate_only
616
+ # @return [::Boolean]
617
+ # Optional. If set to true, the request is validated and the user is provided with
618
+ # an expected result, but no actual change is made.
619
+ class UpdateTargetRequest
620
+ include ::Google::Protobuf::MessageExts
621
+ extend ::Google::Protobuf::MessageExts::ClassMethods
622
+ end
623
+
624
+ # The request object for `DeleteTarget`.
625
+ # @!attribute [rw] name
626
+ # @return [::String]
627
+ # Required. The name of the `Target` to delete. Format should be
628
+ # projects/\\{project_id}/locations/\\{location_name}/targets/\\{target_name}.
629
+ # @!attribute [rw] request_id
630
+ # @return [::String]
631
+ # Optional. A request ID to identify requests. Specify a unique request ID
632
+ # so that if you must retry your request, the server will know to ignore
633
+ # the request if it has already been completed. The server will guarantee
634
+ # that for at least 60 minutes after the first request.
635
+ #
636
+ # For example, consider a situation where you make an initial request and the
637
+ # request times out. If you make the request again with the same request ID,
638
+ # the server can check if original operation with the same request ID was
639
+ # received, and if so, will ignore the second request. This prevents clients
640
+ # from accidentally creating duplicate commitments.
641
+ #
642
+ # The request ID must be a valid UUID with the exception that zero UUID is
643
+ # not supported (00000000-0000-0000-0000-000000000000).
644
+ # @!attribute [rw] allow_missing
645
+ # @return [::Boolean]
646
+ # Optional. If set to true, then deleting an already deleted or non-existing
647
+ # DeliveryPipeline will succeed.
648
+ # @!attribute [rw] validate_only
649
+ # @return [::Boolean]
650
+ # Optional. If set, validate the request and preview the review, but do not actually
651
+ # post it.
652
+ # @!attribute [rw] etag
653
+ # @return [::String]
654
+ # Optional. This checksum is computed by the server based on the value of other
655
+ # fields, and may be sent on update and delete requests to ensure the
656
+ # client has an up-to-date value before proceeding.
657
+ class DeleteTargetRequest
658
+ include ::Google::Protobuf::MessageExts
659
+ extend ::Google::Protobuf::MessageExts::ClassMethods
660
+ end
661
+
662
+ # A `Release` resource in the Google Cloud Deploy API.
663
+ #
664
+ # A `Release` defines a specific Skaffold configuration instance
665
+ # that can be deployed.
666
+ # @!attribute [rw] name
667
+ # @return [::String]
668
+ # Optional. Name of the `Release`. Format is projects/\\{project}/
669
+ # locations/\\{location}/deliveryPipelines/\\{deliveryPipeline}/
670
+ # releases/[a-z][a-z0-9\-]\\{0,62}.
671
+ # @!attribute [r] uid
672
+ # @return [::String]
673
+ # Output only. Unique identifier of the `Release`.
674
+ # @!attribute [rw] description
675
+ # @return [::String]
676
+ # Description of the `Release`. Max length is 255 characters.
677
+ # @!attribute [rw] annotations
678
+ # @return [::Google::Protobuf::Map{::String => ::String}]
679
+ # User annotations. These attributes can only be set and used by the
680
+ # user, and not by Google Cloud Deploy. See
681
+ # https://google.aip.dev/128#annotations for more details such as format and
682
+ # size limitations.
683
+ # @!attribute [rw] labels
684
+ # @return [::Google::Protobuf::Map{::String => ::String}]
685
+ # Labels are attributes that can be set and used by both the
686
+ # user and by Google Cloud Deploy. Labels must meet the following
687
+ # constraints: Each resource is limited to 64 labels. Keys must conform to
688
+ # the regexp: [a-zA-Z][a-zA-Z0-9_-]\\{0,62} Values must conform to the regexp:
689
+ # [a-zA-Z0-9_-]\\{0,63} Both keys and values are additionally constrained to be
690
+ # <= 128 bytes in size.
691
+ # @!attribute [r] create_time
692
+ # @return [::Google::Protobuf::Timestamp]
693
+ # Output only. Time at which the `Release` was created.
694
+ # @!attribute [r] render_start_time
695
+ # @return [::Google::Protobuf::Timestamp]
696
+ # Output only. Time at which the render began.
697
+ # @!attribute [r] render_end_time
698
+ # @return [::Google::Protobuf::Timestamp]
699
+ # Output only. Time at which the render completed.
700
+ # @!attribute [rw] skaffold_config_uri
701
+ # @return [::String]
702
+ # Cloud Storage URI of tar.gz archive containing Skaffold configuration.
703
+ # @!attribute [rw] skaffold_config_path
704
+ # @return [::String]
705
+ # Filepath of the Skaffold config inside of the config URI.
706
+ # @!attribute [rw] build_artifacts
707
+ # @return [::Array<::Google::Cloud::Deploy::V1::BuildArtifact>]
708
+ # List of artifacts to pass through to Skaffold command.
709
+ # @!attribute [r] delivery_pipeline_snapshot
710
+ # @return [::Google::Cloud::Deploy::V1::DeliveryPipeline]
711
+ # Output only. Snapshot of the parent pipeline taken at release creation time.
712
+ # @!attribute [r] target_snapshots
713
+ # @return [::Array<::Google::Cloud::Deploy::V1::Target>]
714
+ # Output only. Snapshot of the parent pipeline's targets taken at release creation time.
715
+ # @!attribute [r] render_state
716
+ # @return [::Google::Cloud::Deploy::V1::Release::RenderState]
717
+ # Output only. Current state of the render operation.
718
+ # @!attribute [rw] etag
719
+ # @return [::String]
720
+ # This checksum is computed by the server based on the value of other
721
+ # fields, and may be sent on update and delete requests to ensure the
722
+ # client has an up-to-date value before proceeding.
723
+ # @!attribute [rw] skaffold_version
724
+ # @return [::String]
725
+ # The Skaffold version to use when operating on this release, such as
726
+ # "1.20.0". Not all versions are valid; Google Cloud Deploy supports a
727
+ # specific set of versions.
728
+ #
729
+ # If unset, the most recent supported Skaffold version will be used.
730
+ # @!attribute [r] target_artifacts
731
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Deploy::V1::TargetArtifact}]
732
+ # Output only. Map from target ID to the target artifacts created
733
+ # during the render operation.
734
+ # @!attribute [r] target_renders
735
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::Deploy::V1::Release::TargetRender}]
736
+ # Output only. Map from target ID to details of the render operation for that target.
737
+ class Release
738
+ include ::Google::Protobuf::MessageExts
739
+ extend ::Google::Protobuf::MessageExts::ClassMethods
740
+
741
+ # Details of rendering for a single target.
742
+ # @!attribute [r] rendering_build
743
+ # @return [::String]
744
+ # Output only. The resource name of the Cloud Build `Build` object that is used to
745
+ # render the manifest for this target. Format is
746
+ # `projects/{project}/locations/{location}/builds/{build}`.
747
+ # @!attribute [r] rendering_state
748
+ # @return [::Google::Cloud::Deploy::V1::Release::TargetRender::TargetRenderState]
749
+ # Output only. Current state of the render operation for this Target.
750
+ class TargetRender
751
+ include ::Google::Protobuf::MessageExts
752
+ extend ::Google::Protobuf::MessageExts::ClassMethods
753
+
754
+ # Valid states of the render operation.
755
+ module TargetRenderState
756
+ # The render operation state is unspecified.
757
+ TARGET_RENDER_STATE_UNSPECIFIED = 0
758
+
759
+ # The render operation has completed successfully.
760
+ SUCCEEDED = 1
761
+
762
+ # The render operation has failed.
763
+ FAILED = 2
764
+
765
+ # The render operation is in progress.
766
+ IN_PROGRESS = 3
767
+ end
768
+ end
769
+
770
+ # @!attribute [rw] key
771
+ # @return [::String]
772
+ # @!attribute [rw] value
773
+ # @return [::String]
774
+ class AnnotationsEntry
775
+ include ::Google::Protobuf::MessageExts
776
+ extend ::Google::Protobuf::MessageExts::ClassMethods
777
+ end
778
+
779
+ # @!attribute [rw] key
780
+ # @return [::String]
781
+ # @!attribute [rw] value
782
+ # @return [::String]
783
+ class LabelsEntry
784
+ include ::Google::Protobuf::MessageExts
785
+ extend ::Google::Protobuf::MessageExts::ClassMethods
786
+ end
787
+
788
+ # @!attribute [rw] key
789
+ # @return [::String]
790
+ # @!attribute [rw] value
791
+ # @return [::Google::Cloud::Deploy::V1::TargetArtifact]
792
+ class TargetArtifactsEntry
793
+ include ::Google::Protobuf::MessageExts
794
+ extend ::Google::Protobuf::MessageExts::ClassMethods
795
+ end
796
+
797
+ # @!attribute [rw] key
798
+ # @return [::String]
799
+ # @!attribute [rw] value
800
+ # @return [::Google::Cloud::Deploy::V1::Release::TargetRender]
801
+ class TargetRendersEntry
802
+ include ::Google::Protobuf::MessageExts
803
+ extend ::Google::Protobuf::MessageExts::ClassMethods
804
+ end
805
+
806
+ # Valid states of the render operation.
807
+ module RenderState
808
+ # The render state is unspecified.
809
+ RENDER_STATE_UNSPECIFIED = 0
810
+
811
+ # All rendering operations have completed successfully.
812
+ SUCCEEDED = 1
813
+
814
+ # All rendering operations have completed, and one or more have failed.
815
+ FAILED = 2
816
+
817
+ # Rendering has started and is not complete.
818
+ IN_PROGRESS = 3
819
+ end
820
+ end
821
+
822
+ # Description of an a image to use during Skaffold rendering.
823
+ # @!attribute [rw] image
824
+ # @return [::String]
825
+ # Image name in Skaffold configuration.
826
+ # @!attribute [rw] tag
827
+ # @return [::String]
828
+ # Image tag to use. This will generally be the full path to an image, such
829
+ # as "gcr.io/my-project/busybox:1.2.3" or
830
+ # "gcr.io/my-project/busybox@sha256:abc123".
831
+ class BuildArtifact
832
+ include ::Google::Protobuf::MessageExts
833
+ extend ::Google::Protobuf::MessageExts::ClassMethods
834
+ end
835
+
836
+ # The artifacts produced by a target render operation.
837
+ # @!attribute [r] artifact_uri
838
+ # @return [::String]
839
+ # Output only. URI of a directory containing the artifacts. This contains
840
+ # deployment configuration used by Skaffold during a rollout, and all
841
+ # paths are relative to this location.
842
+ # @!attribute [r] skaffold_config_path
843
+ # @return [::String]
844
+ # Output only. File path of the resolved Skaffold configuration relative to the URI.
845
+ # @!attribute [r] manifest_path
846
+ # @return [::String]
847
+ # Output only. File path of the rendered manifest relative to the URI.
848
+ class TargetArtifact
849
+ include ::Google::Protobuf::MessageExts
850
+ extend ::Google::Protobuf::MessageExts::ClassMethods
851
+ end
852
+
853
+ # The request object for `ListReleases`.
854
+ # @!attribute [rw] parent
855
+ # @return [::String]
856
+ # Required. The `DeliveryPipeline` which owns this collection of `Release` objects.
857
+ # @!attribute [rw] page_size
858
+ # @return [::Integer]
859
+ # Optional. The maximum number of `Release` objects to return. The service may return
860
+ # fewer than this value. If unspecified, at most 50 `Release` objects will be
861
+ # returned. The maximum value is 1000; values above 1000 will be set to 1000.
862
+ # @!attribute [rw] page_token
863
+ # @return [::String]
864
+ # Optional. A page token, received from a previous `ListReleases` call.
865
+ # Provide this to retrieve the subsequent page.
866
+ #
867
+ # When paginating, all other provided parameters match
868
+ # the call that provided the page token.
869
+ # @!attribute [rw] filter
870
+ # @return [::String]
871
+ # Optional. Filter builds to be returned. See https://google.aip.dev/160 for more
872
+ # details.
873
+ # @!attribute [rw] order_by
874
+ # @return [::String]
875
+ # Optional. Field to sort by. See https://google.aip.dev/132#ordering for more details.
876
+ class ListReleasesRequest
877
+ include ::Google::Protobuf::MessageExts
878
+ extend ::Google::Protobuf::MessageExts::ClassMethods
879
+ end
880
+
881
+ # The response object from `ListReleases`.
882
+ # @!attribute [rw] releases
883
+ # @return [::Array<::Google::Cloud::Deploy::V1::Release>]
884
+ # The `Release` objects.
885
+ # @!attribute [rw] next_page_token
886
+ # @return [::String]
887
+ # A token, which can be sent as `page_token` to retrieve the next page.
888
+ # If this field is omitted, there are no subsequent pages.
889
+ # @!attribute [rw] unreachable
890
+ # @return [::Array<::String>]
891
+ # Locations that could not be reached.
892
+ class ListReleasesResponse
893
+ include ::Google::Protobuf::MessageExts
894
+ extend ::Google::Protobuf::MessageExts::ClassMethods
895
+ end
896
+
897
+ # The request object for `GetRelease`.
898
+ # @!attribute [rw] name
899
+ # @return [::String]
900
+ # Required. Name of the `Release`. Format must be
901
+ # projects/\\{project_id}/locations/\\{location_name}/deliveryPipelines/\\{pipeline_name}/releases/\\{release_name}.
902
+ class GetReleaseRequest
903
+ include ::Google::Protobuf::MessageExts
904
+ extend ::Google::Protobuf::MessageExts::ClassMethods
905
+ end
906
+
907
+ # The request object for `CreateRelease`,
908
+ # @!attribute [rw] parent
909
+ # @return [::String]
910
+ # Required. The parent collection in which the `Release` should be created.
911
+ # Format should be
912
+ # projects/\\{project_id}/locations/\\{location_name}/deliveryPipelines/\\{pipeline_name}.
913
+ # @!attribute [rw] release_id
914
+ # @return [::String]
915
+ # Required. ID of the `Release`.
916
+ # @!attribute [rw] release
917
+ # @return [::Google::Cloud::Deploy::V1::Release]
918
+ # Required. The `Release` to create.
919
+ # @!attribute [rw] request_id
920
+ # @return [::String]
921
+ # Optional. A request ID to identify requests. Specify a unique request ID
922
+ # so that if you must retry your request, the server will know to ignore
923
+ # the request if it has already been completed. The server will guarantee
924
+ # that for at least 60 minutes since the first request.
925
+ #
926
+ # For example, consider a situation where you make an initial request and the
927
+ # request times out. If you make the request again with the same request ID,
928
+ # the server can check if original operation with the same request ID was
929
+ # received, and if so, will ignore the second request. This prevents clients
930
+ # from accidentally creating duplicate commitments.
931
+ #
932
+ # The request ID must be a valid UUID with the exception that zero UUID is
933
+ # not supported (00000000-0000-0000-0000-000000000000).
934
+ # @!attribute [rw] validate_only
935
+ # @return [::Boolean]
936
+ # Optional. If set to true, the request is validated and the user is provided with
937
+ # an expected result, but no actual change is made.
938
+ class CreateReleaseRequest
939
+ include ::Google::Protobuf::MessageExts
940
+ extend ::Google::Protobuf::MessageExts::ClassMethods
941
+ end
942
+
943
+ # A `Rollout` resource in the Google Cloud Deploy API.
944
+ #
945
+ # A `Rollout` contains information around a specific deployment to a `Target`.
946
+ # @!attribute [rw] name
947
+ # @return [::String]
948
+ # Optional. Name of the `Rollout`. Format is projects/\\{project}/
949
+ # locations/\\{location}/deliveryPipelines/\\{deliveryPipeline}/
950
+ # releases/\\{release}/rollouts/[a-z][a-z0-9\-]\\{0,62}.
951
+ # @!attribute [r] uid
952
+ # @return [::String]
953
+ # Output only. Unique identifier of the `Rollout`.
954
+ # @!attribute [rw] description
955
+ # @return [::String]
956
+ # Description of the `Rollout` for user purposes. Max length is 255
957
+ # characters.
958
+ # @!attribute [rw] annotations
959
+ # @return [::Google::Protobuf::Map{::String => ::String}]
960
+ # User annotations. These attributes can only be set and used by the
961
+ # user, and not by Google Cloud Deploy. See
962
+ # https://google.aip.dev/128#annotations for more details such as format and
963
+ # size limitations.
964
+ # @!attribute [rw] labels
965
+ # @return [::Google::Protobuf::Map{::String => ::String}]
966
+ # Labels are attributes that can be set and used by both the
967
+ # user and by Google Cloud Deploy. Labels must meet the following
968
+ # constraints: Each resource is limited to 64 labels. Keys must conform to
969
+ # the regexp: [a-zA-Z][a-zA-Z0-9_-]\\{0,62} Values must conform to the regexp:
970
+ # [a-zA-Z0-9_-]\\{0,63} Both keys and values are additionally constrained to be
971
+ # <= 128 bytes in size.
972
+ # @!attribute [r] create_time
973
+ # @return [::Google::Protobuf::Timestamp]
974
+ # Output only. Time at which the `Rollout` was created.
975
+ # @!attribute [r] approve_time
976
+ # @return [::Google::Protobuf::Timestamp]
977
+ # Output only. Time at which the `Rollout` was approved.
978
+ # @!attribute [r] enqueue_time
979
+ # @return [::Google::Protobuf::Timestamp]
980
+ # Output only. Time at which the `Rollout` was enqueued.
981
+ # @!attribute [r] deploy_start_time
982
+ # @return [::Google::Protobuf::Timestamp]
983
+ # Output only. Time at which the `Rollout` started deploying.
984
+ # @!attribute [r] deploy_end_time
985
+ # @return [::Google::Protobuf::Timestamp]
986
+ # Output only. Time at which the `Rollout` finished deploying.
987
+ # @!attribute [rw] target_id
988
+ # @return [::String]
989
+ # Required. The ID of Target to which this `Rollout` is deploying.
990
+ # @!attribute [r] approval_state
991
+ # @return [::Google::Cloud::Deploy::V1::Rollout::ApprovalState]
992
+ # Output only. Approval state of the `Rollout`.
993
+ # @!attribute [r] state
994
+ # @return [::Google::Cloud::Deploy::V1::Rollout::State]
995
+ # Output only. Current state of the `Rollout`.
996
+ # @!attribute [r] failure_reason
997
+ # @return [::String]
998
+ # Output only. Reason the build failed. Empty if the build succeeded.
999
+ # @!attribute [r] deploying_build
1000
+ # @return [::String]
1001
+ # Output only. The resource name of the Cloud Build `Build` object that is used to deploy
1002
+ # the Rollout. Format is
1003
+ # `projects/{project}/locations/{location}/builds/{build}`.
1004
+ # @!attribute [rw] etag
1005
+ # @return [::String]
1006
+ # This checksum is computed by the server based on the value of other
1007
+ # fields, and may be sent on update and delete requests to ensure the
1008
+ # client has an up-to-date value before proceeding.
1009
+ class Rollout
1010
+ include ::Google::Protobuf::MessageExts
1011
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1012
+
1013
+ # @!attribute [rw] key
1014
+ # @return [::String]
1015
+ # @!attribute [rw] value
1016
+ # @return [::String]
1017
+ class AnnotationsEntry
1018
+ include ::Google::Protobuf::MessageExts
1019
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1020
+ end
1021
+
1022
+ # @!attribute [rw] key
1023
+ # @return [::String]
1024
+ # @!attribute [rw] value
1025
+ # @return [::String]
1026
+ class LabelsEntry
1027
+ include ::Google::Protobuf::MessageExts
1028
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1029
+ end
1030
+
1031
+ # Valid approval states of a `Rollout`.
1032
+ module ApprovalState
1033
+ # The `Rollout` has an unspecified approval state.
1034
+ APPROVAL_STATE_UNSPECIFIED = 0
1035
+
1036
+ # The `Rollout` requires approval.
1037
+ NEEDS_APPROVAL = 1
1038
+
1039
+ # The `Rollout` does not require approval.
1040
+ DOES_NOT_NEED_APPROVAL = 2
1041
+
1042
+ # The `Rollout` has been approved.
1043
+ APPROVED = 3
1044
+
1045
+ # The `Rollout` has been rejected.
1046
+ REJECTED = 4
1047
+ end
1048
+
1049
+ # Valid states of a `Rollout`.
1050
+ module State
1051
+ # The `Rollout` has an unspecified state.
1052
+ STATE_UNSPECIFIED = 0
1053
+
1054
+ # The `Rollout` has completed successfully.
1055
+ SUCCEEDED = 1
1056
+
1057
+ # The `Rollout` has failed.
1058
+ FAILED = 2
1059
+
1060
+ # The `Rollout` is being deployed.
1061
+ IN_PROGRESS = 3
1062
+
1063
+ # The `Rollout` needs approval.
1064
+ PENDING_APPROVAL = 4
1065
+
1066
+ # An approver rejected the `Rollout`.
1067
+ APPROVAL_REJECTED = 5
1068
+
1069
+ # The `Rollout` is waiting for an earlier Rollout(s) to complete on this
1070
+ # `Target`.
1071
+ PENDING = 6
1072
+
1073
+ # The `Rollout` is waiting for the `Release` to be fully rendered.
1074
+ PENDING_RELEASE = 7
1075
+ end
1076
+ end
1077
+
1078
+ # ListRolloutsRequest is the request object used by `ListRollouts`.
1079
+ # @!attribute [rw] parent
1080
+ # @return [::String]
1081
+ # Required. The `Release` which owns this collection of `Rollout` objects.
1082
+ # @!attribute [rw] page_size
1083
+ # @return [::Integer]
1084
+ # Optional. The maximum number of `Rollout` objects to return. The service may return
1085
+ # fewer than this value. If unspecified, at most 50 `Rollout` objects will be
1086
+ # returned. The maximum value is 1000; values above 1000 will be set to 1000.
1087
+ # @!attribute [rw] page_token
1088
+ # @return [::String]
1089
+ # Optional. A page token, received from a previous `ListRollouts` call.
1090
+ # Provide this to retrieve the subsequent page.
1091
+ #
1092
+ # When paginating, all other provided parameters match
1093
+ # the call that provided the page token.
1094
+ # @!attribute [rw] filter
1095
+ # @return [::String]
1096
+ # Optional. Filter builds to be returned. See https://google.aip.dev/160 for more
1097
+ # details.
1098
+ # @!attribute [rw] order_by
1099
+ # @return [::String]
1100
+ # Optional. Field to sort by. See https://google.aip.dev/132#ordering for more details.
1101
+ class ListRolloutsRequest
1102
+ include ::Google::Protobuf::MessageExts
1103
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1104
+ end
1105
+
1106
+ # ListRolloutsResponse is the response object reutrned by `ListRollouts`.
1107
+ # @!attribute [rw] rollouts
1108
+ # @return [::Array<::Google::Cloud::Deploy::V1::Rollout>]
1109
+ # The `Rollout` objects.
1110
+ # @!attribute [rw] next_page_token
1111
+ # @return [::String]
1112
+ # A token, which can be sent as `page_token` to retrieve the next page.
1113
+ # If this field is omitted, there are no subsequent pages.
1114
+ # @!attribute [rw] unreachable
1115
+ # @return [::Array<::String>]
1116
+ # Locations that could not be reached.
1117
+ class ListRolloutsResponse
1118
+ include ::Google::Protobuf::MessageExts
1119
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1120
+ end
1121
+
1122
+ # GetRolloutRequest is the request object used by `GetRollout`.
1123
+ # @!attribute [rw] name
1124
+ # @return [::String]
1125
+ # Required. Name of the `Rollout`. Format must be
1126
+ # projects/\\{project_id}/locations/\\{location_name}/deliveryPipelines/\\{pipeline_name}/releases/\\{release_name}/rollouts/\\{rollout_name}.
1127
+ class GetRolloutRequest
1128
+ include ::Google::Protobuf::MessageExts
1129
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1130
+ end
1131
+
1132
+ # CreateRolloutRequest is the request object used by `CreateRollout`.
1133
+ # @!attribute [rw] parent
1134
+ # @return [::String]
1135
+ # Required. The parent collection in which the `Rollout` should be created.
1136
+ # Format should be
1137
+ # projects/\\{project_id}/locations/\\{location_name}/deliveryPipelines/\\{pipeline_name}/releases/\\{release_name}.
1138
+ # @!attribute [rw] rollout_id
1139
+ # @return [::String]
1140
+ # Required. ID of the `Rollout`.
1141
+ # @!attribute [rw] rollout
1142
+ # @return [::Google::Cloud::Deploy::V1::Rollout]
1143
+ # Required. The `Rollout` to create.
1144
+ # @!attribute [rw] request_id
1145
+ # @return [::String]
1146
+ # Optional. A request ID to identify requests. Specify a unique request ID
1147
+ # so that if you must retry your request, the server will know to ignore
1148
+ # the request if it has already been completed. The server will guarantee
1149
+ # that for at least 60 minutes since the first request.
1150
+ #
1151
+ # For example, consider a situation where you make an initial request and the
1152
+ # request times out. If you make the request again with the same request ID,
1153
+ # the server can check if original operation with the same request ID was
1154
+ # received, and if so, will ignore the second request. This prevents clients
1155
+ # from accidentally creating duplicate commitments.
1156
+ #
1157
+ # The request ID must be a valid UUID with the exception that zero UUID is
1158
+ # not supported (00000000-0000-0000-0000-000000000000).
1159
+ # @!attribute [rw] validate_only
1160
+ # @return [::Boolean]
1161
+ # Optional. If set to true, the request is validated and the user is provided with
1162
+ # an expected result, but no actual change is made.
1163
+ class CreateRolloutRequest
1164
+ include ::Google::Protobuf::MessageExts
1165
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1166
+ end
1167
+
1168
+ # Represents the metadata of the long-running operation.
1169
+ # @!attribute [r] create_time
1170
+ # @return [::Google::Protobuf::Timestamp]
1171
+ # Output only. The time the operation was created.
1172
+ # @!attribute [r] end_time
1173
+ # @return [::Google::Protobuf::Timestamp]
1174
+ # Output only. The time the operation finished running.
1175
+ # @!attribute [r] target
1176
+ # @return [::String]
1177
+ # Output only. Server-defined resource path for the target of the operation.
1178
+ # @!attribute [r] verb
1179
+ # @return [::String]
1180
+ # Output only. Name of the verb executed by the operation.
1181
+ # @!attribute [r] status_message
1182
+ # @return [::String]
1183
+ # Output only. Human-readable status of the operation, if any.
1184
+ # @!attribute [r] requested_cancellation
1185
+ # @return [::Boolean]
1186
+ # Output only. Identifies whether the user has requested cancellation
1187
+ # of the operation. Operations that have successfully been cancelled
1188
+ # have [Operation.error][] value with a {::Google::Rpc::Status#code google.rpc.Status.code} of 1,
1189
+ # corresponding to `Code.CANCELLED`.
1190
+ # @!attribute [r] api_version
1191
+ # @return [::String]
1192
+ # Output only. API version used to start the operation.
1193
+ class OperationMetadata
1194
+ include ::Google::Protobuf::MessageExts
1195
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1196
+ end
1197
+
1198
+ # The request object used by `ApproveRollout`.
1199
+ # @!attribute [rw] name
1200
+ # @return [::String]
1201
+ # Required. Name of the Rollout. Format is
1202
+ # projects/\\{project}/locations/\\{location}/deliveryPipelines/\\{deliveryPipeline}/
1203
+ # releases/\\{release}/rollouts/\\{rollout}.
1204
+ # @!attribute [rw] approved
1205
+ # @return [::Boolean]
1206
+ # Required. True = approve; false = reject
1207
+ class ApproveRolloutRequest
1208
+ include ::Google::Protobuf::MessageExts
1209
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1210
+ end
1211
+
1212
+ # The response object from `ApproveRollout`.
1213
+ class ApproveRolloutResponse
1214
+ include ::Google::Protobuf::MessageExts
1215
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1216
+ end
1217
+
1218
+ # Service-wide configuration.
1219
+ # @!attribute [rw] name
1220
+ # @return [::String]
1221
+ # Name of the configuration.
1222
+ # @!attribute [r] supported_versions
1223
+ # @return [::Array<::Google::Cloud::Deploy::V1::SkaffoldVersion>]
1224
+ # Output only. All supported versions of Skaffold.
1225
+ # @!attribute [r] default_skaffold_version
1226
+ # @return [::String]
1227
+ # Output only. Default Skaffold version that is assigned when a Release is created without
1228
+ # specifying a Skaffold version.
1229
+ class Config
1230
+ include ::Google::Protobuf::MessageExts
1231
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1232
+ end
1233
+
1234
+ # Details of a supported Skaffold version.
1235
+ # @!attribute [rw] version
1236
+ # @return [::String]
1237
+ # Release version number. For example, "1.20.3".
1238
+ # @!attribute [rw] support_end_date
1239
+ # @return [::Google::Type::Date]
1240
+ # Date when this version is expected to no longer be supported.
1241
+ class SkaffoldVersion
1242
+ include ::Google::Protobuf::MessageExts
1243
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1244
+ end
1245
+
1246
+ # Request to get a configuration.
1247
+ # @!attribute [rw] name
1248
+ # @return [::String]
1249
+ # Required. Name of requested configuration.
1250
+ class GetConfigRequest
1251
+ include ::Google::Protobuf::MessageExts
1252
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1253
+ end
1254
+ end
1255
+ end
1256
+ end
1257
+ end