google-apis-gkehub_v1beta1 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,742 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/core/base_service'
16
+ require 'google/apis/core/json_representation'
17
+ require 'google/apis/core/hashable'
18
+ require 'google/apis/errors'
19
+
20
+ module Google
21
+ module Apis
22
+ module GkehubV1beta1
23
+ # GKE Hub
24
+ #
25
+ #
26
+ #
27
+ # @example
28
+ # require 'google/apis/gkehub_v1beta1'
29
+ #
30
+ # Gkehub = Google::Apis::GkehubV1beta1 # Alias the module
31
+ # service = Gkehub::GKEHubService.new
32
+ #
33
+ # @see https://cloud.google.com/anthos/multicluster-management/connect/registering-a-cluster
34
+ class GKEHubService < Google::Apis::Core::BaseService
35
+ # @return [String]
36
+ # API key. Your API key identifies your project and provides you with API access,
37
+ # quota, and reports. Required unless you provide an OAuth 2.0 token.
38
+ attr_accessor :key
39
+
40
+ # @return [String]
41
+ # Available to use for quota purposes for server-side applications. Can be any
42
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
43
+ attr_accessor :quota_user
44
+
45
+ def initialize
46
+ super('https://gkehub.googleapis.com/', '',
47
+ client_name: 'google-apis-gkehub_v1beta1',
48
+ client_version: Google::Apis::GkehubV1beta1::GEM_VERSION)
49
+ @batch_path = 'batch'
50
+ end
51
+
52
+ # Gets information about a location.
53
+ # @param [String] name
54
+ # Resource name for the location.
55
+ # @param [String] fields
56
+ # Selector specifying which fields to include in a partial response.
57
+ # @param [String] quota_user
58
+ # Available to use for quota purposes for server-side applications. Can be any
59
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
60
+ # @param [Google::Apis::RequestOptions] options
61
+ # Request-specific options
62
+ #
63
+ # @yield [result, err] Result & error if block supplied
64
+ # @yieldparam result [Google::Apis::GkehubV1beta1::Location] parsed result object
65
+ # @yieldparam err [StandardError] error object if request failed
66
+ #
67
+ # @return [Google::Apis::GkehubV1beta1::Location]
68
+ #
69
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
70
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
71
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
72
+ def get_project_location(name, fields: nil, quota_user: nil, options: nil, &block)
73
+ command = make_simple_command(:get, 'v1beta1/{+name}', options)
74
+ command.response_representation = Google::Apis::GkehubV1beta1::Location::Representation
75
+ command.response_class = Google::Apis::GkehubV1beta1::Location
76
+ command.params['name'] = name unless name.nil?
77
+ command.query['fields'] = fields unless fields.nil?
78
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
79
+ execute_or_queue_command(command, &block)
80
+ end
81
+
82
+ # Lists information about the supported locations for this service.
83
+ # @param [String] name
84
+ # The resource that owns the locations collection, if applicable.
85
+ # @param [String] filter
86
+ # A filter to narrow down results to a preferred subset. The filtering language
87
+ # accepts strings like "displayName=tokyo", and is documented in more detail in [
88
+ # AIP-160](https://google.aip.dev/160).
89
+ # @param [Fixnum] page_size
90
+ # The maximum number of results to return. If not set, the service will select a
91
+ # default.
92
+ # @param [String] page_token
93
+ # A page token received from the `next_page_token` field in the response. Send
94
+ # that page token to receive the subsequent page.
95
+ # @param [String] fields
96
+ # Selector specifying which fields to include in a partial response.
97
+ # @param [String] quota_user
98
+ # Available to use for quota purposes for server-side applications. Can be any
99
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
100
+ # @param [Google::Apis::RequestOptions] options
101
+ # Request-specific options
102
+ #
103
+ # @yield [result, err] Result & error if block supplied
104
+ # @yieldparam result [Google::Apis::GkehubV1beta1::ListLocationsResponse] parsed result object
105
+ # @yieldparam err [StandardError] error object if request failed
106
+ #
107
+ # @return [Google::Apis::GkehubV1beta1::ListLocationsResponse]
108
+ #
109
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
110
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
111
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
112
+ def list_project_locations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
113
+ command = make_simple_command(:get, 'v1beta1/{+name}/locations', options)
114
+ command.response_representation = Google::Apis::GkehubV1beta1::ListLocationsResponse::Representation
115
+ command.response_class = Google::Apis::GkehubV1beta1::ListLocationsResponse
116
+ command.params['name'] = name unless name.nil?
117
+ command.query['filter'] = filter unless filter.nil?
118
+ command.query['pageSize'] = page_size unless page_size.nil?
119
+ command.query['pageToken'] = page_token unless page_token.nil?
120
+ command.query['fields'] = fields unless fields.nil?
121
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
122
+ execute_or_queue_command(command, &block)
123
+ end
124
+
125
+ # Adds a new Membership.
126
+ # @param [String] parent
127
+ # Required. The parent (project and location) where the Memberships will be
128
+ # created. Specified in the format `projects/*/locations/*`.
129
+ # @param [Google::Apis::GkehubV1beta1::Membership] membership_object
130
+ # @param [String] membership_id
131
+ # Required. Client chosen ID for the membership. `membership_id` must be a valid
132
+ # RFC 1123 compliant DNS label: 1. At most 63 characters in length 2. It must
133
+ # consist of lower case alphanumeric characters or `-` 3. It must start and end
134
+ # with an alphanumeric character Which can be expressed as the regex: `[a-z0-9]([
135
+ # -a-z0-9]*[a-z0-9])?`, with a maximum length of 63 characters.
136
+ # @param [String] fields
137
+ # Selector specifying which fields to include in a partial response.
138
+ # @param [String] quota_user
139
+ # Available to use for quota purposes for server-side applications. Can be any
140
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
141
+ # @param [Google::Apis::RequestOptions] options
142
+ # Request-specific options
143
+ #
144
+ # @yield [result, err] Result & error if block supplied
145
+ # @yieldparam result [Google::Apis::GkehubV1beta1::Operation] parsed result object
146
+ # @yieldparam err [StandardError] error object if request failed
147
+ #
148
+ # @return [Google::Apis::GkehubV1beta1::Operation]
149
+ #
150
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
151
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
152
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
153
+ def create_project_location_membership(parent, membership_object = nil, membership_id: nil, fields: nil, quota_user: nil, options: nil, &block)
154
+ command = make_simple_command(:post, 'v1beta1/{+parent}/memberships', options)
155
+ command.request_representation = Google::Apis::GkehubV1beta1::Membership::Representation
156
+ command.request_object = membership_object
157
+ command.response_representation = Google::Apis::GkehubV1beta1::Operation::Representation
158
+ command.response_class = Google::Apis::GkehubV1beta1::Operation
159
+ command.params['parent'] = parent unless parent.nil?
160
+ command.query['membershipId'] = membership_id unless membership_id.nil?
161
+ command.query['fields'] = fields unless fields.nil?
162
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
163
+ execute_or_queue_command(command, &block)
164
+ end
165
+
166
+ # Removes a Membership.
167
+ # @param [String] name
168
+ # Required. The Membership resource name in the format `projects/*/locations/*/
169
+ # memberships/*`.
170
+ # @param [String] fields
171
+ # Selector specifying which fields to include in a partial response.
172
+ # @param [String] quota_user
173
+ # Available to use for quota purposes for server-side applications. Can be any
174
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
175
+ # @param [Google::Apis::RequestOptions] options
176
+ # Request-specific options
177
+ #
178
+ # @yield [result, err] Result & error if block supplied
179
+ # @yieldparam result [Google::Apis::GkehubV1beta1::Operation] parsed result object
180
+ # @yieldparam err [StandardError] error object if request failed
181
+ #
182
+ # @return [Google::Apis::GkehubV1beta1::Operation]
183
+ #
184
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
185
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
186
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
187
+ def delete_project_location_membership(name, fields: nil, quota_user: nil, options: nil, &block)
188
+ command = make_simple_command(:delete, 'v1beta1/{+name}', options)
189
+ command.response_representation = Google::Apis::GkehubV1beta1::Operation::Representation
190
+ command.response_class = Google::Apis::GkehubV1beta1::Operation
191
+ command.params['name'] = name unless name.nil?
192
+ command.query['fields'] = fields unless fields.nil?
193
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
194
+ execute_or_queue_command(command, &block)
195
+ end
196
+
197
+ # Generates the manifest for deployment of the GKE connect agent.
198
+ # @param [String] name
199
+ # Required. The Membership resource name the Agent will associate with, in the
200
+ # format `projects/*/locations/*/memberships/*`.
201
+ # @param [String] connect_agent_name
202
+ # Do not set.
203
+ # @param [String] connect_agent_namespace
204
+ # Optional. Namespace for GKE Connect agent resources. Defaults to `gke-connect`.
205
+ # The Connect Agent is authorized automatically when run in the default
206
+ # namespace. Otherwise, explicit authorization must be granted with an
207
+ # additional IAM binding.
208
+ # @param [String] connect_agent_proxy
209
+ # Optional. URI of a proxy if connectivity from the agent to gkeconnect.
210
+ # googleapis.com requires the use of a proxy. Format must be in the form `http(s)
211
+ # ://`proxy_address``, depending on the HTTP/HTTPS protocol supported by the
212
+ # proxy. This will direct the connect agent's outbound traffic through a HTTP(S)
213
+ # proxy.
214
+ # @param [String] image_pull_secret_content
215
+ # Optional. The image pull secret content for the registry, if not public.
216
+ # @param [Boolean] is_upgrade
217
+ # Optional. If true, generate the resources for upgrade only. Some resources
218
+ # generated only for installation (e.g. secrets) will be excluded.
219
+ # @param [String] registry
220
+ # Optional. The registry to fetch the connect agent image from. Defaults to gcr.
221
+ # io/gkeconnect.
222
+ # @param [String] version
223
+ # Optional. The Connect agent version to use. Defaults to the most current
224
+ # version.
225
+ # @param [String] fields
226
+ # Selector specifying which fields to include in a partial response.
227
+ # @param [String] quota_user
228
+ # Available to use for quota purposes for server-side applications. Can be any
229
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
230
+ # @param [Google::Apis::RequestOptions] options
231
+ # Request-specific options
232
+ #
233
+ # @yield [result, err] Result & error if block supplied
234
+ # @yieldparam result [Google::Apis::GkehubV1beta1::GenerateConnectManifestResponse] parsed result object
235
+ # @yieldparam err [StandardError] error object if request failed
236
+ #
237
+ # @return [Google::Apis::GkehubV1beta1::GenerateConnectManifestResponse]
238
+ #
239
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
240
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
241
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
242
+ def generate_project_location_membership_connect_manifest(name, connect_agent_name: nil, connect_agent_namespace: nil, connect_agent_proxy: nil, image_pull_secret_content: nil, is_upgrade: nil, registry: nil, version: nil, fields: nil, quota_user: nil, options: nil, &block)
243
+ command = make_simple_command(:get, 'v1beta1/{+name}:generateConnectManifest', options)
244
+ command.response_representation = Google::Apis::GkehubV1beta1::GenerateConnectManifestResponse::Representation
245
+ command.response_class = Google::Apis::GkehubV1beta1::GenerateConnectManifestResponse
246
+ command.params['name'] = name unless name.nil?
247
+ command.query['connectAgent.name'] = connect_agent_name unless connect_agent_name.nil?
248
+ command.query['connectAgent.namespace'] = connect_agent_namespace unless connect_agent_namespace.nil?
249
+ command.query['connectAgent.proxy'] = connect_agent_proxy unless connect_agent_proxy.nil?
250
+ command.query['imagePullSecretContent'] = image_pull_secret_content unless image_pull_secret_content.nil?
251
+ command.query['isUpgrade'] = is_upgrade unless is_upgrade.nil?
252
+ command.query['registry'] = registry unless registry.nil?
253
+ command.query['version'] = version unless version.nil?
254
+ command.query['fields'] = fields unless fields.nil?
255
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
256
+ execute_or_queue_command(command, &block)
257
+ end
258
+
259
+ # GenerateExclusivityManifest generates the manifests to update the exclusivity
260
+ # artifacts in the cluster if needed. Exclusivity artifacts include the
261
+ # Membership custom resource definition (CRD) and the singleton Membership
262
+ # custom resource (CR). Combined with ValidateExclusivity, exclusivity artifacts
263
+ # guarantee that a Kubernetes cluster is only registered to a single GKE Hub.
264
+ # The Membership CRD is versioned, and may require conversion when the GKE Hub
265
+ # API server begins serving a newer version of the CRD and corresponding CR. The
266
+ # response will be the converted CRD and CR if there are any differences between
267
+ # the versions.
268
+ # @param [String] name
269
+ # Required. The Membership resource name in the format `projects/*/locations/*/
270
+ # memberships/*`.
271
+ # @param [String] cr_manifest
272
+ # Optional. The YAML manifest of the membership CR retrieved by `kubectl get
273
+ # memberships membership`. Leave empty if the resource does not exist.
274
+ # @param [String] crd_manifest
275
+ # Optional. The YAML manifest of the membership CRD retrieved by `kubectl get
276
+ # customresourcedefinitions membership`. Leave empty if the resource does not
277
+ # exist.
278
+ # @param [String] fields
279
+ # Selector specifying which fields to include in a partial response.
280
+ # @param [String] quota_user
281
+ # Available to use for quota purposes for server-side applications. Can be any
282
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
283
+ # @param [Google::Apis::RequestOptions] options
284
+ # Request-specific options
285
+ #
286
+ # @yield [result, err] Result & error if block supplied
287
+ # @yieldparam result [Google::Apis::GkehubV1beta1::GenerateExclusivityManifestResponse] parsed result object
288
+ # @yieldparam err [StandardError] error object if request failed
289
+ #
290
+ # @return [Google::Apis::GkehubV1beta1::GenerateExclusivityManifestResponse]
291
+ #
292
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
293
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
294
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
295
+ def generate_project_location_membership_exclusivity_manifest(name, cr_manifest: nil, crd_manifest: nil, fields: nil, quota_user: nil, options: nil, &block)
296
+ command = make_simple_command(:get, 'v1beta1/{+name}:generateExclusivityManifest', options)
297
+ command.response_representation = Google::Apis::GkehubV1beta1::GenerateExclusivityManifestResponse::Representation
298
+ command.response_class = Google::Apis::GkehubV1beta1::GenerateExclusivityManifestResponse
299
+ command.params['name'] = name unless name.nil?
300
+ command.query['crManifest'] = cr_manifest unless cr_manifest.nil?
301
+ command.query['crdManifest'] = crd_manifest unless crd_manifest.nil?
302
+ command.query['fields'] = fields unless fields.nil?
303
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
304
+ execute_or_queue_command(command, &block)
305
+ end
306
+
307
+ # Gets the details of a Membership.
308
+ # @param [String] name
309
+ # Required. The Membership resource name in the format `projects/*/locations/*/
310
+ # memberships/*`.
311
+ # @param [String] fields
312
+ # Selector specifying which fields to include in a partial response.
313
+ # @param [String] quota_user
314
+ # Available to use for quota purposes for server-side applications. Can be any
315
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
316
+ # @param [Google::Apis::RequestOptions] options
317
+ # Request-specific options
318
+ #
319
+ # @yield [result, err] Result & error if block supplied
320
+ # @yieldparam result [Google::Apis::GkehubV1beta1::Membership] parsed result object
321
+ # @yieldparam err [StandardError] error object if request failed
322
+ #
323
+ # @return [Google::Apis::GkehubV1beta1::Membership]
324
+ #
325
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
326
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
327
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
328
+ def get_project_location_membership(name, fields: nil, quota_user: nil, options: nil, &block)
329
+ command = make_simple_command(:get, 'v1beta1/{+name}', options)
330
+ command.response_representation = Google::Apis::GkehubV1beta1::Membership::Representation
331
+ command.response_class = Google::Apis::GkehubV1beta1::Membership
332
+ command.params['name'] = name unless name.nil?
333
+ command.query['fields'] = fields unless fields.nil?
334
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
335
+ execute_or_queue_command(command, &block)
336
+ end
337
+
338
+ # Gets the access control policy for a resource. Returns an empty policy if the
339
+ # resource exists and does not have a policy set.
340
+ # @param [String] resource
341
+ # REQUIRED: The resource for which the policy is being requested. See the
342
+ # operation documentation for the appropriate value for this field.
343
+ # @param [Fixnum] options_requested_policy_version
344
+ # Optional. The policy format version to be returned. Valid values are 0, 1, and
345
+ # 3. Requests specifying an invalid value will be rejected. Requests for
346
+ # policies with any conditional bindings must specify version 3. Policies
347
+ # without any conditional bindings may specify any valid value or leave the
348
+ # field unset. To learn which resources support conditions in their IAM policies,
349
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
350
+ # resource-policies).
351
+ # @param [String] fields
352
+ # Selector specifying which fields to include in a partial response.
353
+ # @param [String] quota_user
354
+ # Available to use for quota purposes for server-side applications. Can be any
355
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
356
+ # @param [Google::Apis::RequestOptions] options
357
+ # Request-specific options
358
+ #
359
+ # @yield [result, err] Result & error if block supplied
360
+ # @yieldparam result [Google::Apis::GkehubV1beta1::Policy] parsed result object
361
+ # @yieldparam err [StandardError] error object if request failed
362
+ #
363
+ # @return [Google::Apis::GkehubV1beta1::Policy]
364
+ #
365
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
366
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
367
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
368
+ def get_project_location_membership_iam_policy(resource, options_requested_policy_version: nil, fields: nil, quota_user: nil, options: nil, &block)
369
+ command = make_simple_command(:get, 'v1beta1/{+resource}:getIamPolicy', options)
370
+ command.response_representation = Google::Apis::GkehubV1beta1::Policy::Representation
371
+ command.response_class = Google::Apis::GkehubV1beta1::Policy
372
+ command.params['resource'] = resource unless resource.nil?
373
+ command.query['options.requestedPolicyVersion'] = options_requested_policy_version unless options_requested_policy_version.nil?
374
+ command.query['fields'] = fields unless fields.nil?
375
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
376
+ execute_or_queue_command(command, &block)
377
+ end
378
+
379
+ # Lists Memberships in a given project and location.
380
+ # @param [String] parent
381
+ # Required. The parent (project and location) where the Memberships will be
382
+ # listed. Specified in the format `projects/*/locations/*`.
383
+ # @param [String] filter
384
+ # Optional. Lists Memberships that match the filter expression, following the
385
+ # syntax outlined in https://google.aip.dev/160. Examples: - Name is `bar` in
386
+ # project `foo-proj` and location `global`: name = "projects/foo-proj/locations/
387
+ # global/membership/bar" - Memberships that have a label called `foo`: labels.
388
+ # foo:* - Memberships that have a label called `foo` whose value is `bar`:
389
+ # labels.foo = bar - Memberships in the CREATING state: state = CREATING
390
+ # @param [String] order_by
391
+ # Optional. One or more fields to compare and use to sort the output. See https:/
392
+ # /google.aip.dev/132#ordering.
393
+ # @param [Fixnum] page_size
394
+ # Optional. When requesting a 'page' of resources, `page_size` specifies number
395
+ # of resources to return. If unspecified or set to 0, all resources will be
396
+ # returned.
397
+ # @param [String] page_token
398
+ # Optional. Token returned by previous call to `ListMemberships` which specifies
399
+ # the position in the list from where to continue listing the resources.
400
+ # @param [String] fields
401
+ # Selector specifying which fields to include in a partial response.
402
+ # @param [String] quota_user
403
+ # Available to use for quota purposes for server-side applications. Can be any
404
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
405
+ # @param [Google::Apis::RequestOptions] options
406
+ # Request-specific options
407
+ #
408
+ # @yield [result, err] Result & error if block supplied
409
+ # @yieldparam result [Google::Apis::GkehubV1beta1::ListMembershipsResponse] parsed result object
410
+ # @yieldparam err [StandardError] error object if request failed
411
+ #
412
+ # @return [Google::Apis::GkehubV1beta1::ListMembershipsResponse]
413
+ #
414
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
415
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
416
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
417
+ def list_project_location_memberships(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
418
+ command = make_simple_command(:get, 'v1beta1/{+parent}/memberships', options)
419
+ command.response_representation = Google::Apis::GkehubV1beta1::ListMembershipsResponse::Representation
420
+ command.response_class = Google::Apis::GkehubV1beta1::ListMembershipsResponse
421
+ command.params['parent'] = parent unless parent.nil?
422
+ command.query['filter'] = filter unless filter.nil?
423
+ command.query['orderBy'] = order_by unless order_by.nil?
424
+ command.query['pageSize'] = page_size unless page_size.nil?
425
+ command.query['pageToken'] = page_token unless page_token.nil?
426
+ command.query['fields'] = fields unless fields.nil?
427
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
428
+ execute_or_queue_command(command, &block)
429
+ end
430
+
431
+ # Updates an existing Membership.
432
+ # @param [String] name
433
+ # Required. The membership resource name in the format: `projects/[project_id]/
434
+ # locations/global/memberships/[membership_id]`
435
+ # @param [Google::Apis::GkehubV1beta1::Membership] membership_object
436
+ # @param [String] update_mask
437
+ # Required. Mask of fields to update. At least one field path must be specified
438
+ # in this mask.
439
+ # @param [String] fields
440
+ # Selector specifying which fields to include in a partial response.
441
+ # @param [String] quota_user
442
+ # Available to use for quota purposes for server-side applications. Can be any
443
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
444
+ # @param [Google::Apis::RequestOptions] options
445
+ # Request-specific options
446
+ #
447
+ # @yield [result, err] Result & error if block supplied
448
+ # @yieldparam result [Google::Apis::GkehubV1beta1::Operation] parsed result object
449
+ # @yieldparam err [StandardError] error object if request failed
450
+ #
451
+ # @return [Google::Apis::GkehubV1beta1::Operation]
452
+ #
453
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
454
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
455
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
456
+ def patch_project_location_membership(name, membership_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
457
+ command = make_simple_command(:patch, 'v1beta1/{+name}', options)
458
+ command.request_representation = Google::Apis::GkehubV1beta1::Membership::Representation
459
+ command.request_object = membership_object
460
+ command.response_representation = Google::Apis::GkehubV1beta1::Operation::Representation
461
+ command.response_class = Google::Apis::GkehubV1beta1::Operation
462
+ command.params['name'] = name unless name.nil?
463
+ command.query['updateMask'] = update_mask unless update_mask.nil?
464
+ command.query['fields'] = fields unless fields.nil?
465
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
466
+ execute_or_queue_command(command, &block)
467
+ end
468
+
469
+ # Sets the access control policy on the specified resource. Replaces any
470
+ # existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `
471
+ # PERMISSION_DENIED` errors.
472
+ # @param [String] resource
473
+ # REQUIRED: The resource for which the policy is being specified. See the
474
+ # operation documentation for the appropriate value for this field.
475
+ # @param [Google::Apis::GkehubV1beta1::SetIamPolicyRequest] set_iam_policy_request_object
476
+ # @param [String] fields
477
+ # Selector specifying which fields to include in a partial response.
478
+ # @param [String] quota_user
479
+ # Available to use for quota purposes for server-side applications. Can be any
480
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
481
+ # @param [Google::Apis::RequestOptions] options
482
+ # Request-specific options
483
+ #
484
+ # @yield [result, err] Result & error if block supplied
485
+ # @yieldparam result [Google::Apis::GkehubV1beta1::Policy] parsed result object
486
+ # @yieldparam err [StandardError] error object if request failed
487
+ #
488
+ # @return [Google::Apis::GkehubV1beta1::Policy]
489
+ #
490
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
491
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
492
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
493
+ def set_membership_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
494
+ command = make_simple_command(:post, 'v1beta1/{+resource}:setIamPolicy', options)
495
+ command.request_representation = Google::Apis::GkehubV1beta1::SetIamPolicyRequest::Representation
496
+ command.request_object = set_iam_policy_request_object
497
+ command.response_representation = Google::Apis::GkehubV1beta1::Policy::Representation
498
+ command.response_class = Google::Apis::GkehubV1beta1::Policy
499
+ command.params['resource'] = resource unless resource.nil?
500
+ command.query['fields'] = fields unless fields.nil?
501
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
502
+ execute_or_queue_command(command, &block)
503
+ end
504
+
505
+ # Returns permissions that a caller has on the specified resource. If the
506
+ # resource does not exist, this will return an empty set of permissions, not a `
507
+ # NOT_FOUND` error. Note: This operation is designed to be used for building
508
+ # permission-aware UIs and command-line tools, not for authorization checking.
509
+ # This operation may "fail open" without warning.
510
+ # @param [String] resource
511
+ # REQUIRED: The resource for which the policy detail is being requested. See the
512
+ # operation documentation for the appropriate value for this field.
513
+ # @param [Google::Apis::GkehubV1beta1::TestIamPermissionsRequest] test_iam_permissions_request_object
514
+ # @param [String] fields
515
+ # Selector specifying which fields to include in a partial response.
516
+ # @param [String] quota_user
517
+ # Available to use for quota purposes for server-side applications. Can be any
518
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
519
+ # @param [Google::Apis::RequestOptions] options
520
+ # Request-specific options
521
+ #
522
+ # @yield [result, err] Result & error if block supplied
523
+ # @yieldparam result [Google::Apis::GkehubV1beta1::TestIamPermissionsResponse] parsed result object
524
+ # @yieldparam err [StandardError] error object if request failed
525
+ #
526
+ # @return [Google::Apis::GkehubV1beta1::TestIamPermissionsResponse]
527
+ #
528
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
529
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
530
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
531
+ def test_membership_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
532
+ command = make_simple_command(:post, 'v1beta1/{+resource}:testIamPermissions', options)
533
+ command.request_representation = Google::Apis::GkehubV1beta1::TestIamPermissionsRequest::Representation
534
+ command.request_object = test_iam_permissions_request_object
535
+ command.response_representation = Google::Apis::GkehubV1beta1::TestIamPermissionsResponse::Representation
536
+ command.response_class = Google::Apis::GkehubV1beta1::TestIamPermissionsResponse
537
+ command.params['resource'] = resource unless resource.nil?
538
+ command.query['fields'] = fields unless fields.nil?
539
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
540
+ execute_or_queue_command(command, &block)
541
+ end
542
+
543
+ # ValidateExclusivity validates the state of exclusivity in the cluster. The
544
+ # validation does not depend on an existing Hub membership resource.
545
+ # @param [String] parent
546
+ # Required. The parent (project and location) where the Memberships will be
547
+ # created. Specified in the format `projects/*/locations/*`.
548
+ # @param [String] cr_manifest
549
+ # Optional. The YAML of the membership CR in the cluster. Empty if the
550
+ # membership CR does not exist.
551
+ # @param [String] intended_membership
552
+ # Required. The intended membership name under the `parent`. This method only
553
+ # does validation in anticipation of a CreateMembership call with the same name.
554
+ # @param [String] fields
555
+ # Selector specifying which fields to include in a partial response.
556
+ # @param [String] quota_user
557
+ # Available to use for quota purposes for server-side applications. Can be any
558
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
559
+ # @param [Google::Apis::RequestOptions] options
560
+ # Request-specific options
561
+ #
562
+ # @yield [result, err] Result & error if block supplied
563
+ # @yieldparam result [Google::Apis::GkehubV1beta1::ValidateExclusivityResponse] parsed result object
564
+ # @yieldparam err [StandardError] error object if request failed
565
+ #
566
+ # @return [Google::Apis::GkehubV1beta1::ValidateExclusivityResponse]
567
+ #
568
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
569
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
570
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
571
+ def validate_project_location_membership_exclusivity(parent, cr_manifest: nil, intended_membership: nil, fields: nil, quota_user: nil, options: nil, &block)
572
+ command = make_simple_command(:get, 'v1beta1/{+parent}/memberships:validateExclusivity', options)
573
+ command.response_representation = Google::Apis::GkehubV1beta1::ValidateExclusivityResponse::Representation
574
+ command.response_class = Google::Apis::GkehubV1beta1::ValidateExclusivityResponse
575
+ command.params['parent'] = parent unless parent.nil?
576
+ command.query['crManifest'] = cr_manifest unless cr_manifest.nil?
577
+ command.query['intendedMembership'] = intended_membership unless intended_membership.nil?
578
+ command.query['fields'] = fields unless fields.nil?
579
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
580
+ execute_or_queue_command(command, &block)
581
+ end
582
+
583
+ # Starts asynchronous cancellation on a long-running operation. The server makes
584
+ # a best effort to cancel the operation, but success is not guaranteed. If the
585
+ # server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.
586
+ # Clients can use Operations.GetOperation or other methods to check whether the
587
+ # cancellation succeeded or whether the operation completed despite cancellation.
588
+ # On successful cancellation, the operation is not deleted; instead, it becomes
589
+ # an operation with an Operation.error value with a google.rpc.Status.code of 1,
590
+ # corresponding to `Code.CANCELLED`.
591
+ # @param [String] name
592
+ # The name of the operation resource to be cancelled.
593
+ # @param [Google::Apis::GkehubV1beta1::CancelOperationRequest] cancel_operation_request_object
594
+ # @param [String] fields
595
+ # Selector specifying which fields to include in a partial response.
596
+ # @param [String] quota_user
597
+ # Available to use for quota purposes for server-side applications. Can be any
598
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
599
+ # @param [Google::Apis::RequestOptions] options
600
+ # Request-specific options
601
+ #
602
+ # @yield [result, err] Result & error if block supplied
603
+ # @yieldparam result [Google::Apis::GkehubV1beta1::Empty] parsed result object
604
+ # @yieldparam err [StandardError] error object if request failed
605
+ #
606
+ # @return [Google::Apis::GkehubV1beta1::Empty]
607
+ #
608
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
609
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
610
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
611
+ def cancel_operation(name, cancel_operation_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
612
+ command = make_simple_command(:post, 'v1beta1/{+name}:cancel', options)
613
+ command.request_representation = Google::Apis::GkehubV1beta1::CancelOperationRequest::Representation
614
+ command.request_object = cancel_operation_request_object
615
+ command.response_representation = Google::Apis::GkehubV1beta1::Empty::Representation
616
+ command.response_class = Google::Apis::GkehubV1beta1::Empty
617
+ command.params['name'] = name unless name.nil?
618
+ command.query['fields'] = fields unless fields.nil?
619
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
620
+ execute_or_queue_command(command, &block)
621
+ end
622
+
623
+ # Deletes a long-running operation. This method indicates that the client is no
624
+ # longer interested in the operation result. It does not cancel the operation.
625
+ # If the server doesn't support this method, it returns `google.rpc.Code.
626
+ # UNIMPLEMENTED`.
627
+ # @param [String] name
628
+ # The name of the operation resource to be deleted.
629
+ # @param [String] fields
630
+ # Selector specifying which fields to include in a partial response.
631
+ # @param [String] quota_user
632
+ # Available to use for quota purposes for server-side applications. Can be any
633
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
634
+ # @param [Google::Apis::RequestOptions] options
635
+ # Request-specific options
636
+ #
637
+ # @yield [result, err] Result & error if block supplied
638
+ # @yieldparam result [Google::Apis::GkehubV1beta1::Empty] parsed result object
639
+ # @yieldparam err [StandardError] error object if request failed
640
+ #
641
+ # @return [Google::Apis::GkehubV1beta1::Empty]
642
+ #
643
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
644
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
645
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
646
+ def delete_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block)
647
+ command = make_simple_command(:delete, 'v1beta1/{+name}', options)
648
+ command.response_representation = Google::Apis::GkehubV1beta1::Empty::Representation
649
+ command.response_class = Google::Apis::GkehubV1beta1::Empty
650
+ command.params['name'] = name unless name.nil?
651
+ command.query['fields'] = fields unless fields.nil?
652
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
653
+ execute_or_queue_command(command, &block)
654
+ end
655
+
656
+ # Gets the latest state of a long-running operation. Clients can use this method
657
+ # to poll the operation result at intervals as recommended by the API service.
658
+ # @param [String] name
659
+ # The name of the operation resource.
660
+ # @param [String] fields
661
+ # Selector specifying which fields to include in a partial response.
662
+ # @param [String] quota_user
663
+ # Available to use for quota purposes for server-side applications. Can be any
664
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
665
+ # @param [Google::Apis::RequestOptions] options
666
+ # Request-specific options
667
+ #
668
+ # @yield [result, err] Result & error if block supplied
669
+ # @yieldparam result [Google::Apis::GkehubV1beta1::Operation] parsed result object
670
+ # @yieldparam err [StandardError] error object if request failed
671
+ #
672
+ # @return [Google::Apis::GkehubV1beta1::Operation]
673
+ #
674
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
675
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
676
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
677
+ def get_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block)
678
+ command = make_simple_command(:get, 'v1beta1/{+name}', options)
679
+ command.response_representation = Google::Apis::GkehubV1beta1::Operation::Representation
680
+ command.response_class = Google::Apis::GkehubV1beta1::Operation
681
+ command.params['name'] = name unless name.nil?
682
+ command.query['fields'] = fields unless fields.nil?
683
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
684
+ execute_or_queue_command(command, &block)
685
+ end
686
+
687
+ # Lists operations that match the specified filter in the request. If the server
688
+ # doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name`
689
+ # binding allows API services to override the binding to use different resource
690
+ # name schemes, such as `users/*/operations`. To override the binding, API
691
+ # services can add a binding such as `"/v1/`name=users/*`/operations"` to their
692
+ # service configuration. For backwards compatibility, the default name includes
693
+ # the operations collection id, however overriding users must ensure the name
694
+ # binding is the parent resource, without the operations collection id.
695
+ # @param [String] name
696
+ # The name of the operation's parent resource.
697
+ # @param [String] filter
698
+ # The standard list filter.
699
+ # @param [Fixnum] page_size
700
+ # The standard list page size.
701
+ # @param [String] page_token
702
+ # The standard list page token.
703
+ # @param [String] fields
704
+ # Selector specifying which fields to include in a partial response.
705
+ # @param [String] quota_user
706
+ # Available to use for quota purposes for server-side applications. Can be any
707
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
708
+ # @param [Google::Apis::RequestOptions] options
709
+ # Request-specific options
710
+ #
711
+ # @yield [result, err] Result & error if block supplied
712
+ # @yieldparam result [Google::Apis::GkehubV1beta1::ListOperationsResponse] parsed result object
713
+ # @yieldparam err [StandardError] error object if request failed
714
+ #
715
+ # @return [Google::Apis::GkehubV1beta1::ListOperationsResponse]
716
+ #
717
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
718
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
719
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
720
+ def list_project_location_operations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
721
+ command = make_simple_command(:get, 'v1beta1/{+name}/operations', options)
722
+ command.response_representation = Google::Apis::GkehubV1beta1::ListOperationsResponse::Representation
723
+ command.response_class = Google::Apis::GkehubV1beta1::ListOperationsResponse
724
+ command.params['name'] = name unless name.nil?
725
+ command.query['filter'] = filter unless filter.nil?
726
+ command.query['pageSize'] = page_size unless page_size.nil?
727
+ command.query['pageToken'] = page_token unless page_token.nil?
728
+ command.query['fields'] = fields unless fields.nil?
729
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
730
+ execute_or_queue_command(command, &block)
731
+ end
732
+
733
+ protected
734
+
735
+ def apply_command_defaults(command)
736
+ command.query['key'] = key unless key.nil?
737
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
738
+ end
739
+ end
740
+ end
741
+ end
742
+ end