google-iam-v1 0.5.2 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 011ce0a5e6f295354f7d49b24d750e77091c8b9fbf47f7f25f002364710e7fc2
4
- data.tar.gz: 289c8586ae8de17b73b2189cf77bb4deb64291dbff92bbddc5f2407523daa9ec
3
+ metadata.gz: 8c1aa60d20b9bcdcbd93ef1691e434b0a5ff9417259670d309aca6772527ac7e
4
+ data.tar.gz: 856264752c37948694d3b1f5ccc11615d51ae30c2c80bbe757fb847f65d76ee8
5
5
  SHA512:
6
- metadata.gz: e765dc0c9de36c8bbabd39b2da06f1c7dcd33cb0c829d3aa72d9007c1ac455de44c511748c4d1b85d3fec7544d2ccfa751f7067160f5978ea4b41e59cfe93a02
7
- data.tar.gz: 3b85c5e6d5abfe786a1f558530a46ce0b1b6639bd970cfc3a7414a2ff86dc3b97fe86c221714ea05ccb8e0a5754adffe6ecd0e95c2807145ae632af3e86dd768
6
+ metadata.gz: 7ee7d93f54a5d64a20928f5148d51530e4c30f98e59980959cfd03761c1a5a297dbc12020676358fe467e5bfc0a084da08ac474bb14326f9ac75ca558d2424ab
7
+ data.tar.gz: '096d35acc2c9625891942dc3562eeaebbb14c544eddc6c17ddde1186afdb919b3b20fa52bf2932380b7d8e5cac280cc8e4b2f040e88aebf576ed2999cf89312f'
@@ -54,6 +54,9 @@ module Google
54
54
  # attached.
55
55
  #
56
56
  class Client
57
+ # @private
58
+ DEFAULT_ENDPOINT_TEMPLATE = "iam-meta-api.$UNIVERSE_DOMAIN$"
59
+
57
60
  # @private
58
61
  attr_reader :iam_policy_stub
59
62
 
@@ -112,6 +115,15 @@ module Google
112
115
  @config
113
116
  end
114
117
 
118
+ ##
119
+ # The effective universe domain
120
+ #
121
+ # @return [String]
122
+ #
123
+ def universe_domain
124
+ @iam_policy_stub.universe_domain
125
+ end
126
+
115
127
  ##
116
128
  # Create a new IAMPolicy client object.
117
129
  #
@@ -145,8 +157,9 @@ module Google
145
157
  credentials = @config.credentials
146
158
  # Use self-signed JWT if the endpoint is unchanged from default,
147
159
  # but only if the default endpoint does not have a region prefix.
148
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
149
- !@config.endpoint.split(".").first.include?("-")
160
+ enable_self_signed_jwt = @config.endpoint.nil? ||
161
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
162
+ !@config.endpoint.split(".").first.include?("-"))
150
163
  credentials ||= Credentials.default scope: @config.scope,
151
164
  enable_self_signed_jwt: enable_self_signed_jwt
152
165
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -157,10 +170,13 @@ module Google
157
170
 
158
171
  @iam_policy_stub = ::Gapic::ServiceStub.new(
159
172
  ::Google::Iam::V1::IAMPolicy::Stub,
160
- credentials: credentials,
161
- endpoint: @config.endpoint,
173
+ credentials: credentials,
174
+ endpoint: @config.endpoint,
175
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
176
+ universe_domain: @config.universe_domain,
162
177
  channel_args: @config.channel_args,
163
- interceptors: @config.interceptors
178
+ interceptors: @config.interceptors,
179
+ channel_pool_config: @config.channel_pool
164
180
  )
165
181
  end
166
182
 
@@ -484,9 +500,9 @@ module Google
484
500
  # end
485
501
  #
486
502
  # @!attribute [rw] endpoint
487
- # The hostname or hostname:port of the service endpoint.
488
- # Defaults to `"iam-meta-api.googleapis.com"`.
489
- # @return [::String]
503
+ # A custom service endpoint, as a hostname or hostname:port. The default is
504
+ # nil, indicating to use the default endpoint in the current universe domain.
505
+ # @return [::String,nil]
490
506
  # @!attribute [rw] credentials
491
507
  # Credentials to send with calls. You may provide any of the following types:
492
508
  # * (`String`) The path to a service account key file in JSON format
