google-cloud-gke_multi_cloud-v1 0.1.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/AUTHENTICATION.md +7 -7
  3. data/README.md +9 -9
  4. data/lib/google/cloud/gke_multi_cloud/v1/attached_clusters/client.rb +1289 -0
  5. data/lib/google/cloud/gke_multi_cloud/v1/attached_clusters/credentials.rb +47 -0
  6. data/lib/google/cloud/gke_multi_cloud/v1/attached_clusters/operations.rb +770 -0
  7. data/lib/google/cloud/gke_multi_cloud/v1/attached_clusters/paths.rb +86 -0
  8. data/lib/google/cloud/gke_multi_cloud/v1/attached_clusters.rb +52 -0
  9. data/lib/google/cloud/gke_multi_cloud/v1/aws_clusters/client.rb +93 -51
  10. data/lib/google/cloud/gke_multi_cloud/v1/aws_clusters/operations.rb +3 -0
  11. data/lib/google/cloud/gke_multi_cloud/v1/aws_clusters.rb +1 -1
  12. data/lib/google/cloud/gke_multi_cloud/v1/azure_clusters/client.rb +126 -75
  13. data/lib/google/cloud/gke_multi_cloud/v1/azure_clusters/operations.rb +3 -0
  14. data/lib/google/cloud/gke_multi_cloud/v1/azure_clusters.rb +1 -1
  15. data/lib/google/cloud/gke_multi_cloud/v1/version.rb +1 -1
  16. data/lib/google/cloud/gke_multi_cloud/v1.rb +4 -3
  17. data/lib/google/cloud/gkemulticloud/v1/attached_resources_pb.rb +82 -0
  18. data/lib/google/cloud/gkemulticloud/v1/attached_service_pb.rb +84 -0
  19. data/lib/google/cloud/gkemulticloud/v1/attached_service_services_pb.rb +85 -0
  20. data/lib/google/cloud/gkemulticloud/v1/aws_resources_pb.rb +17 -0
  21. data/lib/google/cloud/gkemulticloud/v1/aws_service_services_pb.rb +19 -11
  22. data/lib/google/cloud/gkemulticloud/v1/azure_resources_pb.rb +11 -0
  23. data/lib/google/cloud/gkemulticloud/v1/azure_service_services_pb.rb +28 -17
  24. data/lib/google/cloud/gkemulticloud/v1/common_resources_pb.rb +10 -0
  25. data/proto_docs/google/api/client.rb +318 -0
  26. data/proto_docs/google/api/launch_stage.rb +71 -0
  27. data/proto_docs/google/cloud/gkemulticloud/v1/attached_resources.rb +239 -0
  28. data/proto_docs/google/cloud/gkemulticloud/v1/attached_service.rb +294 -0
  29. data/proto_docs/google/cloud/gkemulticloud/v1/aws_resources.rb +86 -29
  30. data/proto_docs/google/cloud/gkemulticloud/v1/aws_service.rb +79 -44
  31. data/proto_docs/google/cloud/gkemulticloud/v1/azure_resources.rb +75 -37
  32. data/proto_docs/google/cloud/gkemulticloud/v1/azure_service.rb +105 -64
  33. data/proto_docs/google/cloud/gkemulticloud/v1/common_resources.rb +36 -3
  34. data/proto_docs/google/protobuf/empty.rb +0 -2
  35. data/proto_docs/google/rpc/status.rb +4 -2
  36. metadata +24 -12
