google-iam-v1 1.0.1 → 1.3.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6aab8d68d4af8dcc25865221a777739299b711958377d71f32f9059a52ed482e
4
- data.tar.gz: 04d250848c6a06ee9ceb64863d9f21fa22ac51c96fe1e38942f6c59726f71463
3
+ metadata.gz: 1511d0c49b463572c9fad87238676e684f3793b9dc6b8a91371248310823d833
4
+ data.tar.gz: 85ae5cb2b6822a4c7c020372dcdce3230ceee08a5805cb7380afbd4207c606d7
5
5
  SHA512:
6
- metadata.gz: 3e466b2193f2669327f7749335995ef94d72d1e7f88e1485b03f292285bbab2fed589f6abdb46a4fa0801e0c380f1dae44740e2e97b98f7335ae67f6009597c5
7
- data.tar.gz: 9a01df43617deb99606143a23ad0a6b7b04ba6b968b984aac11184f0ccea0467ab55567dc083a6196aa585a803d92c1443385242f2d800df278eb58cb0576956
6
+ metadata.gz: 05cf435bfc283cafc78e12d32356c12cd9e2098730cee15d158dc149e913842df309e32001d6e8419b0460b3293b876ab757937ba3f87e1cca20cffc351d91cd
7
+ data.tar.gz: b2f1b9e5b3771221c24b4cf86485b5372790b82a2058c2376884dc2bf04c20d027d6144c6c1f76c431c78d9c834b1b95ecb2e723ecdcf5da68d92d5193c302dd
@@ -28,7 +28,6 @@ module Google
28
28
  #
29
29
  # API Overview
30
30
  #
31
- #
32
31
  # Manages Identity and Access Management (IAM) policies.
33
32
  #
34
33
  # Any implementation of an API that offers access control features
@@ -179,8 +178,28 @@ module Google
179
178
  universe_domain: @config.universe_domain,
180
179
  channel_args: @config.channel_args,
181
180
  interceptors: @config.interceptors,
182
- channel_pool_config: @config.channel_pool
181
+ channel_pool_config: @config.channel_pool,
182
+ logger: @config.logger
183
183
  )
184
+
185
+ @iam_policy_stub.stub_logger&.info do |entry|
186
+ entry.set_system_name
187
+ entry.set_service
188
+ entry.message = "Created client for #{entry.service}"
189
+ entry.set_credentials_fields credentials
190
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
191
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
192
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
193
+ end
194
+ end
195
+
196
+ ##
197
+ # The logger used for request/response debug logging.
198
+ #
199
+ # @return [Logger]
200
+ #
201
+ def logger
202
+ @iam_policy_stub.logger
184
203
  end
185
204
 
186
205
  # Service calls
@@ -280,7 +299,6 @@ module Google
280
299
 
281
300
  @iam_policy_stub.call_rpc :set_iam_policy, request, options: options do |response, operation|
282
301
  yield response, operation if block_given?
283
- return response
284
302
  end
285
303
  rescue ::GRPC::BadStatus => e
286
304
  raise ::Google::Cloud::Error.from_error(e)
@@ -372,7 +390,6 @@ module Google
372
390
 
373
391
  @iam_policy_stub.call_rpc :get_iam_policy, request, options: options do |response, operation|
374
392
  yield response, operation if block_given?
375
- return response
376
393
  end
377
394
  rescue ::GRPC::BadStatus => e
378
395
  raise ::Google::Cloud::Error.from_error(e)
@@ -470,7 +487,6 @@ module Google
470
487
 
471
488
  @iam_policy_stub.call_rpc :test_iam_permissions, request, options: options do |response, operation|
472
489
  yield response, operation if block_given?
473
- return response
474
490
  end
475
491
  rescue ::GRPC::BadStatus => e
476
492
  raise ::Google::Cloud::Error.from_error(e)
@@ -520,6 +536,13 @@ module Google
520
536
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
521
537
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
522
538
  # * (`nil`) indicating no credentials
539
+ #
540
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
541
+ # external source for authentication to Google Cloud, you must validate it before
542
+ # providing it to a Google API client library. Providing an unvalidated credential
543
+ # configuration to Google APIs can compromise the security of your systems and data.
544
+ # For more information, refer to [Validate credential configurations from external
545
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
523
546
  # @return [::Object]
524
547
  # @!attribute [rw] scope