@@ -532,13 +548,20 @@ module Google
532
548
  # @!attribute [rw] quota_project
533
549
  # A separate project against which to charge quota.
534
550
  # @return [::String]
551
+ # @!attribute [rw] universe_domain
552
+ # The universe domain within which to make requests. This determines the
553
+ # default endpoint URL. The default value of nil uses the environment
554
+ # universe (usually the default "googleapis.com" universe).
555
+ # @return [::String,nil]
535
556
  #
536
557
  class Configuration
537
558
  extend ::Gapic::Config
538
559
 
560
+ # @private
561
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
539
562
  DEFAULT_ENDPOINT = "iam-meta-api.googleapis.com"
540
563
 
541
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
564
+ config_attr :endpoint, nil, ::String, nil
542
565
  config_attr :credentials, nil do |value|
543
566
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
544
567
  allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
@@ -553,6 +576,7 @@ module Google
553
576
  config_attr :metadata, nil, ::Hash, nil
554
577
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
555
578
  config_attr :quota_project, nil, ::String, nil
579
+ config_attr :universe_domain, nil, ::String, nil
556
580
 
557
581
  # @private
558
582
  def initialize parent_config = nil
@@ -573,6 +597,14 @@ module Google
573
597
  end
574
598
  end
575
599
 
600
+ ##
601
+ # Configuration for the channel pool
602
+ # @return [::Gapic::ServiceStub::ChannelPool::Configuration]
603
+ #
604
+ def channel_pool
605
+ @channel_pool ||= ::Gapic::ServiceStub::ChannelPool::Configuration.new
606
+ end
607
+
576
608
  ##
577
609
  # Configuration RPC class for the IAMPolicy API.
578
610
  #
@@ -56,6 +56,9 @@ module Google
56
56
  # attached.
57
57
  #
58
58
  class Client
59
+ # @private
60
+ DEFAULT_ENDPOINT_TEMPLATE = "iam-meta-api.$UNIVERSE_DOMAIN$"
61
+
59
62
  # @private
60
63
  attr_reader :iam_policy_stub
61
64
 
@@ -114,6 +117,15 @@ module Google
114
117
  @config
115
118
  end
116
119
 
120
+ ##
121
+ # The effective universe domain
122
+ #
123
+ # @return [String]
124
+ #
125
+ def universe_domain
126
+ @iam_policy_stub.universe_domain
127
+ end
128
+
117
129
  ##
118
130
  # Create a new IAMPolicy REST client object.
119
131
  #
@@ -141,8 +153,9 @@ module Google
141
153
  credentials = @config.credentials
142
154
  # Use self-signed JWT if the endpoint is unchanged from default,
143
155
  # but only if the default endpoint does not have a region prefix.
144
- enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
145
- !@config.endpoint.split(".").first.include?("-")
156
+ enable_self_signed_jwt = @config.endpoint.nil? ||
157
+ (@config.endpoint == Configuration::DEFAULT_ENDPOINT &&
158
+ !@config.endpoint.split(".").first.include?("-"))
146
159
  credentials ||= Credentials.default scope: @config.scope,
147
160
  enable_self_signed_jwt: enable_self_signed_jwt
148
161
  if credentials.is_a?(::String) || credentials.is_a?(::Hash)
@@ -152,7 +165,12 @@ module Google
152
165
  @quota_project_id = @config.quota_project
153
166
  @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id
154
167
 
155
- @iam_policy_stub = ::Google::Iam::V1::IAMPolicy::Rest::ServiceStub.new endpoint: @config.endpoint, credentials: credentials
168
+ @iam_policy_stub = ::Google::Iam::V1::IAMPolicy::Rest::ServiceStub.new(
169
+ endpoint: @config.endpoint,
170
+ endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
171
+ universe_domain: @config.universe_domain,
172
+ credentials: credentials
173
+ )
156
174
  end
157
175
 
158
176
  # Service calls
@@ -199,6 +217,22 @@ module Google
199
217
  # @return [::Google::Iam::V1::Policy]
200
218
  #
