google-cloud-config_delivery-v1 0.a → 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.
Files changed (35) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +154 -8
  5. data/lib/google/cloud/config_delivery/v1/bindings_override.rb +102 -0
  6. data/lib/google/cloud/config_delivery/v1/config_delivery/client.rb +3222 -0
  7. data/lib/google/cloud/config_delivery/v1/config_delivery/credentials.rb +47 -0
  8. data/lib/google/cloud/config_delivery/v1/config_delivery/operations.rb +813 -0
  9. data/lib/google/cloud/config_delivery/v1/config_delivery/paths.rb +188 -0
  10. data/lib/google/cloud/config_delivery/v1/config_delivery/rest/client.rb +3029 -0
  11. data/lib/google/cloud/config_delivery/v1/config_delivery/rest/operations.rb +914 -0
  12. data/lib/google/cloud/config_delivery/v1/config_delivery/rest/service_stub.rb +1617 -0
  13. data/lib/google/cloud/config_delivery/v1/config_delivery/rest.rb +55 -0
  14. data/lib/google/cloud/config_delivery/v1/config_delivery.rb +57 -0
  15. data/lib/google/cloud/config_delivery/v1/rest.rb +38 -0
  16. data/lib/google/cloud/config_delivery/v1/version.rb +7 -2
  17. data/lib/google/cloud/config_delivery/v1.rb +45 -0
  18. data/lib/google/cloud/configdelivery/v1/config_delivery_pb.rb +115 -0
  19. data/lib/google/cloud/configdelivery/v1/config_delivery_services_pb.rb +95 -0
  20. data/lib/google-cloud-config_delivery-v1.rb +21 -0
  21. data/proto_docs/README.md +4 -0
  22. data/proto_docs/google/api/client.rb +473 -0
  23. data/proto_docs/google/api/field_behavior.rb +85 -0
  24. data/proto_docs/google/api/field_info.rb +88 -0
  25. data/proto_docs/google/api/launch_stage.rb +71 -0
  26. data/proto_docs/google/api/resource.rb +227 -0
  27. data/proto_docs/google/cloud/configdelivery/v1/config_delivery.rb +1384 -0
  28. data/proto_docs/google/longrunning/operations.rb +173 -0
  29. data/proto_docs/google/protobuf/any.rb +145 -0
  30. data/proto_docs/google/protobuf/duration.rb +98 -0
  31. data/proto_docs/google/protobuf/empty.rb +34 -0
  32. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  33. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  34. data/proto_docs/google/rpc/status.rb +48 -0
  35. metadata +82 -9
