google-cloud-gke_multi_cloud-v1 0.1.0 → 0.3.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 (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