525
548
  # The OAuth scopes
@@ -559,6 +582,11 @@ module Google
559
582
  # default endpoint URL. The default value of nil uses the environment
560
583
  # universe (usually the default "googleapis.com" universe).
561
584
  # @return [::String,nil]
585
+ # @!attribute [rw] logger
586
+ # A custom logger to use for request/response debug logging, or the value
587
+ # `:default` (the default) to construct a default logger, or `nil` to
588
+ # explicitly disable logging.
589
+ # @return [::Logger,:default,nil]
562
590
  #
563
591
  class Configuration
564
592
  extend ::Gapic::Config
@@ -569,8 +597,8 @@ module Google
569
597
 
570
598
  config_attr :endpoint, nil, ::String, nil
571
599
  config_attr :credentials, nil do |value|
572
- allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
573
- allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
600
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Google::Auth::BaseClient, ::Signet::OAuth2::Client, nil]
601
+ allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC::Core::Channel
574
602
  allowed.any? { |klass| klass === value }
575
603
  end
576
604
  config_attr :scope, nil, ::String, ::Array, nil
@@ -583,6 +611,7 @@ module Google
583
611
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
584
612
  config_attr :quota_project, nil, ::String, nil
585
613
  config_attr :universe_domain, nil, ::String, nil
614
+ config_attr :logger, :default, ::Logger, nil, :default
586
615
 
587
616
  # @private
588
617
  def initialize parent_config = nil
@@ -30,7 +30,6 @@ module Google
30
30
  #
31
31
  # API Overview
32
32
  #
33
- #
34
33
  # Manages Identity and Access Management (IAM) policies.
35
34
  #
36
35
  # Any implementation of an API that offers access control features
@@ -172,8 +171,28 @@ module Google
172
171
  endpoint: @config.endpoint,
173
172
  endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
174
173
  universe_domain: @config.universe_domain,
175
- credentials: credentials
174
+ credentials: credentials,
175
+ logger: @config.logger
176
176
  )
177
+
178
+ @iam_policy_stub.logger(stub: true)&.info do |entry|
179
+ entry.set_system_name
180
+ entry.set_service
181
+ entry.message = "Created client for #{entry.service}"
182
+ entry.set_credentials_fields credentials
183
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
184
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
185
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
186
+ end
187
+ end
188
+
189
+ ##
190
+ # The logger used for request/response debug logging.
191
+ #
192
+ # @return [Logger]
193
+ #
194
+ def logger
195
+ @iam_policy_stub.logger
177
196
  end
178
197
 
179
198
  # Service calls
@@ -268,7 +287,6 @@ module Google
268
287
 
269
288
  @iam_policy_stub.set_iam_policy request, options, bindings_override: bindings_override do |result, operation|
270
289
  yield result, operation if block_given?
271
- return result
272
290
  end
273
291
  rescue ::Gapic::Rest::Error => e
274
292
  raise ::Google::Cloud::Error.from_error(e)
@@ -355,7 +373,6 @@ module Google
355
373
 
356
374
  @iam_policy_stub.get_iam_policy request, options, bindings_override: bindings_override do |result, operation|
357
375
  yield result, operation if block_given?
358
- return result
359
376
  end
360
377
  rescue ::Gapic::Rest::Error => e
361
378
  raise ::Google::Cloud::Error.from_error(e)
@@ -448,7 +465,6 @@ module Google
448
465
 
449
466
  @iam_policy_stub.test_iam_permissions request, options, bindings_override: bindings_override do |result, operation|
450
467
  yield result, operation if block_given?
451
- return result
452
468
  end
453
469
  rescue ::Gapic::Rest::Error => e
454
470
  raise ::Google::Cloud::Error.from_error(e)
@@ -496,6 +512,13 @@ module Google
496
512
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
497
513
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
498
514
  # * (`nil`) indicating no credentials
515
+ #
516
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
517
+ # external source for authentication to Google Cloud, you must validate it before
518
+ # providing it to a Google API client library. Providing an unvalidated credential
519
+ # configuration to Google APIs can compromise the security of your systems and data.
520
+ # For more information, refer to [Validate credential configurations from external
521
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
499
522
  # @return [::Object]
500
523
  # @!attribute [rw] scope
501
524
  # The OAuth scopes