@@ -0,0 +1,294 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 GkeMultiCloud
23
+ module V1
24
+ # Request message for `AttachedClusters.GenerateAttachedClusterInstallManifest`
25
+ # method.
26
+ # @!attribute [rw] parent
27
+ # @return [::String]
28
+ # Required. The parent location where this
29
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} resource
30
+ # will be created.
31
+ #
32
+ # Location names are formatted as `projects/<project-id>/locations/<region>`.
33
+ #
34
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
35
+ # for more details on Google Cloud resource names.
36
+ # @!attribute [rw] attached_cluster_id
37
+ # @return [::String]
38
+ # Required. A client provided ID the resource. Must be unique within the
39
+ # parent resource.
40
+ #
41
+ # The provided ID will be part of the
42
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} resource
43
+ # name formatted as
44
+ # `projects/<project-id>/locations/<region>/attachedClusters/<cluster-id>`.
45
+ #
46
+ # Valid characters are `/[a-z][0-9]-/`. Cannot be longer than 63 characters.
47
+ #
48
+ # When generating an install manifest for importing an existing Membership
49
+ # resource, the attached_cluster_id field must be the Membership id.
50
+ #
51
+ # Membership names are formatted as `resource name formatted as
52
+ # `projects/<project-id>/locations/<region>/memberships/<membership-id>`.
53
+ # @!attribute [rw] platform_version
54
+ # @return [::String]
55
+ # Required. The platform version for the cluster (e.g. `1.19.0-gke.1000`).
56
+ #
57
+ # You can list all supported versions on a given Google Cloud region by
58
+ # calling
59
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedClusters::Client#get_attached_server_config GetAttachedServerConfig}.
60
+ class GenerateAttachedClusterInstallManifestRequest
61
+ include ::Google::Protobuf::MessageExts
62
+ extend ::Google::Protobuf::MessageExts::ClassMethods
63
+ end
64
+
65
+ # Response message for
66
+ # `AttachedClusters.GenerateAttachedClusterInstallManifest` method.
67
+ # @!attribute [rw] manifest
68
+ # @return [::String]
69
+ # A set of Kubernetes resources (in YAML format) to be applied
70
+ # to the cluster to be attached.
71
+ class GenerateAttachedClusterInstallManifestResponse
72
+ include ::Google::Protobuf::MessageExts
73
+ extend ::Google::Protobuf::MessageExts::ClassMethods
74
+ end
75
+
76
+ # Request message for `AttachedClusters.CreateAttachedCluster` method.
77
+ # @!attribute [rw] parent
78
+ # @return [::String]
79
+ # Required. The parent location where this
80
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} resource
81
+ # will be created.
82
+ #
83
+ # Location names are formatted as `projects/<project-id>/locations/<region>`.
84
+ #
85
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
86
+ # for more details on Google Cloud resource names.
87
+ # @!attribute [rw] attached_cluster
88
+ # @return [::Google::Cloud::GkeMultiCloud::V1::AttachedCluster]
89
+ # Required. The specification of the
90
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} to create.
91
+ # @!attribute [rw] attached_cluster_id
92
+ # @return [::String]
93
+ # Required. A client provided ID the resource. Must be unique within the
94
+ # parent resource.
95
+ #
96
+ # The provided ID will be part of the
97
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} resource
98
+ # name formatted as
99
+ # `projects/<project-id>/locations/<region>/attachedClusters/<cluster-id>`.
100
+ #
101
+ # Valid characters are `/[a-z][0-9]-/`. Cannot be longer than 63 characters.
102
+ # @!attribute [rw] validate_only
103
+ # @return [::Boolean]
104
+ # If set, only validate the request, but do not actually create the cluster.
105
+ class CreateAttachedClusterRequest
106
+ include ::Google::Protobuf::MessageExts
107
+ extend ::Google::Protobuf::MessageExts::ClassMethods
108
+ end
109
+
110
+ # Request message for `AttachedClusters.ImportAttachedCluster` method.
111
+ # @!attribute [rw] parent
112
+ # @return [::String]
113
+ # Required. The parent location where this
114
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} resource
115
+ # will be created.
116
+ #
117
+ # Location names are formatted as `projects/<project-id>/locations/<region>`.
118
+ #
119
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
120
+ # for more details on Google Cloud resource names.
121
+ # @!attribute [rw] validate_only
122
+ # @return [::Boolean]
123
+ # If set, only validate the request, but do not actually import the cluster.
124
+ # @!attribute [rw] fleet_membership
125
+ # @return [::String]
126
+ # Required. The name of the fleet membership resource to import.
127
+ # @!attribute [rw] platform_version
128
+ # @return [::String]
129
+ # Required. The platform version for the cluster (e.g. `1.19.0-gke.1000`).
130
+ #
131
+ # You can list all supported versions on a given Google Cloud region by
132
+ # calling
133
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedClusters::Client#get_attached_server_config GetAttachedServerConfig}.
134
+ # @!attribute [rw] distribution
135
+ # @return [::String]
136
+ # Required. The Kubernetes distribution of the underlying attached cluster.
137
+ #
138
+ # Supported values: ["eks", "aks"].
139
+ class ImportAttachedClusterRequest
140
+ include ::Google::Protobuf::MessageExts
141
+ extend ::Google::Protobuf::MessageExts::ClassMethods
142
+ end
143
+
144
+ # Request message for `AttachedClusters.UpdateAttachedCluster` method.
145
+ # @!attribute [rw] attached_cluster
146
+ # @return [::Google::Cloud::GkeMultiCloud::V1::AttachedCluster]
147
+ # Required. The
148
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} resource
149
+ # to update.
150
+ # @!attribute [rw] validate_only
151
+ # @return [::Boolean]
152
+ # If set, only validate the request, but do not actually update the cluster.
153
+ # @!attribute [rw] update_mask
154
+ # @return [::Google::Protobuf::FieldMask]
155
+ # Required. Mask of fields to update. At least one path must be supplied in
156
+ # this field. The elements of the repeated paths field can only include these
157
+ # fields from
158
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster}:
159
+ #
160
+ # * `description`.
161
+ # * `annotations`.
162
+ # * `platform_version`.
163
+ # * `authorization.admin_users`.
164
+ # * `logging_config.component_config.enable_components`.
165
+ # * `monitoring_config.managed_prometheus_config.enabled`.
166
+ class UpdateAttachedClusterRequest
167
+ include ::Google::Protobuf::MessageExts
168
+ extend ::Google::Protobuf::MessageExts::ClassMethods
169
+ end
170
+
171
+ # Request message for `AttachedClusters.GetAttachedCluster` method.
172
+ # @!attribute [rw] name
173
+ # @return [::String]
174
+ # Required. The name of the
175
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} resource
176
+ # to describe.
177
+ #
178
+ # `AttachedCluster` names are formatted as
179
+ # `projects/<project-id>/locations/<region>/attachedClusters/<cluster-id>`.
180
+ #
181
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
182
+ # for more details on GCP resource names.
183
+ class GetAttachedClusterRequest
184
+ include ::Google::Protobuf::MessageExts
185
+ extend ::Google::Protobuf::MessageExts::ClassMethods
186
+ end
187
+
188
+ # Request message for `AttachedClusters.ListAttachedClusters` method.
189
+ # @!attribute [rw] parent
190
+ # @return [::String]
191
+ # Required. The parent location which owns this collection of
192
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} resources.
193
+ #
194
+ # Location names are formatted as `projects/<project-id>/locations/<region>`.
195
+ #
196
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
197
+ # for more details on GCP resource names.
198
+ # @!attribute [rw] page_size
199
+ # @return [::Integer]
200
+ # The maximum number of items to return.
201
+ #
202
+ # If not specified, a default value of 50 will be used by the service.
203
+ # Regardless of the pageSize value, the response can include a partial list
204
+ # and a caller should only rely on response's
205
+ # {::Google::Cloud::GkeMultiCloud::V1::ListAttachedClustersResponse#next_page_token nextPageToken}
206
+ # to determine if there are more instances left to be queried.
207
+ # @!attribute [rw] page_token
208
+ # @return [::String]
209
+ # The `nextPageToken` value returned from a previous
210
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedClusters::Client#list_attached_clusters attachedClusters.list}
211
+ # request, if any.
212
+ class ListAttachedClustersRequest
213
+ include ::Google::Protobuf::MessageExts
214
+ extend ::Google::Protobuf::MessageExts::ClassMethods
215
+ end
216
+
217
+ # Response message for `AttachedClusters.ListAttachedClusters` method.
218
+ # @!attribute [rw] attached_clusters
219
+ # @return [::Array<::Google::Cloud::GkeMultiCloud::V1::AttachedCluster>]
220
+ # A list of {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster}
221
+ # resources in the specified GCP project and region region.
222
+ # @!attribute [rw] next_page_token
223
+ # @return [::String]
224
+ # Token to retrieve the next page of results, or empty if there are no more
225
+ # results in the list.
226
+ class ListAttachedClustersResponse
227
+ include ::Google::Protobuf::MessageExts
228
+ extend ::Google::Protobuf::MessageExts::ClassMethods
229
+ end
230
+
231
+ # Request message for `AttachedClusters.DeleteAttachedCluster` method.
232
+ # @!attribute [rw] name
233
+ # @return [::String]
234
+ # Required. The resource name the
235
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} to delete.
236
+ #
237
+ # `AttachedCluster` names are formatted as
238
+ # `projects/<project-id>/locations/<region>/attachedClusters/<cluster-id>`.
239
+ #
240
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
241
+ # for more details on GCP resource names.
242
+ # @!attribute [rw] validate_only
243
+ # @return [::Boolean]
244
+ # If set, only validate the request, but do not actually delete the resource.
245
+ # @!attribute [rw] allow_missing
246
+ # @return [::Boolean]
247
+ # If set to true, and the
248
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} resource
249
+ # is not found, the request will succeed but no action will be taken on the
250
+ # server and a completed {::Google::Longrunning::Operation Operation} will be
251
+ # returned.
252
+ #
253
+ # Useful for idempotent deletion.
254
+ # @!attribute [rw] ignore_errors
255
+ # @return [::Boolean]
256
+ # If set to true, the deletion of
257
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster} resource
258
+ # will succeed even if errors occur during deleting in cluster resources.
259
+ # Using this parameter may result in orphaned resources in the cluster.
260
+ # @!attribute [rw] etag
261
+ # @return [::String]
262
+ # The current etag of the
263
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedCluster AttachedCluster}.
264
+ #
265
+ # Allows clients to perform deletions through optimistic concurrency control.
266
+ #
267
+ # If the provided etag does not match the current etag of the cluster,
268
+ # the request will fail and an ABORTED error will be returned.
269
+ class DeleteAttachedClusterRequest
270
+ include ::Google::Protobuf::MessageExts
271
+ extend ::Google::Protobuf::MessageExts::ClassMethods
272
+ end
273
+
274
+ # GetAttachedServerConfigRequest gets the server config for attached
275
+ # clusters.
276
+ # @!attribute [rw] name
277
+ # @return [::String]
278
+ # Required. The name of the
279
+ # {::Google::Cloud::GkeMultiCloud::V1::AttachedServerConfig AttachedServerConfig}
280
+ # resource to describe.
281
+ #
282
+ # `AttachedServerConfig` names are formatted as
283
+ # `projects/<project-id>/locations/<region>/attachedServerConfig`.
284
+ #
285
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
286
+ # for more details on Google Cloud resource names.
287
+ class GetAttachedServerConfigRequest
288
+ include ::Google::Protobuf::MessageExts
289
+ extend ::Google::Protobuf::MessageExts::ClassMethods
290
+ end
291
+ end
292
+ end
293
+ end
294
+ end
@@ -96,10 +96,16 @@ module Google
96
96
  # Output only. PEM encoded x509 certificate of the cluster root of trust.
