google-cloud-gke_multi_cloud-v1 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +149 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +144 -0
  6. data/lib/google/cloud/gke_multi_cloud/v1/aws_clusters/client.rb +1729 -0
  7. data/lib/google/cloud/gke_multi_cloud/v1/aws_clusters/credentials.rb +47 -0
  8. data/lib/google/cloud/gke_multi_cloud/v1/aws_clusters/operations.rb +767 -0
  9. data/lib/google/cloud/gke_multi_cloud/v1/aws_clusters/paths.rb +107 -0
  10. data/lib/google/cloud/gke_multi_cloud/v1/aws_clusters.rb +51 -0
  11. data/lib/google/cloud/gke_multi_cloud/v1/azure_clusters/client.rb +2184 -0
  12. data/lib/google/cloud/gke_multi_cloud/v1/azure_clusters/credentials.rb +47 -0
  13. data/lib/google/cloud/gke_multi_cloud/v1/azure_clusters/operations.rb +767 -0
  14. data/lib/google/cloud/gke_multi_cloud/v1/azure_clusters/paths.rb +126 -0
  15. data/lib/google/cloud/gke_multi_cloud/v1/azure_clusters.rb +51 -0
  16. data/lib/google/cloud/gke_multi_cloud/v1/version.rb +28 -0
  17. data/lib/google/cloud/gke_multi_cloud/v1.rb +41 -0
  18. data/lib/google/cloud/gkemulticloud/v1/aws_resources_pb.rb +187 -0
  19. data/lib/google/cloud/gkemulticloud/v1/aws_service_pb.rb +110 -0
  20. data/lib/google/cloud/gkemulticloud/v1/aws_service_services_pb.rb +90 -0
  21. data/lib/google/cloud/gkemulticloud/v1/azure_resources_pb.rb +183 -0
  22. data/lib/google/cloud/gkemulticloud/v1/azure_service_pb.rb +138 -0
  23. data/lib/google/cloud/gkemulticloud/v1/azure_service_services_pb.rb +115 -0
  24. data/lib/google/cloud/gkemulticloud/v1/common_resources_pb.rb +71 -0
  25. data/lib/google-cloud-gke_multi_cloud-v1.rb +21 -0
  26. data/proto_docs/README.md +4 -0
  27. data/proto_docs/google/api/field_behavior.rb +71 -0
  28. data/proto_docs/google/api/resource.rb +222 -0
  29. data/proto_docs/google/cloud/gkemulticloud/v1/aws_resources.rb +633 -0
  30. data/proto_docs/google/cloud/gkemulticloud/v1/aws_service.rb +383 -0
  31. data/proto_docs/google/cloud/gkemulticloud/v1/azure_resources.rb +716 -0
  32. data/proto_docs/google/cloud/gkemulticloud/v1/azure_service.rb +473 -0
  33. data/proto_docs/google/cloud/gkemulticloud/v1/common_resources.rb +164 -0
  34. data/proto_docs/google/longrunning/operations.rb +164 -0
  35. data/proto_docs/google/protobuf/any.rb +141 -0
  36. data/proto_docs/google/protobuf/duration.rb +98 -0
  37. data/proto_docs/google/protobuf/empty.rb +36 -0
  38. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  39. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  40. data/proto_docs/google/rpc/status.rb +46 -0
  41. metadata +232 -0