201
219
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
220
+ #
221
+ # @example Basic example
222
+ # require "google/iam/v1"
223
+ #
224
+ # # Create a client object. The client can be reused for multiple calls.
225
+ # client = Google::Iam::V1::IAMPolicy::Rest::Client.new
226
+ #
227
+ # # Create a request. To set request fields, pass in keyword arguments.
228
+ # request = Google::Iam::V1::SetIamPolicyRequest.new
229
+ #
230
+ # # Call the set_iam_policy method.
231
+ # result = client.set_iam_policy request
232
+ #
233
+ # # The returned object is of type Google::Iam::V1::Policy.
234
+ # p result
235
+ #
202
236
  def set_iam_policy request, options = nil
203
237
  raise ::ArgumentError, "request must be provided" if request.nil?
204
238
 
@@ -269,6 +303,22 @@ module Google
269
303
  # @return [::Google::Iam::V1::Policy]
270
304
  #
271
305
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
306
+ #
307
+ # @example Basic example
308
+ # require "google/iam/v1"
309
+ #
310
+ # # Create a client object. The client can be reused for multiple calls.
311
+ # client = Google::Iam::V1::IAMPolicy::Rest::Client.new
312
+ #
313
+ # # Create a request. To set request fields, pass in keyword arguments.
314
+ # request = Google::Iam::V1::GetIamPolicyRequest.new
315
+ #
316
+ # # Call the get_iam_policy method.
317
+ # result = client.get_iam_policy request
318
+ #
319
+ # # The returned object is of type Google::Iam::V1::Policy.
320
+ # p result
321
+ #
272
322
  def get_iam_policy request, options = nil
273
323
  raise ::ArgumentError, "request must be provided" if request.nil?
274
324
 
@@ -345,6 +395,22 @@ module Google
345
395
  # @return [::Google::Iam::V1::TestIamPermissionsResponse]
346
396
  #
347
397
  # @raise [::Google::Cloud::Error] if the REST call is aborted.
398
+ #
399
+ # @example Basic example
400
+ # require "google/iam/v1"
401
+ #
402
+ # # Create a client object. The client can be reused for multiple calls.
403
+ # client = Google::Iam::V1::IAMPolicy::Rest::Client.new
404
+ #
405
+ # # Create a request. To set request fields, pass in keyword arguments.
406
+ # request = Google::Iam::V1::TestIamPermissionsRequest.new
407
+ #
408
+ # # Call the test_iam_permissions method.
409
+ # result = client.test_iam_permissions request
410
+ #
411
+ # # The returned object is of type Google::Iam::V1::TestIamPermissionsResponse.
412
+ # p result
413
+ #
348
414
  def test_iam_permissions request, options = nil
349
415
  raise ::ArgumentError, "request must be provided" if request.nil?
350
416
 
@@ -412,9 +478,9 @@ module Google
412
478
  # end
413
479
  #
414
480
  # @!attribute [rw] endpoint
415
- # The hostname or hostname:port of the service endpoint.
416
- # Defaults to `"iam-meta-api.googleapis.com"`.
417
- # @return [::String]
481
+ # A custom service endpoint, as a hostname or hostname:port. The default is
482
+ # nil, indicating to use the default endpoint in the current universe domain.
483
+ # @return [::String,nil]
418
484
  # @!attribute [rw] credentials
419
485
  # Credentials to send with calls. You may provide any of the following types:
420
486
  # * (`String`) The path to a service account key file in JSON format
@@ -451,13 +517,20 @@ module Google
451
517
  # @!attribute [rw] quota_project
452
518
  # A separate project against which to charge quota.
453
519
  # @return [::String]
520
+ # @!attribute [rw] universe_domain
521
+ # The universe domain within which to make requests. This determines the
522
+ # default endpoint URL. The default value of nil uses the environment
523
+ # universe (usually the default "googleapis.com" universe).
524
+ # @return [::String,nil]
454
525
  #
455
526
  class Configuration
456
527
  extend ::Gapic::Config
457
528
 
529
+ # @private
530
+ # The endpoint specific to the default "googleapis.com" universe. Deprecated.
458
531
  DEFAULT_ENDPOINT = "iam-meta-api.googleapis.com"
459
532
 
460
- config_attr :endpoint, DEFAULT_ENDPOINT, ::String
533
+ config_attr :endpoint, nil, ::String, nil
461
534
  config_attr :credentials, nil do |value|
462
535
  allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
463
536
  allowed.any? { |klass| klass === value }