97
97
  # @!attribute [rw] fleet
98
98
  # @return [::Google::Cloud::GkeMultiCloud::V1::Fleet]
99
- # Optional. Fleet configuration.
99
+ # Required. Fleet configuration.
100
100
  # @!attribute [rw] logging_config
101
101
  # @return [::Google::Cloud::GkeMultiCloud::V1::LoggingConfig]
102
102
  # Optional. Logging configuration for this cluster.
103
+ # @!attribute [r] errors
104
+ # @return [::Array<::Google::Cloud::GkeMultiCloud::V1::AwsClusterError>]
105
+ # Output only. A set of errors found in the cluster.
106
+ # @!attribute [rw] monitoring_config
107
+ # @return [::Google::Cloud::GkeMultiCloud::V1::MonitoringConfig]
108
+ # Optional. Monitoring configuration for this cluster.
103
109
  class AwsCluster
104
110
  include ::Google::Protobuf::MessageExts
105
111
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -173,8 +179,8 @@ module Google
173
179
  # security groups with the minimum rules needed for a functioning cluster.
174
180
  # @!attribute [rw] iam_instance_profile
175
181
  # @return [::String]
176
- # Required. The name or ARN of the AWS IAM instance profile to assign to each control
177
- # plane replica.
182
+ # Required. The name or ARN of the AWS IAM instance profile to assign to each
183
+ # control plane replica.
178
184
  # @!attribute [rw] root_volume