@@ -528,6 +551,11 @@ module Google
528
551
  # default endpoint URL. The default value of nil uses the environment
529
552
  # universe (usually the default "googleapis.com" universe).
530
553
  # @return [::String,nil]
554
+ # @!attribute [rw] logger
555
+ # A custom logger to use for request/response debug logging, or the value
556
+ # `:default` (the default) to construct a default logger, or `nil` to
557
+ # explicitly disable logging.
558
+ # @return [::Logger,:default,nil]
531
559
  #
532
560
  class Configuration
533
561
  extend ::Gapic::Config
@@ -538,7 +566,7 @@ module Google
538
566
 
539
567
  config_attr :endpoint, nil, ::String, nil
540
568
  config_attr :credentials, nil do |value|
541
- allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
569
+ allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Google::Auth::BaseClient, ::Signet::OAuth2::Client, nil]
542
570
  allowed.any? { |klass| klass === value }
543
571
  end
544
572
  config_attr :scope, nil, ::String, ::Array, nil
@@ -556,6 +584,7 @@ module Google
556
584
  # by the host service.
557
585
  # @return [::Hash{::Symbol=>::Array<::Gapic::Rest::GrpcTranscoder::HttpBinding>}]
558
586
  config_attr :bindings_override, {}, ::Hash, nil
587
+ config_attr :logger, :default, ::Logger, nil, :default
559
588
 
560
589
  # @private
561
590
  def initialize parent_config = nil
@@ -29,7 +29,8 @@ module Google
29
29
  # including transcoding, making the REST call, and deserialing the response.
30
30
  #
31
31
  class ServiceStub
32
- def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
32
+ # @private
33
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger:
33
34
  # These require statements are intentionally placed here to initialize
34
35
  # the REST modules only when it's required.
35
36
  require "gapic/rest"
@@ -39,7 +40,9 @@ module Google
39
40
  universe_domain: universe_domain,
40
41
  credentials: credentials,
41
42
  numeric_enums: false,
42
- raise_faraday_errors: false
43
+ service_name: self.class,
44
+ raise_faraday_errors: false,
45
+ logger: logger
43
46
  end
44
47
 
45
48
  ##
@@ -60,6 +63,15 @@ module Google
60
63
  @client_stub.endpoint
61
64
  end
62
65
 
66
+ ##
67
+ # The logger used for request/response debug logging.
68
+ #
69
+ # @return [Logger]
70
+ #
71
+ def logger stub: false
72
+ stub ? @client_stub.stub_logger : @client_stub.logger
73
+ end
74
+
63
75
  ##
64
76
  # Baseline implementation for the set_iam_policy REST call
65
77
  #
@@ -88,16 +100,18 @@ module Google
88
100
 
89
101
  response = @client_stub.make_http_request(
90
102
  verb,
91
- uri: uri,
92
- body: body || "",
93
- params: query_string_params,
103
+ uri: uri,
104
+ body: body || "",
105
+ params: query_string_params,
106
+ method_name: "set_iam_policy",
94
107
  options: options
95
108
  )
96
109
  operation = ::Gapic::Rest::TransportOperation.new response
97
110
  result = ::Google::Iam::V1::Policy.decode_json response.body, ignore_unknown_fields: true
98
-
99
- yield result, operation if block_given?
100
- result
111
+ catch :response do
112
+ yield result, operation if block_given?
113
+ result
114
+ end
101
115
  end
102
116
 
103
117
  ##
@@ -128,16 +142,18 @@ module Google
128
142
 
129
143
  response = @client_stub.make_http_request(
130
144
  verb,
131
- uri: uri,
132
- body: body || "",
133
- params: query_string_params,
145
+ uri: uri,
146
+ body: body || "",
147
+ params: query_string_params,
148
+ method_name: "get_iam_policy",
134
149
  options: options
135
150
  )
136
151
  operation = ::Gapic::Rest::TransportOperation.new response
137
152
  result = ::Google::Iam::V1::Policy.decode_json response.body, ignore_unknown_fields: true
138
-
139
- yield result, operation if block_given?
140
- result
153
+ catch :response do
154
+ yield result, operation if block_given?
155
+ result
156
+ end
141
157
  end
142
158
 
143
159
  ##
@@ -168,16 +184,18 @@ module Google
168
184
 