@@ -469,6 +542,7 @@ module Google
469
542
  config_attr :metadata, nil, ::Hash, nil
470
543
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
471
544
  config_attr :quota_project, nil, ::String, nil
545
+ config_attr :universe_domain, nil, ::String, nil
472
546
 
473
547
  # @private
474
548
  # Overrides for http bindings for the RPCs of this service
@@ -29,16 +29,28 @@ module Google
29
29
  # including transcoding, making the REST call, and deserialing the response.
30
30
  #
31
31
  class ServiceStub
32
- def initialize endpoint:, credentials:
32
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
33
33
  # These require statements are intentionally placed here to initialize
34
34
  # the REST modules only when it's required.
35
35
  require "gapic/rest"
36
36
 
37
- @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
37
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint,
38
+ endpoint_template: endpoint_template,
39
+ universe_domain: universe_domain,
40
+ credentials: credentials,
38
41
  numeric_enums: false,
39
42
  raise_faraday_errors: false
40
43
  end
41
44
 
45
+ ##
46
+ # The effective universe domain
47
+ #
48
+ # @return [String]
49
+ #
50
+ def universe_domain
51
+ @client_stub.universe_domain
52
+ end
53
+
42
54
  ##
43
55
  # Baseline implementation for the set_iam_policy REST call
44
56
  #
@@ -20,7 +20,7 @@
20
20
  module Google
21
21
  module Iam
22
22
  module V1
23
- VERSION = "0.5.2"
23
+ VERSION = "0.7.0"
24
24
  end
25
25
  end
26
26
  end
@@ -21,6 +21,7 @@ module Google
21
21
  module Api
22
22
  # Required information for every language.
23
23
  # @!attribute [rw] reference_docs_uri
24
+ # @deprecated This field is deprecated and may be removed in the next major version update.
24
25
  # @return [::String]
25
26
  # Link to automatically generated reference documentation. Example:
26
27
  # https://cloud.google.com/nodejs/docs/reference/asset/latest
@@ -304,6 +305,19 @@ module Google
304
305
  # seconds: 360 # 6 minutes
305
306
  # total_poll_timeout:
306
307
  # seconds: 54000 # 90 minutes
308
+ # @!attribute [rw] auto_populated_fields
309
+ # @return [::Array<::String>]
310
+ # List of top-level fields of the request message, that should be
311
+ # automatically populated by the client libraries based on their
312
+ # (google.api.field_info).format. Currently supported format: UUID4.
313
+ #
314
+ # Example of a YAML configuration:
315
+ #
316
+ # publishing:
317
+ # method_settings:
318
+ # - selector: google.example.v1.ExampleService.CreateExample
319
+ # auto_populated_fields:
320
+ # - request_id
307
321
  class MethodSettings
308
322
  include ::Google::Protobuf::MessageExts
309
323
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -66,6 +66,20 @@ module Google
66
66
  # a non-empty value will be returned. The user will not be aware of what
67
67
  # non-empty value to expect.
68
68
  NON_EMPTY_DEFAULT = 7
69
+
70
+ # Denotes that the field in a resource (a message annotated with
71
+ # google.api.resource) is used in the resource name to uniquely identify the
72
+ # resource. For AIP-compliant APIs, this should only be applied to the
73
+ # `name` field on the resource.
74
+ #
75
+ # This behavior should not be applied to references to other resources within
76
+ # the message.
77
+ #
78
+ # The identifier field of resources often have different field behavior
79
+ # depending on the request it is embedded in (e.g. for Create methods name
80
+ # is optional and unused, while for Update methods it is required). Instead
81
+ # of method-specific annotations, only `IDENTIFIER` is required.
82
+ IDENTIFIER = 8
69
83
  end
70
84
  end
71
85
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-iam-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.2
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-08-04 00:00:00.000000000 Z
11
+ date: 2024-01-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.19.1
19
+ version: 0.21.1
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: 2.a
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 0.19.1
29
+ version: 0.21.1
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: 2.a
@@ -227,7 +227,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
227
227
  - !ruby/object:Gem::Version
228
228
  version: '0'
229
229
  requirements: []
230
- rubygems_version: 3.4.2
230
+ rubygems_version: 3.5.3
231
231
  signing_key:
232
232
  specification_version: 4
233
233
  summary: Manages access control for Google Cloud Platform resources.