179
185
  # @return [::Google::Cloud::GkeMultiCloud::V1::AwsVolumeTemplate]
180
186
  # Optional. Configuration related to the root volume provisioned for each
@@ -199,8 +205,8 @@ module Google
199
205
  # Required. The ARN of the AWS KMS key used to encrypt cluster secrets.
200
206
  # @!attribute [rw] tags
201
207
  # @return [::Google::Protobuf::Map{::String => ::String}]
202
- # Optional. A set of AWS resource tags to propagate to all underlying managed AWS
203
- # resources.
208
+ # Optional. A set of AWS resource tags to propagate to all underlying managed
209
+ # AWS resources.
204
210
  #
205
211
  # Specify at most 50 pairs containing alphanumerics, spaces, and symbols
206
212
  # (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to
@@ -235,8 +241,8 @@ module Google
235
241
  # Authentication configuration for the management of AWS resources.
236
242
  # @!attribute [rw] role_arn
237
243
  # @return [::String]
238
- # Required. The Amazon Resource Name (ARN) of the role that the Anthos Multi-Cloud API
239
- # will assume when managing AWS resources on your account.
244
+ # Required. The Amazon Resource Name (ARN) of the role that the Anthos
245
+ # Multi-Cloud API will assume when managing AWS resources on your account.
240
246
  # @!attribute [rw] role_session_name