169
185
  response = @client_stub.make_http_request(
170
186
  verb,
171
- uri: uri,
172
- body: body || "",
173
- params: query_string_params,
187
+ uri: uri,
188
+ body: body || "",
189
+ params: query_string_params,
190
+ method_name: "test_iam_permissions",
174
191
  options: options
175
192
  )
176
193
  operation = ::Gapic::Rest::TransportOperation.new response
177
194
  result = ::Google::Iam::V1::TestIamPermissionsResponse.decode_json response.body, ignore_unknown_fields: true
178
-
179
- yield result, operation if block_given?
180
- result
195
+ catch :response do
196
+ yield result, operation if block_given?
197
+ result
198
+ end
181
199
  end
182
200
 
183
201
  ##
@@ -31,7 +31,6 @@ module Google
31
31
  ##
32
32
  # API Overview
33
33
  #
34
- #
35
34
  # Manages Identity and Access Management (IAM) policies.
36
35
  #
37
36
  # Any implementation of an API that offers access control features
@@ -32,7 +32,6 @@ module Google
32
32
  ##
33
33
  # API Overview
34
34
  #
35
- #
36
35
  # Manages Identity and Access Management (IAM) policies.
37
36
  #
38
37
  # Any implementation of an API that offers access control features
@@ -13,7 +13,7 @@ require 'google/iam/v1/policy_pb'
13
13
  require 'google/protobuf/field_mask_pb'
14
14
 
15
15
 