@@ -0,0 +1,1384 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2025 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 ConfigDelivery
23
+ module V1
24
+ # ResourceBundle represent a collection of kubernetes configuration resources.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # Identifier. Name of the `ResourceBundle`. Format is
28
+ # `projects/{project}/locations/{location}/resourceBundle
29
+ # /[a-z][a-z0-9\-]\\{0,62}`.
30
+ # @!attribute [r] create_time
31
+ # @return [::Google::Protobuf::Timestamp]
32
+ # Output only. Time `ResourceBundle` was created.
33
+ # @!attribute [r] update_time
34
+ # @return [::Google::Protobuf::Timestamp]
35
+ # Output only. Time `ResourceBundle` was last updated.
36
+ # @!attribute [rw] labels
37
+ # @return [::Google::Protobuf::Map{::String => ::String}]
38
+ # Optional. Labels as key value pairs.
39
+ # @!attribute [rw] description
40
+ # @return [::String]
41
+ # Optional. Human readable description of the `ResourceBundle`.
42
+ class ResourceBundle
43
+ include ::Google::Protobuf::MessageExts
44
+ extend ::Google::Protobuf::MessageExts::ClassMethods
45
+
46
+ # @!attribute [rw] key
47
+ # @return [::String]
48
+ # @!attribute [rw] value
49
+ # @return [::String]
50
+ class LabelsEntry
51
+ include ::Google::Protobuf::MessageExts
52
+ extend ::Google::Protobuf::MessageExts::ClassMethods
53
+ end
54
+ end
55
+
56
+ # Message for requesting list of ResourceBundles.
57
+ # @!attribute [rw] parent
58
+ # @return [::String]
59
+ # Required. Parent value for ListResourceBundlesRequest.
60
+ # @!attribute [rw] page_size
61
+ # @return [::Integer]
62
+ # Optional. Requested page size. Server may return fewer items than
63
+ # requested. If unspecified, server will pick an appropriate default.
64
+ # @!attribute [rw] page_token
65
+ # @return [::String]
66
+ # Optional. A token identifying a page of results the server should return.
67
+ # @!attribute [rw] filter
68
+ # @return [::String]
69
+ # Optional. Filtering results.
70
+ # @!attribute [rw] order_by
71
+ # @return [::String]
72
+ # Optional. Hint for how to order the results.
73
+ class ListResourceBundlesRequest
74
+ include ::Google::Protobuf::MessageExts
75
+ extend ::Google::Protobuf::MessageExts::ClassMethods
76
+ end
77
+
78
+ # Message for response to listing ResourceBundles.
79
+ # @!attribute [rw] resource_bundles
80
+ # @return [::Array<::Google::Cloud::ConfigDelivery::V1::ResourceBundle>]
81
+ # The list of ResourceBundle.
82
+ # @!attribute [rw] next_page_token
83
+ # @return [::String]
84
+ # A token identifying a page of results the server should return.
85
+ # @!attribute [rw] unreachable
86
+ # @return [::Array<::String>]
87
+ # Unordered list. Locations that could not be reached.
88
+ class ListResourceBundlesResponse
89
+ include ::Google::Protobuf::MessageExts
90
+ extend ::Google::Protobuf::MessageExts::ClassMethods
91
+ end
92
+
93
+ # Message for getting a ResourceBundle.
94
+ # @!attribute [rw] name
95
+ # @return [::String]
96
+ # Required. Name of the resource.
97
+ class GetResourceBundleRequest
98
+ include ::Google::Protobuf::MessageExts
99
+ extend ::Google::Protobuf::MessageExts::ClassMethods
100
+ end
101
+
102
+ # Message for creating a ResourceBundle.
103
+ # @!attribute [rw] parent
104
+ # @return [::String]
105
+ # Required. Value for parent.
106
+ # @!attribute [rw] resource_bundle_id
107
+ # @return [::String]
108
+ # Required. Id of the requesting object
109
+ # If auto-generating Id server-side, remove this field and
110
+ # resource_bundle_id from the method_signature of Create RPC
111
+ # @!attribute [rw] resource_bundle
112
+ # @return [::Google::Cloud::ConfigDelivery::V1::ResourceBundle]
113
+ # Required. The resource being created
114
+ # @!attribute [rw] request_id
115
+ # @return [::String]
116
+ # Optional. An optional request ID to identify requests. Specify a unique
117
+ # request ID so that if you must retry your request, the server will know to
118
+ # ignore the request if it has already been completed. The server will
119
+ # guarantee that for at least 60 minutes since the first request.
120
+ #
121
+ # For example, consider a situation where you make an initial request and the
122
+ # request times out. If you make the request again with the same request
123
+ # ID, the server can check if original operation with the same request ID
124
+ # was received, and if so, will ignore the second request. This prevents
125
+ # clients from accidentally creating duplicate commitments.
126
+ #
127
+ # The request ID must be a valid UUID with the exception that zero UUID is
128
+ # not supported (00000000-0000-0000-0000-000000000000).
129
+ class CreateResourceBundleRequest
130
+ include ::Google::Protobuf::MessageExts
131
+ extend ::Google::Protobuf::MessageExts::ClassMethods
132
+ end
133
+
134
+ # Message for updating a ResourceBundle
135
+ # @!attribute [rw] update_mask
136
+ # @return [::Google::Protobuf::FieldMask]
137
+ # Required. Field mask is used to specify the fields to be overwritten in the
138
+ # ResourceBundle resource by the update.
139
+ # The fields specified in the update_mask are relative to the resource, not
140
+ # the full request. A field will be overwritten if it is in the mask. If the
141
+ # user does not provide a mask then all fields will be overwritten.
142
+ # @!attribute [rw] resource_bundle
143
+ # @return [::Google::Cloud::ConfigDelivery::V1::ResourceBundle]
144
+ # Required. The resource being updated
145
+ # @!attribute [rw] request_id
146
+ # @return [::String]
147
+ # Optional. An optional request ID to identify requests. Specify a unique
148
+ # request ID so that if you must retry your request, the server will know to
149
+ # ignore the request if it has already been completed. The server will
150
+ # guarantee that for at least 60 minutes since the first request.
151
+ #
152
+ # For example, consider a situation where you make an initial request and the
153
+ # request times out. If you make the request again with the same request
154
+ # ID, the server can check if original operation with the same request ID
155
+ # was received, and if so, will ignore the second request. This prevents
156
+ # clients from accidentally creating duplicate commitments.
157
+ #
158
+ # The request ID must be a valid UUID with the exception that zero UUID is
159
+ # not supported (00000000-0000-0000-0000-000000000000).
160
+ class UpdateResourceBundleRequest
161
+ include ::Google::Protobuf::MessageExts
162
+ extend ::Google::Protobuf::MessageExts::ClassMethods
163
+ end
164
+
165
+ # Message for deleting a ResourceBundle
166
+ # @!attribute [rw] name
167
+ # @return [::String]
168
+ # Required. Name of the resource
169
+ # @!attribute [rw] request_id
170
+ # @return [::String]
171
+ # Optional. An optional request ID to identify requests. Specify a unique
172
+ # request ID so that if you must retry your request, the server will know to
173
+ # ignore the request if it has already been completed. The server will
174
+ # guarantee that for at least 60 minutes after the first request.
175
+ #
176
+ # For example, consider a situation where you make an initial request and the
177
+ # request times out. If you make the request again with the same request
178
+ # ID, the server can check if original operation with the same request ID
179
+ # was received, and if so, will ignore the second request. This prevents
180
+ # clients from accidentally creating duplicate commitments.
181
+ #
182
+ # The request ID must be a valid UUID with the exception that zero UUID is
183
+ # not supported (00000000-0000-0000-0000-000000000000).
184
+ # @!attribute [rw] force
185
+ # @return [::Boolean]
186
+ # Optional. If set to true, any releases of this resource bundle will also be
187
+ # deleted. (Otherwise, the request will only work if the resource bundle has
188
+ # no releases.)
189
+ class DeleteResourceBundleRequest
190
+ include ::Google::Protobuf::MessageExts
191
+ extend ::Google::Protobuf::MessageExts::ClassMethods
192
+ end
193
+
194
+ # A `FleetPackage` resource in the Config Delivery API.
195
+ #
196
+ # A `FleetPackage` defines a package through which kubernetes
197
+ # configuration is deployed to a fleet of kubernetes clusters.
198
+ # @!attribute [rw] name
199
+ # @return [::String]
200
+ # Identifier. Name of the `FleetPackage`. Format is
201
+ # `projects/{project}/locations/{location}/fleetPackages/{fleetPackage}`.
202
+ # The `fleetPackage` component must match
203
+ # `[a-z][a-z0-9\-]{0,62}`
204
+ # @!attribute [r] create_time
205
+ # @return [::Google::Protobuf::Timestamp]
206
+ # Output only. Time at which the `FleetPackage` was created.
207
+ # @!attribute [r] update_time
208
+ # @return [::Google::Protobuf::Timestamp]
209
+ # Output only. Most recent time at which the `FleetPackage` was updated.
210
+ # @!attribute [rw] labels
211
+ # @return [::Google::Protobuf::Map{::String => ::String}]
212
+ # Optional. Labels are attributes that can be set and used by both the
213
+ # user and by Config Delivery. Labels must meet the following constraints:
214
+ #
215
+ # * Keys and values can contain only lowercase letters, numeric characters,
216
+ # underscores, and dashes.
217
+ # * All characters must use UTF-8 encoding, and international characters are
218
+ # allowed.
219
+ # * Keys must start with a lowercase letter or international character.
220
+ # * Each resource is limited to a maximum of 64 labels.
221
+ #
222
+ # Both keys and values are additionally constrained to be <= 128 bytes.
223
+ # @!attribute [rw] resource_bundle_selector
224
+ # @return [::Google::Cloud::ConfigDelivery::V1::FleetPackage::ResourceBundleSelector]
225
+ # Required. Information specifying the source of kubernetes configuration to
226
+ # deploy.
227
+ # @!attribute [rw] target
228
+ # @return [::Google::Cloud::ConfigDelivery::V1::FleetPackage::Target]
229
+ # Optional. Configuration to select target clusters to deploy kubernetes
230
+ # configuration to.
231
+ # @!attribute [rw] rollout_strategy
232
+ # @return [::Google::Cloud::ConfigDelivery::V1::RolloutStrategy]
233
+ # Optional. The strategy to use to deploy kubernetes configuration to
234
+ # clusters.
235
+ # @!attribute [rw] variant_selector
236
+ # @return [::Google::Cloud::ConfigDelivery::V1::FleetPackage::VariantSelector]
237
+ # Required. Information specifying how to map a `ResourceBundle` variant to a
238
+ # target cluster.
239
+ # @!attribute [r] info
240
+ # @return [::Google::Cloud::ConfigDelivery::V1::FleetPackageInfo]
241
+ # Output only. Information containing the rollout status of the
242
+ # `FleetPackage` across all the target clusters.
243
+ # @!attribute [rw] deletion_propagation_policy
244
+ # @return [::Google::Cloud::ConfigDelivery::V1::DeletionPropagationPolicy]
245
+ # Optional. Information around how to handle kubernetes resources at the
246
+ # target clusters when the `FleetPackage` is deleted.
247
+ # @!attribute [rw] state
248
+ # @return [::Google::Cloud::ConfigDelivery::V1::FleetPackage::State]
249
+ # Optional. The desired state of the fleet package.
250
+ class FleetPackage
251
+ include ::Google::Protobuf::MessageExts
252
+ extend ::Google::Protobuf::MessageExts::ClassMethods
253
+
254
+ # Information specifying the source of kubernetes configuration to deploy.
255
+ # @!attribute [rw] resource_bundle
256
+ # @return [::Google::Cloud::ConfigDelivery::V1::FleetPackage::ResourceBundleTag]
257
+ # Information specifying `ResourceBundle`.
258
+ #
259
+ # Note: The following fields are mutually exclusive: `resource_bundle`, `cloud_build_repository`. If a field in that set is populated, all other fields in the set will automatically be cleared.
260
+ # @!attribute [rw] cloud_build_repository
261
+ # @return [::Google::Cloud::ConfigDelivery::V1::FleetPackage::CloudBuildRepository]
262
+ # Information specifying `CloudBuildRepository`.
263
+ #
264
+ # Note: The following fields are mutually exclusive: `cloud_build_repository`, `resource_bundle`. If a field in that set is populated, all other fields in the set will automatically be cleared.
265
+ class ResourceBundleSelector
266
+ include ::Google::Protobuf::MessageExts
267
+ extend ::Google::Protobuf::MessageExts::ClassMethods
268
+ end
269
+
270
+ # ResourceBundleTag contains the information to refer to a release for a
271
+ # `ResourceBundle`.
272
+ # @!attribute [rw] name
273
+ # @return [::String]
274
+ # Required. Name of the `ResourceBundle`.
275
+ # Format is projects/\\{p}/locations/\\{l}/resourceBundles/\\{r}.
276
+ # @!attribute [rw] tag
277
+ # @return [::String]
278
+ # Required. Tag refers to a version of the release in a `ResourceBundle`.
279
+ # This is a Git tag in the semantic version format `vX.Y.Z`.
280
+ class ResourceBundleTag
281
+ include ::Google::Protobuf::MessageExts
282
+ extend ::Google::Protobuf::MessageExts::ClassMethods
283
+ end
284
+
285
+ # CloudBuildRepository contains information about fetching Kubernetes
286
+ # configuration from a `CloudBuildRepository`.
287
+ # @!attribute [rw] variants_pattern
288
+ # @return [::String]
289
+ # Optional. variants_pattern is a glob pattern that will be used to find
290
+ # variants in the repository. Examples: `variants/*.yaml`, `us-*`
291
+ # @!attribute [rw] name
292
+ # @return [::String]
293
+ # Required. Name of the cloud build repository.
294
+ # Format is projects/\\{p}/locations/\\{l}/connections/\\{c}/repositories/\\{r}.
295
+ # @!attribute [rw] path
296
+ # @return [::String]
297
+ # Optional. path to the directory or file within the repository that
298
+ # contains the kubernetes configuration. If unspecified, path is assumed to
299
+ # the top level root directory of the repository.
300
+ # @!attribute [rw] tag
301
+ # @return [::String]
302
+ # Required. git tag of the underlying git repository.
303
+ # The git tag must be in the semantic version format `vX.Y.Z`.
304
+ # @!attribute [rw] service_account
305
+ # @return [::String]
306
+ # Required. Google service account to use in CloudBuild triggers to fetch
307
+ # and store kubernetes configuration.
308
+ class CloudBuildRepository
309
+ include ::Google::Protobuf::MessageExts
310
+ extend ::Google::Protobuf::MessageExts::ClassMethods
311
+ end
312
+
313
+ # The target defines different ways to target set of kubernetes clusters.
314
+ # @!attribute [rw] fleet
315
+ # @return [::Google::Cloud::ConfigDelivery::V1::Fleet]
316
+ # The GKE fleet information.
317
+ class Target
318
+ include ::Google::Protobuf::MessageExts
319
+ extend ::Google::Protobuf::MessageExts::ClassMethods
320
+ end
321
+
322
+ # VariantSelector contains information for selecting a variant in
323
+ # `ResourceBundle` to deploy to a target cluster.
324
+ # @!attribute [rw] variant_name_template
325
+ # @return [::String]
326
+ # Required. variant_name_template is a template that can refer to
327
+ # variables containing cluster membership metadata such as location,
328
+ # name, and labels to generate the name of the variant for a target
329
+ # cluster. The variable syntax is similar to the unix shell variables.
330
+ #
331
+ # Available variables are `${membership.name}`, `${membership.location}`,
332
+ # `${membership.project}` and `${membership.labels['label_name']}`.
333
+ #
334
+ # If you want to deploy a specific variant, say "default" to all the
335
+ # clusters, you can use "default" (string without any variables) as
336
+ # the variant_name_template.
337
+ class VariantSelector
338
+ include ::Google::Protobuf::MessageExts
339
+ extend ::Google::Protobuf::MessageExts::ClassMethods
340
+ end
341
+
342
+ # @!attribute [rw] key
343
+ # @return [::String]
344
+ # @!attribute [rw] value
345
+ # @return [::String]
346
+ class LabelsEntry
347
+ include ::Google::Protobuf::MessageExts
348
+ extend ::Google::Protobuf::MessageExts::ClassMethods
349
+ end
350
+
351
+ # State indicates the desired state for the fleet package.
352
+ # Unspecified value is equivalent to `ACTIVE`. If state is set to
353
+ # `SUSPENDED`, active rollout (if any) will continue but no new rollouts will
354
+ # be scheduled.
355
+ module State
356
+ # Unspecified state.
357
+ STATE_UNSPECIFIED = 0
358
+
359
+ # `FleetPackage` is intended to be active.
360
+ ACTIVE = 1
361
+
362
+ # `FleetPackage` is intended to be suspended.
363
+ SUSPENDED = 2
364
+ end
365
+ end
366
+
367
+ # FleetPackageInfo represents the status of the `FleetPackage` across all the
368
+ # target clusters.
369
+ # @!attribute [rw] active_rollout
370
+ # @return [::String]
371
+ # Optional. The active rollout, if any. Format is
372
+ # `projects/{project}/locations/{location}/fleetPackages/{fleet_package}/rollouts/{rollout}`.
373
+ # @!attribute [rw] last_completed_rollout
374
+ # @return [::String]
375
+ # Optional. The last completed rollout, if any. Format is
376
+ # `projects/{project}/locations/{location}/fleetPackages/{fleet_package}/rollouts/{rollout}`.
377
+ # @!attribute [r] state
378
+ # @return [::Google::Cloud::ConfigDelivery::V1::FleetPackageInfo::State]
379
+ # Optional. Output only. The current state of the `FleetPackage`.
380
+ # @!attribute [r] errors
381
+ # @return [::Array<::Google::Cloud::ConfigDelivery::V1::FleetPackageError>]
382
+ # Optional. Output only. Errors encountered during configuration deployment
383
+ # (if any).
384
+ class FleetPackageInfo
385
+ include ::Google::Protobuf::MessageExts
386
+ extend ::Google::Protobuf::MessageExts::ClassMethods
387
+
388
+ # Possible values for the `FleetPackage` state.
389
+ module State
390
+ # Unspecified state.
391
+ STATE_UNSPECIFIED = 0
392
+
393
+ # `FleetPackage` is active.
394
+ ACTIVE = 1
395
+
396
+ # `FleetPackage` is suspended.
397
+ SUSPENDED = 2
398
+
399
+ # `FleetPackage` has failed to reconcile.
400
+ FAILED = 3
401
+
402
+ # `FleetPackage` is being deleted.
403
+ DELETING = 4
404
+ end
405
+ end
406
+
407
+ # Information representing an error encountered during rolling out
408
+ # configurations.
409
+ # @!attribute [rw] error_message
410
+ # @return [::String]
411
+ # Optional. A description of the error.
412
+ class FleetPackageError
413
+ include ::Google::Protobuf::MessageExts
414
+ extend ::Google::Protobuf::MessageExts::ClassMethods
415
+ end
416
+
417
+ # ClusterInfo represents status of a resource bundle rollout for a cluster.
418
+ # @!attribute [r] membership
419
+ # @return [::String]
420
+ # Output only. gkehub membership of target cluster
421
+ # @!attribute [r] desired
422
+ # @return [::Google::Cloud::ConfigDelivery::V1::ResourceBundleDeploymentInfo]
423
+ # Output only. Desired state for the resource bundle.
424
+ # @!attribute [r] initial
425
+ # @return [::Google::Cloud::ConfigDelivery::V1::ResourceBundleDeploymentInfo]
426
+ # Output only. Initial state of the resource bundle prior to the deployment.
427
+ # @!attribute [r] current
428
+ # @return [::Google::Cloud::ConfigDelivery::V1::ResourceBundleDeploymentInfo]
429
+ # Output only. Current state of the resource bundle.
430
+ # @!attribute [r] state
431
+ # @return [::Google::Cloud::ConfigDelivery::V1::ClusterInfo::State]
432
+ # Output only. State of the rollout for the cluster.
433
+ # @!attribute [r] messages
434
+ # @return [::Array<::String>]
435
+ # Output only. Unordered list. Messages convey additional information related
436
+ # to the deployment.
437
+ # @!attribute [r] start_time
438
+ # @return [::Google::Protobuf::Timestamp]
439
+ # Output only. Timestamp when reconciliation starts.
440
+ # @!attribute [r] end_time
441
+ # @return [::Google::Protobuf::Timestamp]
442
+ # Output only. Timestamp when reconciliation ends.
443
+ class ClusterInfo
444
+ include ::Google::Protobuf::MessageExts
445
+ extend ::Google::Protobuf::MessageExts::ClassMethods
446
+
447
+ # State of the rollout for the cluster.
448
+ module State
449
+ # Unspecified state.
450
+ STATE_UNSPECIFIED = 0
451
+
452
+ # Waiting state.
453
+ WAITING = 1
454
+
455
+ # In progress state.
456
+ IN_PROGRESS = 2
457
+
458
+ # Stalled state.
459
+ STALLED = 3
460
+
461
+ # Completed state.
462
+ COMPLETED = 4
463
+
464
+ # Aborted state.
465
+ ABORTED = 5
466
+
467
+ # Cancelled state.
468
+ CANCELLED = 6
469
+
470
+ # Error state.
471
+ ERROR = 7
472
+
473
+ # Unchanged state.
474
+ UNCHANGED = 8
475
+
476
+ # Skipped state.
477
+ SKIPPED = 9
478
+ end
479
+ end
480
+
481
+ # ResourceBundleDeploymentInfo represents the status of a resource bundle
482
+ # deployment.
483
+ # @!attribute [r] release
484
+ # @return [::String]
485
+ # Output only. Refers to a `ResourceBundle` release.
486
+ # @!attribute [r] version
487
+ # @return [::String]
488
+ # Output only. Refers to a version of the `ResourceBundle` release.
489
+ # @!attribute [r] variant
490
+ # @return [::String]
491
+ # Output only. Refers to a variant in a `ResourceBundle` release.
492
+ # @!attribute [r] sync_state
493
+ # @return [::Google::Cloud::ConfigDelivery::V1::ResourceBundleDeploymentInfo::SyncState]
494
+ # Output only. Synchronization state of the `ResourceBundle` deployment.
495
+ # @!attribute [r] messages
496
+ # @return [::Array<::String>]
497
+ # Output only. Unordered list. Messages contains information related to the
498
+ # `ResourceBundle` deployment. For example, in case of an error, indicate the
499
+ # reason for the error. In case of a pending deployment, reason for why the
500
+ # deployment of new release is pending.
501
+ class ResourceBundleDeploymentInfo
502
+ include ::Google::Protobuf::MessageExts
503
+ extend ::Google::Protobuf::MessageExts::ClassMethods
504
+
505
+ # Synchronization state of the resource bundle deployment.
506
+ module SyncState
507
+ # Unspecified state.
508
+ SYNC_STATE_UNSPECIFIED = 0
509
+
510
+ # Reconciling state.
511
+ RECONCILING = 1
512
+
513
+ # Stalled state.
514
+ STALLED = 2
515
+
516
+ # Synced state.
517
+ SYNCED = 3
518
+
519
+ # Pending state.
520
+ PENDING = 4
521
+
522
+ # Error state.
523
+ ERROR = 5
524
+
525
+ # Deletion pending state.
526
+ DELETION_PENDING = 6
527
+
528
+ # Deleting state.
529
+ DELETING = 7
530
+
531
+ # Deleted state.
532
+ DELETED = 8
533
+ end
534
+ end
535
+
536
+ # The fleet where the `FleetPackage` should be deployed.
537
+ # @!attribute [rw] project
538
+ # @return [::String]
539
+ # Required. The host project for the GKE fleet. Format is
540
+ # `projects/{project}`.
541
+ # @!attribute [rw] selector
542
+ # @return [::Google::Cloud::ConfigDelivery::V1::Fleet::LabelSelector]
543
+ # Optional. selector allows targeting a subset of fleet members using their
544
+ # labels.
545
+ class Fleet
546
+ include ::Google::Protobuf::MessageExts
547
+ extend ::Google::Protobuf::MessageExts::ClassMethods
548
+
549
+ # A label selector is a label query over a set of resources. An empty label
550
+ # selector matches all objects.
551
+ # @!attribute [rw] match_labels
552
+ # @return [::Google::Protobuf::Map{::String => ::String}]
553
+ # Optional. match_labels is a map of \\{key,value} pairs. Each \\{key,value}
554
+ # pair must match an existing label key and value exactly in order to
555
+ # satisfy the match.
556
+ class LabelSelector
557
+ include ::Google::Protobuf::MessageExts
558
+ extend ::Google::Protobuf::MessageExts::ClassMethods
559
+
560
+ # @!attribute [rw] key
561
+ # @return [::String]
562
+ # @!attribute [rw] value
563
+ # @return [::String]
564
+ class MatchLabelsEntry
565
+ include ::Google::Protobuf::MessageExts
566
+ extend ::Google::Protobuf::MessageExts::ClassMethods
567
+ end
568
+ end
569
+ end
570
+
571
+ # AllAtOnceStrategy causes all clusters to be updated concurrently.
572
+ class AllAtOnceStrategy
573
+ include ::Google::Protobuf::MessageExts
574
+ extend ::Google::Protobuf::MessageExts::ClassMethods
575
+ end
576
+
577
+ # RollingStrategy causes a specified number of clusters to be updated
578
+ # concurrently until all clusters are updated.
579
+ # @!attribute [rw] max_concurrent
580
+ # @return [::Integer]
581
+ # Optional. Maximum number of clusters to update the resource bundle on
582
+ # concurrently.
583
+ class RollingStrategy
584
+ include ::Google::Protobuf::MessageExts
585
+ extend ::Google::Protobuf::MessageExts::ClassMethods
586
+ end
587
+
588
+ # RolloutStrategy defines different ways to rollout a resource bundle across
589
+ # a set of clusters.
590
+ # @!attribute [rw] all_at_once
591
+ # @return [::Google::Cloud::ConfigDelivery::V1::AllAtOnceStrategy]
592
+ # AllAtOnceStrategy causes all clusters to be updated concurrently.
593
+ #
594
+ # Note: The following fields are mutually exclusive: `all_at_once`, `rolling`. If a field in that set is populated, all other fields in the set will automatically be cleared.
595
+ # @!attribute [rw] rolling
596
+ # @return [::Google::Cloud::ConfigDelivery::V1::RollingStrategy]
597
+ # RollingStrategy causes a specified number of clusters to be updated
598
+ # concurrently until all clusters are updated.
599
+ #
600
+ # Note: The following fields are mutually exclusive: `rolling`, `all_at_once`. If a field in that set is populated, all other fields in the set will automatically be cleared.
601
+ class RolloutStrategy
602
+ include ::Google::Protobuf::MessageExts
603
+ extend ::Google::Protobuf::MessageExts::ClassMethods
604
+ end
605
+
606
+ # RolloutStrategyInfo represents the status of execution of different types of
607
+ # rollout strategies. Only the field corresponding to the rollout strategy
608
+ # specified at the rollout resource will be populated.
609
+ # @!attribute [rw] all_at_once_strategy_info
610
+ # @return [::Google::Cloud::ConfigDelivery::V1::AllAtOnceStrategyInfo]
611
+ # AllAtOnceStrategyInfo represents the status of AllAtOnce rollout strategy
612
+ # execution.
613
+ #
614
+ # Note: The following fields are mutually exclusive: `all_at_once_strategy_info`, `rolling_strategy_info`. If a field in that set is populated, all other fields in the set will automatically be cleared.
615
+ # @!attribute [rw] rolling_strategy_info
616
+ # @return [::Google::Cloud::ConfigDelivery::V1::RollingStrategyInfo]
617
+ # RollingStrategyInfo represents the status of Rolling rollout strategy
618
+ # execution.
619
+ #
620
+ # Note: The following fields are mutually exclusive: `rolling_strategy_info`, `all_at_once_strategy_info`. If a field in that set is populated, all other fields in the set will automatically be cleared.
621
+ class RolloutStrategyInfo
622
+ include ::Google::Protobuf::MessageExts
623
+ extend ::Google::Protobuf::MessageExts::ClassMethods
624
+ end
625
+
626
+ # AllAtOnceStrategyInfo represents the status of execution of AllAtOnce rollout
627
+ # strategy.
628
+ # @!attribute [rw] clusters
629
+ # @return [::Array<::Google::Cloud::ConfigDelivery::V1::ClusterInfo>]
630
+ # Unordered list. resource bundle's deployment status for all targeted
631
+ # clusters.
632
+ class AllAtOnceStrategyInfo
633
+ include ::Google::Protobuf::MessageExts
634
+ extend ::Google::Protobuf::MessageExts::ClassMethods
635
+ end
636
+
637
+ # RollingStrategyInfo represents the status of execution of Rolling rollout
638
+ # strategy.
639
+ # @!attribute [rw] clusters
640
+ # @return [::Array<::Google::Cloud::ConfigDelivery::V1::ClusterInfo>]
641
+ # Unordered list. resource bundle's deployment status for all targeted
642
+ # clusters.
643
+ class RollingStrategyInfo
644
+ include ::Google::Protobuf::MessageExts
645
+ extend ::Google::Protobuf::MessageExts::ClassMethods
646
+ end
647
+
648
+ # Message for requesting list of FleetPackage.
649
+ # @!attribute [rw] parent
650
+ # @return [::String]
651
+ # Required. Parent value for ListFleetPackagesRequest.
652
+ # @!attribute [rw] page_size
653
+ # @return [::Integer]
654
+ # Optional. Requested page size. Server may return fewer items than
655
+ # requested. If unspecified, server will pick an appropriate default.
656
+ # @!attribute [rw] page_token
657
+ # @return [::String]
658
+ # Optional. A token identifying a page of results the server should return.
659
+ # @!attribute [rw] filter
660
+ # @return [::String]
661
+ # Optional. Filtering results
662
+ # @!attribute [rw] order_by
663
+ # @return [::String]
664
+ # Optional. Hint for how to order the results
665
+ class ListFleetPackagesRequest
666
+ include ::Google::Protobuf::MessageExts
667
+ extend ::Google::Protobuf::MessageExts::ClassMethods
668
+ end
669
+
670
+ # Message for response to listing FleetPackage
671
+ # @!attribute [rw] fleet_packages
672
+ # @return [::Array<::Google::Cloud::ConfigDelivery::V1::FleetPackage>]
673
+ # The list of FleetPackage
674
+ # @!attribute [rw] next_page_token
675
+ # @return [::String]
676
+ # A token identifying a page of results the server should return.
677
+ # @!attribute [rw] unreachable
678
+ # @return [::Array<::String>]
679
+ # Unordered list. Locations that could not be reached.
680
+ class ListFleetPackagesResponse
681
+ include ::Google::Protobuf::MessageExts
682
+ extend ::Google::Protobuf::MessageExts::ClassMethods
683
+ end
684
+
685
+ # Message for getting a FleetPackage
686
+ # @!attribute [rw] name
687
+ # @return [::String]
688
+ # Required. Name of the resource
689
+ class GetFleetPackageRequest
690
+ include ::Google::Protobuf::MessageExts
691
+ extend ::Google::Protobuf::MessageExts::ClassMethods
692
+ end
693
+
694
+ # Message for creating a FleetPackage
695
+ # @!attribute [rw] parent
696
+ # @return [::String]
697
+ # Required. Value for parent.
698
+ # @!attribute [rw] fleet_package_id
699
+ # @return [::String]
700
+ # Required. Id of the requesting object
701
+ # If auto-generating Id server-side, remove this field and
702
+ # fleet_package_id from the method_signature of Create RPC
703
+ # @!attribute [rw] fleet_package
704
+ # @return [::Google::Cloud::ConfigDelivery::V1::FleetPackage]
705
+ # Required. The resource being created.
706
+ # @!attribute [rw] request_id
707
+ # @return [::String]
708
+ # Optional. An optional request ID to identify requests. Specify a unique
709
+ # request ID so that if you must retry your request, the server will know to
710
+ # ignore the request if it has already been completed. The server will
711
+ # guarantee that for at least 60 minutes since the first request.
712
+ #
713
+ # For example, consider a situation where you make an initial request and the
714
+ # request times out. If you make the request again with the same request
715
+ # ID, the server can check if original operation with the same request ID
716
+ # was received, and if so, will ignore the second request. This prevents
717
+ # clients from accidentally creating duplicate commitments.
718
+ #
719
+ # The request ID must be a valid UUID with the exception that zero UUID is
720
+ # not supported (00000000-0000-0000-0000-000000000000).
721
+ class CreateFleetPackageRequest
722
+ include ::Google::Protobuf::MessageExts
723
+ extend ::Google::Protobuf::MessageExts::ClassMethods
724
+ end
725
+
726
+ # Message for updating a FleetPackage
727
+ # @!attribute [rw] update_mask
728
+ # @return [::Google::Protobuf::FieldMask]
729
+ # Required. Field mask is used to specify the fields to be overwritten in the
730
+ # FleetPackage resource by the update.
731
+ # The fields specified in the update_mask are relative to the resource, not
732
+ # the full request. A field will be overwritten if it is in the mask. If the
733
+ # user does not provide a mask then all fields will be overwritten.
734
+ # @!attribute [rw] fleet_package
735
+ # @return [::Google::Cloud::ConfigDelivery::V1::FleetPackage]
736
+ # Required. The resource being updated
737
+ # @!attribute [rw] request_id
738
+ # @return [::String]
739
+ # Optional. An optional request ID to identify requests. Specify a unique
740
+ # request ID so that if you must retry your request, the server will know to
741
+ # ignore the request if it has already been completed. The server will
742
+ # guarantee that for at least 60 minutes since the first request.
743
+ #
744
+ # For example, consider a situation where you make an initial request and the
745
+ # request times out. If you make the request again with the same request
746
+ # ID, the server can check if original operation with the same request ID
747
+ # was received, and if so, will ignore the second request. This prevents
748
+ # clients from accidentally creating duplicate commitments.
749
+ #
750
+ # The request ID must be a valid UUID with the exception that zero UUID is
751
+ # not supported (00000000-0000-0000-0000-000000000000).
752
+ class UpdateFleetPackageRequest
753
+ include ::Google::Protobuf::MessageExts
754
+ extend ::Google::Protobuf::MessageExts::ClassMethods
755
+ end
756
+
757
+ # Message for deleting a FleetPackage
758
+ # @!attribute [rw] name
759
+ # @return [::String]
760
+ # Required. Name of the resource
761
+ # @!attribute [rw] request_id
762
+ # @return [::String]
763
+ # Optional. An optional request ID to identify requests. Specify a unique
764
+ # request ID so that if you must retry your request, the server will know to
765
+ # ignore the request if it has already been completed. The server will
766
+ # guarantee that for at least 60 minutes after the first request.
767
+ #
768
+ # For example, consider a situation where you make an initial request and the
769
+ # request times out. If you make the request again with the same request
770
+ # ID, the server can check if original operation with the same request ID
771
+ # was received, and if so, will ignore the second request. This prevents
772
+ # clients from accidentally creating duplicate commitments.
773
+ #
774
+ # The request ID must be a valid UUID with the exception that zero UUID is
775
+ # not supported (00000000-0000-0000-0000-000000000000).
776
+ # @!attribute [rw] force
777
+ # @return [::Boolean]
778
+ # Optional. If set to true, any rollouts for this FleetPackage will also be
779
+ # deleted. (Otherwise, the request will only work if the fleet package has no
780
+ # rollouts.)
781
+ # @!attribute [rw] allow_missing
782
+ # @return [::Boolean]
783
+ # Optional. If set to true, then deleting an already deleted or non existing
784
+ # FleetPackage will succeed.
785
+ class DeleteFleetPackageRequest
786
+ include ::Google::Protobuf::MessageExts
787
+ extend ::Google::Protobuf::MessageExts::ClassMethods
788
+ end
789
+
790
+ # Represents the metadata of the long-running operation.
791
+ # @!attribute [r] create_time
792
+ # @return [::Google::Protobuf::Timestamp]
793
+ # Output only. The time the operation was created.
794
+ # @!attribute [r] end_time
795
+ # @return [::Google::Protobuf::Timestamp]
796
+ # Output only. The time the operation finished running.
797
+ # @!attribute [r] target
798
+ # @return [::String]
799
+ # Output only. Server-defined resource path for the target of the operation.
800
+ # @!attribute [r] verb
801
+ # @return [::String]
802
+ # Output only. Name of the verb executed by the operation.
803
+ # @!attribute [r] status_message
804
+ # @return [::String]
805
+ # Output only. Human-readable status of the operation, if any.
806
+ # @!attribute [r] requested_cancellation
807
+ # @return [::Boolean]
808
+ # Output only. Identifies whether the user has requested cancellation
809
+ # of the operation. Operations that have been cancelled successfully
810
+ # have
811
+ # {::Google::Longrunning::Operation#error google.longrunning.Operation.error}
812
+ # value with a {::Google::Rpc::Status#code google.rpc.Status.code} of 1,
813
+ # corresponding to `Code.CANCELLED`.
814
+ # @!attribute [r] api_version
815
+ # @return [::String]
816
+ # Output only. API version used to start the operation.
817
+ class OperationMetadata
818
+ include ::Google::Protobuf::MessageExts
819
+ extend ::Google::Protobuf::MessageExts::ClassMethods
820
+ end
821
+
822
+ # `Release` represents a versioned release containing kubernetes manifests.
823
+ # @!attribute [rw] name
824
+ # @return [::String]
825
+ # Identifier. Name of the Release. Format is
826
+ # `projects/{project}/locations/location}/resourceBundles/{resource_bundle}/release/[a-z][a-z0-9\-]{0,62}`.
827
+ # @!attribute [r] create_time
828
+ # @return [::Google::Protobuf::Timestamp]
829
+ # Output only. Time `Release` was created.
830
+ # @!attribute [r] update_time
831
+ # @return [::Google::Protobuf::Timestamp]
832
+ # Output only. Time `Release` was last updated.
833
+ # @!attribute [rw] labels
834
+ # @return [::Google::Protobuf::Map{::String => ::String}]
835
+ # Optional. Labels as key value pairs.
836
+ # @!attribute [rw] lifecycle
837
+ # @return [::Google::Cloud::ConfigDelivery::V1::Release::Lifecycle]
838
+ # Optional. lifecycle of the `Release`.
839
+ # @!attribute [rw] version
840
+ # @return [::String]
841
+ # Required. version of the `Release`. This must be v<major>.<minor>.<patch>.
842
+ # @!attribute [r] publish_time
843
+ # @return [::Google::Protobuf::Timestamp]
844
+ # Output only. Time the `Release` was published.
845
+ # @!attribute [rw] info
846
+ # @return [::Google::Cloud::ConfigDelivery::V1::ReleaseInfo]
847
+ # Optional. `ResourceBundle` Release extra information e.g., artifact
848
+ # registry image path.
849
+ class Release
850
+ include ::Google::Protobuf::MessageExts
851
+ extend ::Google::Protobuf::MessageExts::ClassMethods
852
+
853
+ # @!attribute [rw] key
854
+ # @return [::String]
855
+ # @!attribute [rw] value
856
+ # @return [::String]
857
+ class LabelsEntry
858
+ include ::Google::Protobuf::MessageExts
859
+ extend ::Google::Protobuf::MessageExts::ClassMethods
860
+ end
861
+
862
+ # Lifecycle indicates the state of the `Release`. A published release is
863
+ # immutable.
864
+ module Lifecycle
865
+ # indicates lifecycle has not been specified.
866
+ LIFECYCLE_UNSPECIFIED = 0
867
+
868
+ # indicates that the `Release` is being edited.
869
+ DRAFT = 1
870
+
871
+ # indicates that the `Release` is now published (or released) and
872
+ # immutable.
873
+ PUBLISHED = 2
874
+ end
875
+ end
876
+
877
+ # Variant represents the content of a `ResourceBundle` variant.
878
+ # @!attribute [rw] labels
879
+ # @return [::Google::Protobuf::Map{::String => ::String}]
880
+ # Optional. labels to represent any metadata associated with the variant.
881
+ # @!attribute [rw] resources
882
+ # @return [::Array<::String>]
883
+ # Required. Input only. Unordered list. resources contain the kubernetes
884
+ # manifests (YAMLs) for this variant.
885
+ # @!attribute [rw] name
886
+ # @return [::String]
887
+ # Identifier. Name follows format of
888
+ # projects/\\{project}/locations/\\{location}/resourceBundles/\\{resource_bundle}/releases/\\{release}/variants/\\{variant}
889
+ # @!attribute [r] create_time
890
+ # @return [::Google::Protobuf::Timestamp]
891
+ # Output only. [Output only] Create time stamp
892
+ # @!attribute [r] update_time
893
+ # @return [::Google::Protobuf::Timestamp]
894
+ # Output only. [Output only] Update time stamp
895
+ class Variant
896
+ include ::Google::Protobuf::MessageExts
897
+ extend ::Google::Protobuf::MessageExts::ClassMethods
898
+
899
+ # @!attribute [rw] key
900
+ # @return [::String]
901
+ # @!attribute [rw] value
902
+ # @return [::String]
903
+ class LabelsEntry
904
+ include ::Google::Protobuf::MessageExts
905
+ extend ::Google::Protobuf::MessageExts::ClassMethods
906
+ end
907
+ end
908
+
909
+ # Message for requesting list of Variants.
910
+ # @!attribute [rw] parent
911
+ # @return [::String]
912
+ # Required. Parent value for ListVariantsRequest.
913
+ # @!attribute [rw] page_size
914
+ # @return [::Integer]
915
+ # Optional. Requested page size. Server may return fewer items than
916
+ # requested. If unspecified, server will pick an appropriate default.
917
+ # @!attribute [rw] page_token
918
+ # @return [::String]
919
+ # Optional. A token identifying a page of results the server should return.
920
+ # @!attribute [rw] filter
921
+ # @return [::String]
922
+ # Optional. Filtering results.
923
+ # @!attribute [rw] order_by
924
+ # @return [::String]
925
+ # Optional. Hint for how to order the results.
926
+ class ListVariantsRequest
927
+ include ::Google::Protobuf::MessageExts
928
+ extend ::Google::Protobuf::MessageExts::ClassMethods
929
+ end
930
+
931
+ # Message for response to listing Variants
932
+ # @!attribute [rw] variants
933
+ # @return [::Array<::Google::Cloud::ConfigDelivery::V1::Variant>]
934
+ # The list of Variants
935
+ # @!attribute [rw] next_page_token
936
+ # @return [::String]
937
+ # A token identifying a page of results the server should return.
938
+ # @!attribute [rw] unreachable
939
+ # @return [::Array<::String>]
940
+ # Unordered list. Locations that could not be reached.
941
+ class ListVariantsResponse
942
+ include ::Google::Protobuf::MessageExts
943
+ extend ::Google::Protobuf::MessageExts::ClassMethods
944
+ end
945
+
946
+ # Message for getting a Variant
947
+ # @!attribute [rw] name
948
+ # @return [::String]
949
+ # Required. Name of the resource
950
+ class GetVariantRequest
951
+ include ::Google::Protobuf::MessageExts
952
+ extend ::Google::Protobuf::MessageExts::ClassMethods
953
+ end
954
+
955
+ # Message for creating a Variant
956
+ # @!attribute [rw] parent
957
+ # @return [::String]
958
+ # Required. Value for parent.
959
+ # @!attribute [rw] variant_id
960
+ # @return [::String]
961
+ # Required. Id of the requesting object
962
+ # @!attribute [rw] variant
963
+ # @return [::Google::Cloud::ConfigDelivery::V1::Variant]
964
+ # Required. The resource being created
965
+ # @!attribute [rw] request_id
966
+ # @return [::String]
967
+ # Optional. An optional request ID to identify requests. Specify a unique
968
+ # request ID so that if you must retry your request, the server will know to
969
+ # ignore the request if it has already been completed. The server will
970
+ # guarantee that for at least 60 minutes since the first request.
971
+ #
972
+ # For example, consider a situation where you make an initial request and the
973
+ # request times out. If you make the request again with the same request
974
+ # ID, the server can check if original operation with the same request ID
975
+ # was received, and if so, will ignore the second request. This prevents
976
+ # clients from accidentally creating duplicate commitments.
977
+ #
978
+ # The request ID must be a valid UUID with the exception that zero UUID is
979
+ # not supported (00000000-0000-0000-0000-000000000000).
980
+ class CreateVariantRequest
981
+ include ::Google::Protobuf::MessageExts
982
+ extend ::Google::Protobuf::MessageExts::ClassMethods
983
+ end
984
+
985
+ # Message for updating a Variant
986
+ # @!attribute [rw] update_mask
987
+ # @return [::Google::Protobuf::FieldMask]
988
+ # Optional. Field mask is used to specify the fields to be overwritten in the
989
+ # Variant resource by the update.
990
+ # The fields specified in the update_mask are relative to the resource, not
991
+ # the full request. A field will be overwritten if it is in the mask. If the
992
+ # user does not provide a mask then all fields will be overwritten.
993
+ # @!attribute [rw] variant
994
+ # @return [::Google::Cloud::ConfigDelivery::V1::Variant]
995
+ # Required. The resource being updated
996
+ # @!attribute [rw] request_id
997
+ # @return [::String]
998
+ # Optional. An optional request ID to identify requests. Specify a unique
999
+ # request ID so that if you must retry your request, the server will know to
1000
+ # ignore the request if it has already been completed. The server will
1001
+ # guarantee that for at least 60 minutes since the first request.
1002
+ #
1003
+ # For example, consider a situation where you make an initial request and the
1004
+ # request times out. If you make the request again with the same request
1005
+ # ID, the server can check if original operation with the same request ID
1006
+ # was received, and if so, will ignore the second request. This prevents
1007
+ # clients from accidentally creating duplicate commitments.
1008
+ #
1009
+ # The request ID must be a valid UUID with the exception that zero UUID is
1010
+ # not supported (00000000-0000-0000-0000-000000000000).
1011
+ class UpdateVariantRequest
1012
+ include ::Google::Protobuf::MessageExts
1013
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1014
+ end
1015
+
1016
+ # Message for deleting a Variant
1017
+ # @!attribute [rw] name
1018
+ # @return [::String]
1019
+ # Required. Name of the resource
1020
+ # @!attribute [rw] request_id
1021
+ # @return [::String]
1022
+ # Optional. An optional request ID to identify requests. Specify a unique
1023
+ # request ID so that if you must retry your request, the server will know to
1024
+ # ignore the request if it has already been completed. The server will
1025
+ # guarantee that for at least 60 minutes after the first request.
1026
+ #
1027
+ # For example, consider a situation where you make an initial request and the
1028
+ # request times out. If you make the request again with the same request
1029
+ # ID, the server can check if original operation with the same request ID
1030
+ # was received, and if so, will ignore the second request. This prevents
1031
+ # clients from accidentally creating duplicate commitments.
1032
+ #
1033
+ # The request ID must be a valid UUID with the exception that zero UUID is
1034
+ # not supported (00000000-0000-0000-0000-000000000000).
1035
+ class DeleteVariantRequest
1036
+ include ::Google::Protobuf::MessageExts
1037
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1038
+ end
1039
+
1040
+ # ReleaseInfo contains extra information about the `ResourceBundle` release
1041
+ # e.g., link to an artifact registry OCI image.
1042
+ # @!attribute [r] oci_image_path
1043
+ # @return [::String]
1044
+ # Output only. path to the oci image the service uploads to on a `Release`
1045
+ # creation.
1046
+ # @!attribute [rw] variant_oci_image_paths
1047
+ # @return [::Google::Protobuf::Map{::String => ::String}]
1048
+ # Optional. per-variant paths to the oci images the service uploads on
1049
+ # package release creation
1050
+ class ReleaseInfo
1051
+ include ::Google::Protobuf::MessageExts
1052
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1053
+
1054
+ # @!attribute [rw] key
1055
+ # @return [::String]
1056
+ # @!attribute [rw] value
1057
+ # @return [::String]
1058
+ class VariantOciImagePathsEntry
1059
+ include ::Google::Protobuf::MessageExts
1060
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1061
+ end
1062
+ end
1063
+
1064
+ # Message for requesting list of Releases.
1065
+ # @!attribute [rw] parent
1066
+ # @return [::String]
1067
+ # Required. Parent value for ListReleasesRequest.
1068
+ # @!attribute [rw] page_size
1069
+ # @return [::Integer]
1070
+ # Optional. Requested page size. Server may return fewer items than
1071
+ # requested. If unspecified, server will pick an appropriate default.
1072
+ # @!attribute [rw] page_token
1073
+ # @return [::String]
1074
+ # Optional. A token identifying a page of results the server should return.
1075
+ # @!attribute [rw] filter
1076
+ # @return [::String]
1077
+ # Optional. Filtering results.
1078
+ # @!attribute [rw] order_by
1079
+ # @return [::String]
1080
+ # Optional. Hint for how to order the results.
1081
+ class ListReleasesRequest
1082
+ include ::Google::Protobuf::MessageExts
1083
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1084
+ end
1085
+
1086
+ # Message for response to listing Releases
1087
+ # @!attribute [rw] releases
1088
+ # @return [::Array<::Google::Cloud::ConfigDelivery::V1::Release>]
1089
+ # The list of Releases
1090
+ # @!attribute [rw] next_page_token
1091
+ # @return [::String]
1092
+ # A token identifying a page of results the server should return.
1093
+ # @!attribute [rw] unreachable
1094
+ # @return [::Array<::String>]
1095
+ # Unordered list. Locations that could not be reached.
1096
+ class ListReleasesResponse
1097
+ include ::Google::Protobuf::MessageExts
1098
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1099
+ end
1100
+
1101
+ # Message for getting a Release
1102
+ # @!attribute [rw] name
1103
+ # @return [::String]
1104
+ # Required. Name of the resource
1105
+ class GetReleaseRequest
1106
+ include ::Google::Protobuf::MessageExts
1107
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1108
+ end
1109
+
1110
+ # Message for creating a Release
1111
+ # @!attribute [rw] parent
1112
+ # @return [::String]
1113
+ # Required. Value for parent.
1114
+ # @!attribute [rw] release_id
1115
+ # @return [::String]
1116
+ # Required. Id of the requesting object
1117
+ # If auto-generating Id server-side, remove this field and
1118
+ # release_id from the method_signature of Create RPC
1119
+ # @!attribute [rw] release
1120
+ # @return [::Google::Cloud::ConfigDelivery::V1::Release]
1121
+ # Required. The resource being created
1122
+ # @!attribute [rw] request_id
1123
+ # @return [::String]
1124
+ # Optional. An optional request ID to identify requests. Specify a unique
1125
+ # request ID so that if you must retry your request, the server will know to
1126
+ # ignore the request if it has already been completed. The server will
1127
+ # guarantee that for at least 60 minutes since the first request.
1128
+ #
1129
+ # For example, consider a situation where you make an initial request and the
1130
+ # request times out. If you make the request again with the same request
1131
+ # ID, the server can check if original operation with the same request ID
1132
+ # was received, and if so, will ignore the second request. This prevents
1133
+ # clients from accidentally creating duplicate commitments.
1134
+ #
1135
+ # The request ID must be a valid UUID with the exception that zero UUID is
1136
+ # not supported (00000000-0000-0000-0000-000000000000).
1137
+ class CreateReleaseRequest
1138
+ include ::Google::Protobuf::MessageExts
1139
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1140
+ end
1141
+
1142
+ # Message for updating a Release
1143
+ # @!attribute [rw] update_mask
1144
+ # @return [::Google::Protobuf::FieldMask]
1145
+ # Required. Field mask is used to specify the fields to be overwritten in the
1146
+ # Release resource by the update.
1147
+ # The fields specified in the update_mask are relative to the resource, not
1148
+ # the full request. A field will be overwritten if it is in the mask. If the
1149
+ # user does not provide a mask then all fields will be overwritten.
1150
+ # @!attribute [rw] release
1151
+ # @return [::Google::Cloud::ConfigDelivery::V1::Release]
1152
+ # Required. The resource being updated
1153
+ # @!attribute [rw] request_id
1154
+ # @return [::String]
1155
+ # Optional. An optional request ID to identify requests. Specify a unique
1156
+ # request ID so that if you must retry your request, the server will know to
1157
+ # ignore the request if it has already been completed. The server will
1158
+ # guarantee that for at least 60 minutes since the first request.
1159
+ #
1160
+ # For example, consider a situation where you make an initial request and the
1161
+ # request times out. If you make the request again with the same request
1162
+ # ID, the server can check if original operation with the same request ID
1163
+ # was received, and if so, will ignore the second request. This prevents
1164
+ # clients from accidentally creating duplicate commitments.
1165
+ #
1166
+ # The request ID must be a valid UUID with the exception that zero UUID is
1167
+ # not supported (00000000-0000-0000-0000-000000000000).
1168
+ class UpdateReleaseRequest
1169
+ include ::Google::Protobuf::MessageExts
1170
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1171
+ end
1172
+
1173
+ # Message for deleting a Release
1174
+ # @!attribute [rw] name
1175
+ # @return [::String]
1176
+ # Required. Name of the resource
1177
+ # @!attribute [rw] request_id
1178
+ # @return [::String]
1179
+ # Optional. An optional request ID to identify requests. Specify a unique
1180
+ # request ID so that if you must retry your request, the server will know to
1181
+ # ignore the request if it has already been completed. The server will
1182
+ # guarantee that for at least 60 minutes after the first request.
1183
+ #
1184
+ # For example, consider a situation where you make an initial request and the
1185
+ # request times out. If you make the request again with the same request
1186
+ # ID, the server can check if original operation with the same request ID
1187
+ # was received, and if so, will ignore the second request. This prevents
1188
+ # clients from accidentally creating duplicate commitments.
1189
+ #
1190
+ # The request ID must be a valid UUID with the exception that zero UUID is
1191
+ # not supported (00000000-0000-0000-0000-000000000000).
1192
+ # @!attribute [rw] force
1193
+ # @return [::Boolean]
1194
+ # Optional. If set to true, any variants of this release will also be
1195
+ # deleted. (Otherwise, the request will only work if the release has no
1196
+ # variants.)
1197
+ class DeleteReleaseRequest
1198
+ include ::Google::Protobuf::MessageExts
1199
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1200
+ end
1201
+
1202
+ # Message for requesting list of Rollouts
1203
+ # @!attribute [rw] parent
1204
+ # @return [::String]
1205
+ # Required. Parent value for ListRolloutsRequest
1206
+ # @!attribute [rw] page_size
1207
+ # @return [::Integer]
1208
+ # Optional. Requested page size. Server may return fewer items than
1209
+ # requested. If unspecified, server will pick an appropriate default.
1210
+ # @!attribute [rw] page_token
1211
+ # @return [::String]
1212
+ # Optional. A token identifying a page of results the server should return.
1213
+ # @!attribute [rw] filter
1214
+ # @return [::String]
1215
+ # Optional. Filtering results
1216
+ # @!attribute [rw] order_by
1217
+ # @return [::String]
1218
+ # Optional. Hint for how to order the results
1219
+ class ListRolloutsRequest
1220
+ include ::Google::Protobuf::MessageExts
1221
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1222
+ end
1223
+
1224
+ # Message for response to listing Rollouts
1225
+ # @!attribute [rw] rollouts
1226
+ # @return [::Array<::Google::Cloud::ConfigDelivery::V1::Rollout>]
1227
+ # The list of Rollouts
1228
+ # @!attribute [rw] next_page_token
1229
+ # @return [::String]
1230
+ # A token identifying a page of results the server should return.
1231
+ # @!attribute [rw] unreachable
1232
+ # @return [::Array<::String>]
1233
+ # Unordered list. Locations that could not be reached.
1234
+ class ListRolloutsResponse
1235
+ include ::Google::Protobuf::MessageExts
1236
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1237
+ end
1238
+
1239
+ # Message for getting a Rollout
1240
+ # @!attribute [rw] name
1241
+ # @return [::String]
1242
+ # Required. Name of the resource
1243
+ class GetRolloutRequest
1244
+ include ::Google::Protobuf::MessageExts
1245
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1246
+ end
1247
+
1248
+ # RolloutInfo represents the state of the `FleetPackage` at all the
1249
+ # clusters the rollout is targeting.
1250
+ # @!attribute [r] state
1251
+ # @return [::Google::Cloud::ConfigDelivery::V1::RolloutInfo::State]
1252
+ # Output only. state contains the overall status of the Rollout.
1253
+ # @!attribute [r] start_time
1254
+ # @return [::Google::Protobuf::Timestamp]
1255
+ # Output only. Time when the rollout started.
1256
+ # @!attribute [r] end_time
1257
+ # @return [::Google::Protobuf::Timestamp]
1258
+ # Output only. Time when the rollout completed.
1259
+ # @!attribute [r] message
1260
+ # @return [::String]
1261
+ # Output only. Message containing additional information related to the
1262
+ # rollout.
1263
+ # @!attribute [r] rollout_strategy_info
1264
+ # @return [::Google::Cloud::ConfigDelivery::V1::RolloutStrategyInfo]
1265
+ # Output only. Rollout strategy info represents the status of execution of
1266
+ # rollout strategy.
1267
+ class RolloutInfo
1268
+ include ::Google::Protobuf::MessageExts
1269
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1270
+
1271
+ # State of the rollout
1272
+ module State
1273
+ # Unspecified state.
1274
+ STATE_UNSPECIFIED = 0
1275
+
1276
+ # Rollout completed.
1277
+ COMPLETED = 1
1278
+
1279
+ # Rollout suspended.
1280
+ SUSPENDED = 2
1281
+
1282
+ # Rollout aborted.
1283
+ ABORTED = 3
1284
+
1285
+ # Rollout in progress.
1286
+ IN_PROGRESS = 5
1287
+
1288
+ # Rollout stalled.
1289
+ STALLED = 6
1290
+
1291
+ # Rollout cancelled.
1292
+ CANCELLED = 7
1293
+
1294
+ # Rollout aborting.
1295
+ ABORTING = 8
1296
+ end
1297
+ end
1298
+
1299
+ # Rollout resource represents an instance of `FleetPackage` rollout operation
1300
+ # across a fleet. This is a system generated resource and will be read only for
1301
+ # end-users. It will be primarily used by the service to process the changes in
1302
+ # the `FleetPackage` and other changes in the environment.
1303
+ # @!attribute [rw] name
1304
+ # @return [::String]
1305
+ # Identifier. Name of the Rollout. Format is
1306
+ # `projects/{project}/locations/{location}/fleetPackages/{fleet_package}/rollouts/[a-z][a-z0-9\-]{0,62}`.
1307
+ # @!attribute [rw] release
1308
+ # @return [::String]
1309
+ # Reference to the `Release` being rolled out.
1310
+ # @!attribute [rw] rollout_strategy
1311
+ # @return [::Google::Cloud::ConfigDelivery::V1::RolloutStrategy]
1312
+ # Rollout strategy for rolling out `FleetPackage` to clusters.
1313
+ # @!attribute [rw] info
1314
+ # @return [::Google::Cloud::ConfigDelivery::V1::RolloutInfo]
1315
+ # Current details of the rollout.
1316
+ # @!attribute [rw] deletion_propagation_policy
1317
+ # @return [::Google::Cloud::ConfigDelivery::V1::DeletionPropagationPolicy]
1318
+ # Deletion propagation policy of the rollout.
1319
+ # @!attribute [r] create_time
1320
+ # @return [::Google::Protobuf::Timestamp]
1321
+ # Output only. The time the rollout was created.
1322
+ # @!attribute [r] update_time
1323
+ # @return [::Google::Protobuf::Timestamp]
1324
+ # Output only. The time the rollout was most recently updated.
1325
+ class Rollout
1326
+ include ::Google::Protobuf::MessageExts
1327
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1328
+ end
1329
+
1330
+ # Message for suspending a rollout.
1331
+ # @!attribute [rw] name
1332
+ # @return [::String]
1333
+ # Required. Name of the Rollout.
1334
+ # @!attribute [rw] reason
1335
+ # @return [::String]
1336
+ # Optional. Reason for suspension.
1337
+ class SuspendRolloutRequest
1338
+ include ::Google::Protobuf::MessageExts
1339
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1340
+ end
1341
+
1342
+ # Message for resuming a rollout.
1343
+ # @!attribute [rw] name
1344
+ # @return [::String]
1345
+ # Required. Name of the Rollout.
1346
+ # @!attribute [rw] reason
1347
+ # @return [::String]
1348
+ # Optional. Reason for resuming the rollout.
1349
+ class ResumeRolloutRequest
1350
+ include ::Google::Protobuf::MessageExts
1351
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1352
+ end
1353
+
1354
+ # Message for aborting a rollout.
1355
+ # @!attribute [rw] name
1356
+ # @return [::String]
1357
+ # Required. Name of the Rollout.
1358
+ # @!attribute [rw] reason
1359
+ # @return [::String]
1360
+ # Optional. Reason for aborting.
1361
+ class AbortRolloutRequest
1362
+ include ::Google::Protobuf::MessageExts
1363
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1364
+ end
1365
+
1366
+ # Deletion Propagation Policy determines what happens to the underlying
1367
+ # Kubernetes resources on a cluster when the `FleetPackage` managing
1368
+ # those resources no longer targets the cluster or is deleted.
1369
+ module DeletionPropagationPolicy
1370
+ # Unspecified deletion propagation policy. Defaults to FOREGROUND.
1371
+ DELETION_PROPAGATION_POLICY_UNSPECIFIED = 0
1372
+
1373
+ # Foreground deletion propagation policy. Any resources synced to the cluster
1374
+ # will be deleted.
1375
+ FOREGROUND = 1
1376
+
1377
+ # Orphan deletion propagation policy. Any resources synced to the cluster
1378
+ # will be abandoned.
1379
+ ORPHAN = 2
1380
+ end
1381
+ end
1382
+ end
1383
+ end
1384
+ end