241
247
  # @return [::String]
242
248
  # Optional. An identifier for the assumed role session.
@@ -293,11 +299,12 @@ module Google
293
299
  # When unspecified, it defaults to GP2 volume.
294
300
  # @!attribute [rw] iops
295
301
  # @return [::Integer]
296
- # Optional. The number of I/O operations per second (IOPS) to provision for GP3 volume.
302
+ # Optional. The number of I/O operations per second (IOPS) to provision for
303
+ # GP3 volume.
297
304
  # @!attribute [rw] kms_key_arn
298
305
  # @return [::String]
299
- # Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK) used to
300
- # encrypt AWS EBS volumes.
306
+ # Optional. The Amazon Resource Name (ARN) of the Customer Managed Key (CMK)
307
+ # used to encrypt AWS EBS volumes.
301
308
  #
302
309
  # If not specified, the default Amazon managed key associated to
303
310
  # the AWS region where this cluster runs will be used.
@@ -333,14 +340,14 @@ module Google
333
340
  # This field cannot be changed after creation.
334
341
  # @!attribute [rw] pod_address_cidr_blocks
335
342
  # @return [::Array<::String>]
336
- # Required. All pods in the cluster are assigned an IPv4 address from these ranges.
337
- # Only a single range is supported.
338
- # This field cannot be changed after creation.
343
+ # Required. All pods in the cluster are assigned an IPv4 address from these
344
+ # ranges. Only a single range is supported. This field cannot be changed
345
+ # after creation.
339
346
  # @!attribute [rw] service_address_cidr_blocks