@@ -0,0 +1,383 @@
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 `AwsClusters.CreateAwsCluster` method.
25
+ # @!attribute [rw] parent
26
+ # @return [::String]
27
+ # Required. The parent location where this {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster} resource
28
+ # will be created.
29
+ #
30
+ # Location names are formatted as `projects/<project-id>/locations/<region>`.
31
+ #
32
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
33
+ # for more details on Google Cloud resource names.
34
+ # @!attribute [rw] aws_cluster
35
+ # @return [::Google::Cloud::GkeMultiCloud::V1::AwsCluster]
36
+ # Required. The specification of the {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster} to create.
37
+ # @!attribute [rw] aws_cluster_id
38
+ # @return [::String]
39
+ # Required. A client provided ID the resource. Must be unique within the parent
40
+ # resource.
41
+ #
42
+ # The provided ID will be part of the {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster}
43
+ # resource name formatted as
44
+ # `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`.
45
+ #
46
+ # Valid characters are `/[a-z][0-9]-/`. Cannot be longer than 40 characters.
47
+ # @!attribute [rw] validate_only
48
+ # @return [::Boolean]
49
+ # If set, only validate the request, but do not actually create the cluster.
50
+ class CreateAwsClusterRequest
51
+ include ::Google::Protobuf::MessageExts
52
+ extend ::Google::Protobuf::MessageExts::ClassMethods
53
+ end
54
+
55
+ # Request message for `AwsClusters.UpdateAwsCluster` method.
56
+ # @!attribute [rw] aws_cluster
57
+ # @return [::Google::Cloud::GkeMultiCloud::V1::AwsCluster]
58
+ # Required. The {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster} resource to update.
59
+ # @!attribute [rw] validate_only
60
+ # @return [::Boolean]
61
+ # If set, only validate the request, but do not actually update the cluster.
62
+ # @!attribute [rw] update_mask
63
+ # @return [::Google::Protobuf::FieldMask]
64
+ # Required. Mask of fields to update. At least one path must be supplied in
65
+ # this field. The elements of the repeated paths field can only include these
66
+ # fields from {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster}:
67
+ #
68
+ # * `description`.
69
+ # * `annotations`.
70
+ # * `control_plane.version`.
71
+ # * `authorization.admin_users`.
72
+ # * `control_plane.aws_services_authentication.role_arn`.
73
+ # * `control_plane.aws_services_authentication.role_session_name`.
74
+ # * `control_plane.config_encryption.kms_key_arn`.
75
+ # * `control_plane.instance_type`.
76
+ # * `control_plane.security_group_ids`.
77
+ # * `control_plane.proxy_config`.
78
+ # * `control_plane.proxy_config.secret_arn`.
79
+ # * `control_plane.proxy_config.secret_version`.
80
+ # * `control_plane.root_volume.iops`.
81
+ # * `control_plane.root_volume.kms_key_arn`.
82
+ # * `control_plane.root_volume.volume_type`.
83
+ # * `control_plane.root_volume.size_gib`.
84
+ # * `control_plane.ssh_config`.
85
+ # * `control_plane.ssh_config.ec2_key_pair`.
86
+ # * `control_plane.instance_placement.tenancy`.
87
+ # * `logging_config`.
88
+ class UpdateAwsClusterRequest
89
+ include ::Google::Protobuf::MessageExts
90
+ extend ::Google::Protobuf::MessageExts::ClassMethods
91
+ end
92
+
93
+ # Request message for `AwsClusters.GetAwsCluster` method.
94
+ # @!attribute [rw] name
95
+ # @return [::String]
96
+ # Required. The name of the {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster} resource to describe.
97
+ #
98
+ # `AwsCluster` names are formatted as
99
+ # `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`.
100
+ #
101
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
102
+ # for more details on GCP resource names.
103
+ class GetAwsClusterRequest
104
+ include ::Google::Protobuf::MessageExts
105
+ extend ::Google::Protobuf::MessageExts::ClassMethods
106
+ end
107
+
108
+ # Request message for `AwsClusters.ListAwsClusters` method.
109
+ # @!attribute [rw] parent
110
+ # @return [::String]
111
+ # Required. The parent location which owns this collection of
112
+ # {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster} resources.
113
+ #
114
+ # Location names are formatted as `projects/<project-id>/locations/<region>`.
115
+ #
116
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
117
+ # for more details on GCP resource names.
118
+ # @!attribute [rw] page_size
119
+ # @return [::Integer]
120
+ # The maximum number of items to return.
121
+ #
122
+ # If not specified, a default value of 50 will be used by the service.
123
+ # Regardless of the pageSize value, the response can include a partial list
124
+ # and a caller should only rely on response's
125
+ # {::Google::Cloud::GkeMultiCloud::V1::ListAwsClustersResponse#next_page_token nextPageToken} to determine if
126
+ # there are more instances left to be queried.
127
+ # @!attribute [rw] page_token
128
+ # @return [::String]
129
+ # The `nextPageToken` value returned from a previous
130
+ # {::Google::Cloud::GkeMultiCloud::V1::AwsClusters::Client#list_aws_clusters awsClusters.list} request, if any.
131
+ class ListAwsClustersRequest
132
+ include ::Google::Protobuf::MessageExts
133
+ extend ::Google::Protobuf::MessageExts::ClassMethods
134
+ end
135
+
136
+ # Response message for `AwsClusters.ListAwsClusters` method.
137
+ # @!attribute [rw] aws_clusters
138
+ # @return [::Array<::Google::Cloud::GkeMultiCloud::V1::AwsCluster>]
139
+ # A list of {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster} resources in the specified GCP
140
+ # project and region region.
141
+ # @!attribute [rw] next_page_token
142
+ # @return [::String]
143
+ # Token to retrieve the next page of results, or empty if there are no more
144
+ # results in the list.
145
+ class ListAwsClustersResponse
146
+ include ::Google::Protobuf::MessageExts
147
+ extend ::Google::Protobuf::MessageExts::ClassMethods
148
+ end
149
+
150
+ # Request message for `AwsClusters.DeleteAwsCluster` method.
151
+ # @!attribute [rw] name
152
+ # @return [::String]
153
+ # Required. The resource name the {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster} to delete.
154
+ #
155
+ # `AwsCluster` names are formatted as
156
+ # `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`.
157
+ #
158
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
159
+ # for more details on GCP resource names.
160
+ # @!attribute [rw] validate_only
161
+ # @return [::Boolean]
162
+ # If set, only validate the request, but do not actually delete the resource.
163
+ # @!attribute [rw] allow_missing
164
+ # @return [::Boolean]
165
+ # If set to true, and the {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster} resource is not found,
166
+ # the request will succeed but no action will be taken on the server and a
167
+ # completed {::Google::Longrunning::Operation Operation} will be returned.
168
+ #
169
+ # Useful for idempotent deletion.
170
+ # @!attribute [rw] etag
171
+ # @return [::String]
172
+ # The current etag of the {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster}.
173
+ #
174
+ # Allows clients to perform deletions through optimistic concurrency control.
175
+ #
176
+ # If the provided etag does not match the current etag of the cluster,
177
+ # the request will fail and an ABORTED error will be returned.
178
+ class DeleteAwsClusterRequest
179
+ include ::Google::Protobuf::MessageExts
180
+ extend ::Google::Protobuf::MessageExts::ClassMethods
181
+ end
182
+
183
+ # Response message for `AwsClusters.CreateAwsNodePool` method.
184
+ # @!attribute [rw] parent
185
+ # @return [::String]
186
+ # Required. The {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster} resource where this node pool will be created.
187
+ #
188
+ # `AwsCluster` names are formatted as
189
+ # `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`.
190
+ #
191
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
192
+ # for more details on Google Cloud resource names.
193
+ # @!attribute [rw] aws_node_pool
194
+ # @return [::Google::Cloud::GkeMultiCloud::V1::AwsNodePool]
195
+ # Required. The specification of the {::Google::Cloud::GkeMultiCloud::V1::AwsNodePool AwsNodePool} to create.
196
+ # @!attribute [rw] aws_node_pool_id
197
+ # @return [::String]
198
+ # Required. A client provided ID the resource. Must be unique within the parent
199
+ # resource.
200
+ #
201
+ # The provided ID will be part of the {::Google::Cloud::GkeMultiCloud::V1::AwsNodePool AwsNodePool}
202
+ # resource name formatted as
203
+ # `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>`.
204
+ #
205
+ # Valid characters are `/[a-z][0-9]-/`. Cannot be longer than 40 characters.
206
+ # @!attribute [rw] validate_only
207
+ # @return [::Boolean]
208
+ # If set, only validate the request, but do not actually create the node
209
+ # pool.
210
+ class CreateAwsNodePoolRequest
211
+ include ::Google::Protobuf::MessageExts
212
+ extend ::Google::Protobuf::MessageExts::ClassMethods
213
+ end
214
+
215
+ # Request message for `AwsClusters.UpdateAwsNodePool` method.
216
+ # @!attribute [rw] aws_node_pool
217
+ # @return [::Google::Cloud::GkeMultiCloud::V1::AwsNodePool]
218
+ # Required. The {::Google::Cloud::GkeMultiCloud::V1::AwsNodePool AwsNodePool} resource to update.
219
+ # @!attribute [rw] validate_only
220
+ # @return [::Boolean]
221
+ # If set, only validate the request, but don't actually update the node pool.
222
+ # @!attribute [rw] update_mask
223
+ # @return [::Google::Protobuf::FieldMask]
224
+ # Required. Mask of fields to update. At least one path must be supplied in
225
+ # this field. The elements of the repeated paths field can only include these
226
+ # fields from {::Google::Cloud::GkeMultiCloud::V1::AwsNodePool AwsNodePool}:
227
+ #
228
+ # * `annotations`.
229
+ # * `version`.
230
+ # * `autoscaling.min_node_count`.
231
+ # * `autoscaling.max_node_count`.
232
+ # * `config.config_encryption.kms_key_arn`.
233
+ # * `config.security_group_ids`.
234
+ # * `config.root_volume.iops`.
235
+ # * `config.root_volume.kms_key_arn`.
236
+ # * `config.root_volume.volume_type`.
237
+ # * `config.root_volume.size_gib`.
238
+ # * `config.proxy_config`.
239
+ # * `config.proxy_config.secret_arn`.
240
+ # * `config.proxy_config.secret_version`.
241
+ # * `config.ssh_config`.
242
+ # * `config.ssh_config.ec2_key_pair`.
243
+ class UpdateAwsNodePoolRequest
244
+ include ::Google::Protobuf::MessageExts
245
+ extend ::Google::Protobuf::MessageExts::ClassMethods
246
+ end
247
+
248
+ # Request message for `AwsClusters.GetAwsNodePool` method.
249
+ # @!attribute [rw] name
250
+ # @return [::String]
251
+ # Required. The name of the {::Google::Cloud::GkeMultiCloud::V1::AwsNodePool AwsNodePool} resource to describe.
252
+ #
253
+ # `AwsNodePool` names are formatted as
254
+ # `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>`.
255
+ #
256
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
257
+ # for more details on Google Cloud resource names.
258
+ class GetAwsNodePoolRequest
259
+ include ::Google::Protobuf::MessageExts
260
+ extend ::Google::Protobuf::MessageExts::ClassMethods
261
+ end
262
+
263
+ # Request message for `AwsClusters.ListAwsNodePools` method.
264
+ # @!attribute [rw] parent
265
+ # @return [::String]
266
+ # Required. The parent `AwsCluster` which owns this collection of
267
+ # {::Google::Cloud::GkeMultiCloud::V1::AwsNodePool AwsNodePool} resources.
268
+ #
269
+ # `AwsCluster` names are formatted as
270
+ # `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`.
271
+ #
272
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
273
+ # for more details on Google Cloud resource names.
274
+ # @!attribute [rw] page_size
275
+ # @return [::Integer]
276
+ # The maximum number of items to return.
277
+ #
278
+ # If not specified, a default value of 50 will be used by the service.
279
+ # Regardless of the pageSize value, the response can include a partial list
280
+ # and a caller should only rely on response's
281
+ # {::Google::Cloud::GkeMultiCloud::V1::ListAwsNodePoolsResponse#next_page_token nextPageToken} to determine if
282
+ # there are more instances left to be queried.
283
+ # @!attribute [rw] page_token
284
+ # @return [::String]
285
+ # The `nextPageToken` value returned from a previous
286
+ # {::Google::Cloud::GkeMultiCloud::V1::AwsClusters::Client#list_aws_node_pools awsNodePools.list} request, if any.
287
+ class ListAwsNodePoolsRequest
288
+ include ::Google::Protobuf::MessageExts
289
+ extend ::Google::Protobuf::MessageExts::ClassMethods
290
+ end
291
+
292
+ # Response message for `AwsClusters.ListAwsNodePools` method.
293
+ # @!attribute [rw] aws_node_pools
294
+ # @return [::Array<::Google::Cloud::GkeMultiCloud::V1::AwsNodePool>]
295
+ # A list of {::Google::Cloud::GkeMultiCloud::V1::AwsNodePool AwsNodePool} resources in the specified `AwsCluster`.
296
+ # @!attribute [rw] next_page_token
297
+ # @return [::String]
298
+ # Token to retrieve the next page of results, or empty if there are no more
299
+ # results in the list.
300
+ class ListAwsNodePoolsResponse
301
+ include ::Google::Protobuf::MessageExts
302
+ extend ::Google::Protobuf::MessageExts::ClassMethods
303
+ end
304
+
305
+ # Request message for `AwsClusters.DeleteNodePool` method.
306
+ # @!attribute [rw] name
307
+ # @return [::String]
308
+ # Required. The resource name the {::Google::Cloud::GkeMultiCloud::V1::AwsNodePool AwsNodePool} to delete.
309
+ #
310
+ # `AwsNodePool` names are formatted as
311
+ # `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>/awsNodePools/<node-pool-id>`.
312
+ #
313
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
314
+ # for more details on Google Cloud resource names.
315
+ # @!attribute [rw] validate_only
316
+ # @return [::Boolean]
317
+ # If set, only validate the request, but do not actually delete the node
318
+ # pool.
319
+ # @!attribute [rw] allow_missing
320
+ # @return [::Boolean]
321
+ # If set to true, and the {::Google::Cloud::GkeMultiCloud::V1::AwsNodePool AwsNodePool} resource is not found,
322
+ # the request will succeed but no action will be taken on the server and a
323
+ # completed {::Google::Longrunning::Operation Operation} will be returned.
324
+ #
325
+ # Useful for idempotent deletion.
326
+ # @!attribute [rw] etag
327
+ # @return [::String]
328
+ # The current ETag of the {::Google::Cloud::GkeMultiCloud::V1::AwsNodePool AwsNodePool}.
329
+ #
330
+ # Allows clients to perform deletions through optimistic concurrency control.
331
+ #
332
+ # If the provided ETag does not match the current etag of the node pool,
333
+ # the request will fail and an ABORTED error will be returned.
334
+ class DeleteAwsNodePoolRequest
335
+ include ::Google::Protobuf::MessageExts
336
+ extend ::Google::Protobuf::MessageExts::ClassMethods
337
+ end
338
+
339
+ # GetAwsServerConfigRequest gets the server config of GKE cluster on AWS.
340
+ # @!attribute [rw] name
341
+ # @return [::String]
342
+ # Required. The name of the {::Google::Cloud::GkeMultiCloud::V1::AwsServerConfig AwsServerConfig} resource to describe.
343
+ #
344
+ # `AwsServerConfig` names are formatted as
345
+ # `projects/<project-id>/locations/<region>/awsServerConfig`.
346
+ #
347
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
348
+ # for more details on Google Cloud resource names.
349
+ class GetAwsServerConfigRequest
350
+ include ::Google::Protobuf::MessageExts
351
+ extend ::Google::Protobuf::MessageExts::ClassMethods
352
+ end
353
+
354
+ # Request message for `AwsClusters.GenerateAwsAccessToken` method.
355
+ # @!attribute [rw] aws_cluster
356
+ # @return [::String]
357
+ # Required. The name of the {::Google::Cloud::GkeMultiCloud::V1::AwsCluster AwsCluster} resource to authenticate to.
358
+ #
359
+ # `AwsCluster` names are formatted as
360
+ # `projects/<project-id>/locations/<region>/awsClusters/<cluster-id>`.
361
+ #
362
+ # See [Resource Names](https://cloud.google.com/apis/design/resource_names)
363
+ # for more details on Google Cloud resource names.
364
+ class GenerateAwsAccessTokenRequest
365
+ include ::Google::Protobuf::MessageExts
366
+ extend ::Google::Protobuf::MessageExts::ClassMethods
367
+ end
368
+
369
+ # Response message for `AwsClusters.GenerateAwsAccessToken` method.
370
+ # @!attribute [r] access_token
371
+ # @return [::String]
372
+ # Output only. Access token to authenticate to k8s api-server.
373
+ # @!attribute [r] expiration_time
374
+ # @return [::Google::Protobuf::Timestamp]
375
+ # Output only. Timestamp at which the token will expire.
376
+ class GenerateAwsAccessTokenResponse
377
+ include ::Google::Protobuf::MessageExts
378
+ extend ::Google::Protobuf::MessageExts::ClassMethods
379
+ end
380
+ end
381
+ end
382
+ end
383
+ end