16
- descriptor_data = "\n\x1egoogle/iam/v1/iam_policy.proto\x12\rgoogle.iam.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1bgoogle/iam/v1/options.proto\x1a\x1agoogle/iam/v1/policy.proto\x1a google/protobuf/field_mask.proto\"\x8f\x01\n\x13SetIamPolicyRequest\x12\x1b\n\x08resource\x18\x01 \x01(\tB\t\xe0\x41\x02\xfa\x41\x03\n\x01*\x12*\n\x06policy\x18\x02 \x01(\x0b\x32\x15.google.iam.v1.PolicyB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"d\n\x13GetIamPolicyRequest\x12\x1b\n\x08resource\x18\x01 \x01(\tB\t\xe0\x41\x02\xfa\x41\x03\n\x01*\x12\x30\n\x07options\x18\x02 \x01(\x0b\x32\x1f.google.iam.v1.GetPolicyOptions\"R\n\x19TestIamPermissionsRequest\x12\x1b\n\x08resource\x18\x01 \x01(\tB\t\xe0\x41\x02\xfa\x41\x03\n\x01*\x12\x18\n\x0bpermissions\x18\x02 \x03(\tB\x03\xe0\x41\x02\"1\n\x1aTestIamPermissionsResponse\x12\x13\n\x0bpermissions\x18\x01 \x03(\t2\xb4\x03\n\tIAMPolicy\x12t\n\x0cSetIamPolicy\x12\".google.iam.v1.SetIamPolicyRequest\x1a\x15.google.iam.v1.Policy\")\x82\xd3\xe4\x93\x02#\"\x1e/v1/{resource=**}:setIamPolicy:\x01*\x12t\n\x0cGetIamPolicy\x12\".google.iam.v1.GetIamPolicyRequest\x1a\x15.google.iam.v1.Policy\")\x82\xd3\xe4\x93\x02#\"\x1e/v1/{resource=**}:getIamPolicy:\x01*\x12\x9a\x01\n\x12TestIamPermissions\x12(.google.iam.v1.TestIamPermissionsRequest\x1a).google.iam.v1.TestIamPermissionsResponse\"/\x82\xd3\xe4\x93\x02)\"$/v1/{resource=**}:testIamPermissions:\x01*\x1a\x1e\xca\x41\x1biam-meta-api.googleapis.comB\x7f\n\x11\x63om.google.iam.v1B\x0eIamPolicyProtoP\x01Z)cloud.google.com/go/iam/apiv1/iampb;iampb\xf8\x01\x01\xaa\x02\x13Google.Cloud.Iam.V1\xca\x02\x13Google\\Cloud\\Iam\\V1b\x06proto3"
16
+ descriptor_data = "\n\x1egoogle/iam/v1/iam_policy.proto\x12\rgoogle.iam.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1bgoogle/iam/v1/options.proto\x1a\x1agoogle/iam/v1/policy.proto\x1a google/protobuf/field_mask.proto\"\x8f\x01\n\x13SetIamPolicyRequest\x12\x1b\n\x08resource\x18\x01 \x01(\tB\t\xe0\x41\x02\xfa\x41\x03\n\x01*\x12*\n\x06policy\x18\x02 \x01(\x0b\x32\x15.google.iam.v1.PolicyB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"d\n\x13GetIamPolicyRequest\x12\x1b\n\x08resource\x18\x01 \x01(\tB\t\xe0\x41\x02\xfa\x41\x03\n\x01*\x12\x30\n\x07options\x18\x02 \x01(\x0b\x32\x1f.google.iam.v1.GetPolicyOptions\"R\n\x19TestIamPermissionsRequest\x12\x1b\n\x08resource\x18\x01 \x01(\tB\t\xe0\x41\x02\xfa\x41\x03\n\x01*\x12\x18\n\x0bpermissions\x18\x02 \x03(\tB\x03\xe0\x41\x02\"1\n\x1aTestIamPermissionsResponse\x12\x13\n\x0bpermissions\x18\x01 \x03(\t2\xb4\x03\n\tIAMPolicy\x12t\n\x0cSetIamPolicy\x12\".google.iam.v1.SetIamPolicyRequest\x1a\x15.google.iam.v1.Policy\")\x82\xd3\xe4\x93\x02#\"\x1e/v1/{resource=**}:setIamPolicy:\x01*\x12t\n\x0cGetIamPolicy\x12\".google.iam.v1.GetIamPolicyRequest\x1a\x15.google.iam.v1.Policy\")\x82\xd3\xe4\x93\x02#\"\x1e/v1/{resource=**}:getIamPolicy:\x01*\x12\x9a\x01\n\x12TestIamPermissions\x12(.google.iam.v1.TestIamPermissionsRequest\x1a).google.iam.v1.TestIamPermissionsResponse\"/\x82\xd3\xe4\x93\x02)\"$/v1/{resource=**}:testIamPermissions:\x01*\x1a\x1e\xca\x41\x1biam-meta-api.googleapis.comB|\n\x11\x63om.google.iam.v1B\x0eIamPolicyProtoP\x01Z)cloud.google.com/go/iam/apiv1/iampb;iampb\xaa\x02\x13Google.Cloud.Iam.V1\xca\x02\x13Google\\Cloud\\Iam\\V1b\x06proto3"
17
17
 
18
18
  pool = Google::Protobuf::DescriptorPool.generated_pool
19
19
 
@@ -25,7 +25,6 @@ module Google
25
25
  module IAMPolicy
26
26
  # API Overview
27
27
  #
28
- #
29
28
  # Manages Identity and Access Management (IAM) policies.
30
29
  #
31
30
  # Any implementation of an API that offers access control features
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: google/iam/v1/resource_policy_member.proto
4
+
5
+ require 'google/protobuf'
6
+
7
+ require 'google/api/field_behavior_pb'
8
+
9
+
10
+ descriptor_data = "\n*google/iam/v1/resource_policy_member.proto\x12\rgoogle.iam.v1\x1a\x1fgoogle/api/field_behavior.proto\"e\n\x14ResourcePolicyMember\x12&\n\x19iam_policy_name_principal\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12%\n\x18iam_policy_uid_principal\x18\x02 \x01(\tB\x03\xe0\x41\x03\x42\x87\x01\n\x11\x63om.google.iam.v1B\x19ResourcePolicyMemberProtoP\x01Z)cloud.google.com/go/iam/apiv1/iampb;iampb\xaa\x02\x13Google.Cloud.Iam.V1\xca\x02\x13Google\\Cloud\\Iam\\V1b\x06proto3"
11
+
12
+ pool = Google::Protobuf::DescriptorPool.generated_pool
13
+
14
+ begin
15
+ pool.add_serialized_file(descriptor_data)
16
+ rescue TypeError
17
+ # Compatibility code: will be removed in the next major version.
18
+ require 'google/protobuf/descriptor_pb'
19
+ parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
20
+ parsed.clear_dependency
21
+ serialized = parsed.class.encode(parsed)
22
+ file = pool.add_serialized_file(serialized)
23
+ warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
24
+ imports = [
25
+ ]
26
+ imports.each do |type_name, expected_filename|
27
+ import_file = pool.lookup(type_name).file_descriptor
28
+ if import_file.name != expected_filename
29
+ warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
30
+ end
31
+ end
32
+ warn "Each proto file must use a consistent fully-qualified name."
33
+ warn "This will become an error in the next major version."
34
+ end
35
+
36
+ module Google
37
+ module Iam
38
+ module V1
39
+ ResourcePolicyMember = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.iam.v1.ResourcePolicyMember").msgclass
40
+ end
41
+ end
42
+ end
@@ -20,7 +20,7 @@
20
20
  module Google
21
21
  module Iam
22
22
  module V1
23
- VERSION = "1.0.1"
23
+ VERSION = "1.3.1"
24
24
  end
25
25
  end
26
26
  end
@@ -28,6 +28,9 @@ module Google
28
28
  # @!attribute [rw] destinations
29
29
  # @return [::Array<::Google::Api::ClientLibraryDestination>]
30
30
  # The destination where API teams want this client library to be published.
31
+ # @!attribute [rw] selective_gapic_generation
32
+ # @return [::Google::Api::SelectiveGapicGeneration]
33
+ # Configuration for which RPCs should be generated in the GAPIC client.
31
34
  class CommonLanguageSettings
32
35
  include ::Google::Protobuf::MessageExts
33
36
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -212,6 +215,18 @@ module Google
212
215
  # enabled. By default, asynchronous REST clients will not be generated.
213
216
  # This feature will be enabled by default 1 month after launching the
214
217
  # feature in preview packages.
218
+ # @!attribute [rw] protobuf_pythonic_types_enabled
219
+ # @return [::Boolean]
220
+ # Enables generation of protobuf code using new types that are more
221
+ # Pythonic which are included in `protobuf>=5.29.x`. This feature will be
222
+ # enabled by default 1 month after launching the feature in preview
223
+ # packages.
224
+ # @!attribute [rw] unversioned_package_disabled
225
+ # @return [::Boolean]
226
+ # Disables generation of an unversioned Python package for this client
227
+ # library. This means that the module names will need to be versioned in
228
+ # import statements. For example `import google.cloud.library_v2` instead
229
+ # of `import google.cloud.library`.
215
230
  class ExperimentalFeatures
216
231
  include ::Google::Protobuf::MessageExts
217
232
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -297,9 +312,28 @@ module Google
297
312
  # @!attribute [rw] common
298
313
  # @return [::Google::Api::CommonLanguageSettings]
299
314
  # Some settings.
315
+ # @!attribute [rw] renamed_services
316
+ # @return [::Google::Protobuf::Map{::String => ::String}]
317
+ # Map of service names to renamed services. Keys are the package relative
318
+ # service names and values are the name to be used for the service client
319
+ # and call options.
320
+ #
321
+ # publishing:
322
+ # go_settings:
323
+ # renamed_services:
324
+ # Publisher: TopicAdmin
300
325
  class GoSettings
301
326
  include ::Google::Protobuf::MessageExts
302
327
  extend ::Google::Protobuf::MessageExts::ClassMethods
328
+
329
+ # @!attribute [rw] key
330
+ # @return [::String]
331
+ # @!attribute [rw] value
332
+ # @return [::String]
333
+ class RenamedServicesEntry
334
+ include ::Google::Protobuf::MessageExts
335
+ extend ::Google::Protobuf::MessageExts::ClassMethods
336
+ end
303
337
  end
304
338
 
305
339
  # Describes the generator configuration for a method.
@@ -375,6 +409,25 @@ module Google
375
409
  end
376
410
  end
377
411
 
412
+ # This message is used to configure the generation of a subset of the RPCs in
413
+ # a service for client libraries.
414
+ # @!attribute [rw] methods
415
+ # @return [::Array<::String>]
416
+ # An allowlist of the fully qualified names of RPCs that should be included
417
+ # on public client surfaces.
418
+ # @!attribute [rw] generate_omitted_as_internal
419
+ # @return [::Boolean]
420
+ # Setting this to true indicates to the client generators that methods
421
+ # that would be excluded from the generation should instead be generated
422
+ # in a way that indicates these methods should not be consumed by
423
+ # end users. How this is expressed is up to individual language
424
+ # implementations to decide. Some examples may be: added annotations,
425
+ # obfuscated identifiers, or other language idiomatic patterns.
426
+ class SelectiveGapicGeneration
427
+ include ::Google::Protobuf::MessageExts
428
+ extend ::Google::Protobuf::MessageExts::ClassMethods
429
+ end
430
+
378
431
  # The organization for which the client libraries are being published.
379
432
  # Affects the url where generated docs are published, etc.
380
433
  module ClientLibraryOrganization
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 Iam
22
+ module V1
23
+ # Output-only policy member strings of a Google Cloud resource's built-in
24
+ # identity.
25
+ # @!attribute [r] iam_policy_name_principal
26
+ # @return [::String]
27
+ # IAM policy binding member referring to a Google Cloud resource by
28
+ # user-assigned name (https://google.aip.dev/122). If a resource is deleted
29
+ # and recreated with the same name, the binding will be applicable to the new
30
+ # resource.
31
+ #
32
+ # Example:
33
+ # `principal://parametermanager.googleapis.com/projects/12345/name/locations/us-central1-a/parameters/my-parameter`
34
+ # @!attribute [r] iam_policy_uid_principal
35
+ # @return [::String]
36
+ # IAM policy binding member referring to a Google Cloud resource by
37
+ # system-assigned unique identifier (https://google.aip.dev/148#uid). If a
38
+ # resource is deleted and recreated with the same name, the binding will not
39
+ # be applicable to the new resource
40
+ #
41
+ # Example:
42
+ # `principal://parametermanager.googleapis.com/projects/12345/uid/locations/us-central1-a/parameters/a918fed5`
43
+ class ResourcePolicyMember
44
+ include ::Google::Protobuf::MessageExts
45
+ extend ::Google::Protobuf::MessageExts::ClassMethods
46
+ end
47
+ end
48
+ end
49
+ end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-iam-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-08-30 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: gapic-common
@@ -16,7 +15,7 @@ dependencies:
16
15
  requirements:
17
16
  - - ">="
18
17
  - !ruby/object:Gem::Version
19
- version: 0.21.1
18
+ version: 0.25.0
20
19
  - - "<"
21
20
  - !ruby/object:Gem::Version
22
21
  version: 2.a
@@ -26,7 +25,7 @@ dependencies:
26
25
  requirements:
27
26
  - - ">="
28
27
  - !ruby/object:Gem::Version
29
- version: 0.21.1
28
+ version: 0.25.0
30
29
  - - "<"
31
30
  - !ruby/object:Gem::Version
32
31
  version: 2.a
@@ -83,6 +82,7 @@ files:
83
82
  - lib/google/iam/v1/logging/audit_data_pb.rb
84
83
  - lib/google/iam/v1/options_pb.rb
85
84
  - lib/google/iam/v1/policy_pb.rb
85
+ - lib/google/iam/v1/resource_policy_member_pb.rb
86
86
  - lib/google/iam/v1/rest.rb
87
87
  - lib/google/iam/v1/version.rb
88
88
  - proto_docs/README.md
@@ -93,6 +93,7 @@ files:
93
93
  - proto_docs/google/iam/v1/iam_policy.rb
94
94
  - proto_docs/google/iam/v1/options.rb
95
95
  - proto_docs/google/iam/v1/policy.rb
96
+ - proto_docs/google/iam/v1/resource_policy_member.rb
96
97
  - proto_docs/google/protobuf/duration.rb
97
98
  - proto_docs/google/protobuf/field_mask.rb
98
99
  - proto_docs/google/type/expr.rb
@@ -100,7 +101,6 @@ homepage: https://github.com/googleapis/google-cloud-ruby
100
101
  licenses:
101
102
  - Apache-2.0
102
103
  metadata: {}
103
- post_install_message:
104
104
  rdoc_options: []
105
105
  require_paths:
106
106
  - lib
@@ -108,15 +108,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
108
108
  requirements:
109
109
  - - ">="
110
110
  - !ruby/object:Gem::Version
111
- version: '2.7'
111
+ version: '3.0'
112
112
  required_rubygems_version: !ruby/object:Gem::Requirement
113
113
  requirements:
114
114
  - - ">="
115
115
  - !ruby/object:Gem::Version
116
116
  version: '0'
117
117
  requirements: []
118
- rubygems_version: 3.5.6
119
- signing_key:
118
+ rubygems_version: 3.6.8
120
119
  specification_version: 4
121
120
  summary: Manages access control for Google Cloud Platform resources.
122
121
  test_files: []