340
347
  # @return [::Array<::String>]
341
- # Required. All services in the cluster are assigned an IPv4 address from these ranges.
342
- # Only a single range is supported.
343
- # This field cannot be changed after creation.
348
+ # Required. All services in the cluster are assigned an IPv4 address from
349
+ # these ranges. Only a single range is supported. This field cannot be
350
+ # changed after creation.
344
351
  class AwsClusterNetworking
345
352
  include ::Google::Protobuf::MessageExts
346
353
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -358,7 +365,8 @@ module Google
358
365
  # see [Resource Names](https://cloud.google.com/apis/design/resource_names)
359
366
  # @!attribute [rw] version
360
367
  # @return [::String]
361
- # Required. The Kubernetes version to run on this node pool (e.g. `1.19.10-gke.1000`).
368
+ # Required. The Kubernetes version to run on this node pool (e.g.
369
+ # `1.19.10-gke.1000`).
362
370
  #
363
371
  # You can list all supported versions on a given Google Cloud region by
364
372
  # calling
@@ -410,6 +418,9 @@ module Google
410
418
  # @return [::Google::Cloud::GkeMultiCloud::V1::MaxPodsConstraint]
411
419
  # Required. The constraint on the maximum number of pods that can be run
412
420
  # simultaneously on a node in the node pool.
421
+ # @!attribute [r] errors
422
+ # @return [::Array<::Google::Cloud::GkeMultiCloud::V1::AwsNodePoolError>]
423
+ # Output only. A set of errors found in the node pool.
413
424
  class AwsNodePool
414
425
  include ::Google::Protobuf::MessageExts
415
426
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -474,13 +485,14 @@ module Google
474
485
  # "mass": "1.3kg", "count": "3" }.
475
486
  # @!attribute [rw] tags
476
487
  # @return [::Google::Protobuf::Map{::String => ::String}]
477
- # Optional. Key/value metadata to assign to each underlying AWS resource. Specify at
478
- # most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/).
479
- # Keys can be up to 127 Unicode characters.
480
- # Values can be up to 255 Unicode characters.
488
+ # Optional. Key/value metadata to assign to each underlying AWS resource.
489
+ # Specify at most 50 pairs containing alphanumerics, spaces, and symbols
490
+ # (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to
491
+ # 255 Unicode characters.
481
492
  # @!attribute [rw] iam_instance_profile
482
493
  # @return [::String]
483
- # Required. The name or ARN of the AWS IAM role assigned to nodes in the pool.
494
+ # Required. The name or ARN of the AWS IAM role assigned to nodes in the
495
+ # pool.
484
496
  # @!attribute [rw] image_type
485
497
  # @return [::String]
486
498
  # Optional. The OS image type to use on node pool instances.
@@ -493,9 +505,9 @@ module Google
493
505
  # Optional. The SSH configuration.
494
506
  # @!attribute [rw] security_group_ids
495
507
  # @return [::Array<::String>]
496
- # Optional. The IDs of additional security groups to add to nodes in this pool. The
497
- # manager will automatically create security groups with minimum rules
498
- # needed for a functioning cluster.
508
+ # Optional. The IDs of additional security groups to add to nodes in this
509
+ # pool. The manager will automatically create security groups with minimum
510
+ # rules needed for a functioning cluster.
499
511
  # @!attribute [rw] proxy_config
500
512
  # @return [::Google::Cloud::GkeMultiCloud::V1::AwsProxyConfig]
501
513
  # Optional. Proxy configuration for outbound HTTP(S) traffic.
@@ -506,6 +518,12 @@ module Google
506
518
  # @return [::Google::Cloud::GkeMultiCloud::V1::AwsInstancePlacement]
507
519
  # Optional. Placement related info for this node.
