google-cloud-deploy-v1 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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