508
520
  # When unspecified, the VPC's default tenancy will be used.
521
+ # @!attribute [rw] autoscaling_metrics_collection
522
+ # @return [::Google::Cloud::GkeMultiCloud::V1::AwsAutoscalingGroupMetricsCollection]
523
+ # Optional. Configuration related to CloudWatch metrics collection on the
524
+ # Auto Scaling group of the node pool.
525
+ #
526
+ # When unspecified, metrics collection is disabled.
509
527
  class AwsNodeConfig
510
528
  include ::Google::Protobuf::MessageExts
511
529
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -533,12 +551,12 @@ module Google
533
551
  # to adjust the size of the node pool to the current cluster usage.
534
552
  # @!attribute [rw] min_node_count
535
553
  # @return [::Integer]
536
- # Required. Minimum number of nodes in the node pool. Must be greater than or equal to
537
- # 1 and less than or equal to max_node_count.
554
+ # Required. Minimum number of nodes in the node pool. Must be greater than or
555
+ # equal to 1 and less than or equal to max_node_count.
538
556
  # @!attribute [rw] max_node_count
539
557
  # @return [::Integer]
540
- # Required. Maximum number of nodes in the node pool. Must be greater than or equal to
541
- # min_node_count and less than or equal to 50.
558
+ # Required. Maximum number of nodes in the node pool. Must be greater than or
559
+ # equal to min_node_count and less than or equal to 50.
542
560
  class AwsNodePoolAutoscaling
543
561
  include ::Google::Protobuf::MessageExts
544
562
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -582,6 +600,10 @@ module Google
582
600
  # @return [::String]
583
601
  # The ARN of the AWS Secret Manager secret that contains the HTTP(S) proxy
584
602
  # configuration.
603
+ #
604
+ # The secret must be a JSON encoded proxy configuration
605
+ # as described in
606
+ # https://cloud.google.com/anthos/clusters/docs/multi-cloud/aws/how-to/use-a-proxy#create_a_proxy_configuration_file
585
607
  # @!attribute [rw] secret_version
586
608
  # @return [::String]
587
609
  # The version string of the AWS Secret Manager secret that contains the
@@ -627,6 +649,41 @@ module Google
627
649
  HOST = 3
628
650
  end
629
651
  end
652
+
653
+ # Configuration related to CloudWatch metrics collection in an AWS
654
+ # Auto Scaling group.
655
+ # @!attribute [rw] granularity
656
+ # @return [::String]
657
+ # Required. The frequency at which EC2 Auto Scaling sends aggregated data to
658
+ # AWS CloudWatch. The only valid value is "1Minute".
659
+ # @!attribute [rw] metrics
660
+ # @return [::Array<::String>]
661
+ # Optional. The metrics to enable. For a list of valid metrics, see
662
+ # https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_EnableMetricsCollection.html.
663
+ # If you specify Granularity and don't specify any metrics, all metrics are
664
+ # enabled.
665
+ class AwsAutoscalingGroupMetricsCollection
666
+ include ::Google::Protobuf::MessageExts
667
+ extend ::Google::Protobuf::MessageExts::ClassMethods
668
+ end
669
+
670
+ # AwsClusterError describes errors found on AWS clusters.
671
+ # @!attribute [rw] message
672
+ # @return [::String]
673
+ # Human-friendly description of the error.
674
+ class AwsClusterError
675
+ include ::Google::Protobuf::MessageExts
676
+ extend ::Google::Protobuf::MessageExts::ClassMethods
677
+ end
678
+
679
+ # AwsNodePoolError describes errors found on AWS node pools.
680
+ # @!attribute [rw] message
681
+ # @return [::String]
682
+ # Human-friendly description of the error.
683
+ class AwsNodePoolError
684
+ include ::Google::Protobuf::MessageExts
685
+ extend ::Google::Protobuf::MessageExts::ClassMethods
686
+ end
630
687
  end
631
688
  end
632
689
  end