google-cloud-policy_troubleshooter-v1 1.0.1 → 1.2.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.
- checksums.yaml +4 -4
- data/README.md +31 -21
- data/lib/google/cloud/policy_troubleshooter/v1/iam_checker/client.rb +34 -2
- data/lib/google/cloud/policy_troubleshooter/v1/iam_checker/rest/client.rb +34 -2
- data/lib/google/cloud/policy_troubleshooter/v1/iam_checker/rest/service_stub.rb +22 -8
- data/lib/google/cloud/policy_troubleshooter/v1/version.rb +1 -1
- data/proto_docs/google/api/client.rb +39 -0
- metadata +6 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6a4d5c0ba74497cfe969a9da7580030e5ad9a74c7fff2c7562b271bb9ec6b539
|
4
|
+
data.tar.gz: 5a64a141fb45bea56e6486fb8e16eff0e8c8ef95cc43a9bec8420fa6c1b3e230
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c9993f26a6b793d91df2343637b9b6d5b7f591d1f7cf47f90f1fb3590b3148e069b263d103eb948cb190c8da55fcb1e038ae69f3582bd7238b699f8e92abf603
|
7
|
+
data.tar.gz: fa9421018585e722bb6a5e215e74a4a2ec743764e53ea04b059c293025987779b9d0fad8ceacf76f6ff6d3c1fa4895888422963d6dc5af1654902ef0e99584b8
|
data/README.md
CHANGED
@@ -43,40 +43,50 @@ for class and method documentation.
|
|
43
43
|
See also the [Product Documentation](https://cloud.google.com/iam/docs/troubleshooting-access)
|
44
44
|
for general usage information.
|
45
45
|
|
46
|
-
##
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
46
|
+
## Debug Logging
|
47
|
+
|
48
|
+
This library comes with opt-in Debug Logging that can help you troubleshoot
|
49
|
+
your application's integration with the API. When logging is activated, key
|
50
|
+
events such as requests and responses, along with data payloads and metadata
|
51
|
+
such as headers and client configuration, are logged to the standard error
|
52
|
+
stream.
|
53
|
+
|
54
|
+
**WARNING:** Client Library Debug Logging includes your data payloads in
|
55
|
+
plaintext, which could include sensitive data such as PII for yourself or your
|
56
|
+
customers, private keys, or other security data that could be compromising if
|
57
|
+
leaked. Always practice good data hygiene with your application logs, and follow
|
58
|
+
the principle of least access. Google also recommends that Client Library Debug
|
59
|
+
Logging be enabled only temporarily during active debugging, and not used
|
60
|
+
permanently in production.
|
61
|
+
|
62
|
+
To enable logging, set the environment variable `GOOGLE_SDK_RUBY_LOGGING_GEMS`
|
63
|
+
to the value `all`. Alternatively, you can set the value to a comma-delimited
|
64
|
+
list of client library gem names. This will select the default logging behavior,
|
65
|
+
which writes logs to the standard error stream. On a local workstation, this may
|
66
|
+
result in logs appearing on the console. When running on a Google Cloud hosting
|
67
|
+
service such as [Google Cloud Run](https://cloud.google.com/run), this generally
|
68
|
+
results in logs appearing alongside your application logs in the
|
69
|
+
[Google Cloud Logging](https://cloud.google.com/logging/) service.
|
70
|
+
|
71
|
+
You can customize logging by modifying the `logger` configuration when
|
72
|
+
constructing a client object. For example:
|
55
73
|
|
56
74
|
```ruby
|
75
|
+
require "google/cloud/policy_troubleshooter/v1"
|
57
76
|
require "logger"
|
58
77
|
|
59
|
-
|
60
|
-
|
61
|
-
def logger
|
62
|
-
LOGGER
|
63
|
-
end
|
64
|
-
end
|
65
|
-
|
66
|
-
# Define a gRPC module-level logger method before grpc/logconfig.rb loads.
|
67
|
-
module GRPC
|
68
|
-
extend MyLogger
|
78
|
+
client = ::Google::Cloud::PolicyTroubleshooter::V1::IamChecker::Client.new do |config|
|
79
|
+
config.logger = Logger.new "my-app.log"
|
69
80
|
end
|
70
81
|
```
|
71
82
|
|
72
|
-
|
73
83
|
## Google Cloud Samples
|
74
84
|
|
75
85
|
To browse ready to use code samples check [Google Cloud Samples](https://cloud.google.com/docs/samples).
|
76
86
|
|
77
87
|
## Supported Ruby Versions
|
78
88
|
|
79
|
-
This library is supported on Ruby
|
89
|
+
This library is supported on Ruby 3.0+.
|
80
90
|
|
81
91
|
Google provides official support for Ruby versions that are actively supported
|
82
92
|
by Ruby Core—that is, Ruby versions that are either in normal maintenance or
|
@@ -164,8 +164,28 @@ module Google
|
|
164
164
|
universe_domain: @config.universe_domain,
|
165
165
|
channel_args: @config.channel_args,
|
166
166
|
interceptors: @config.interceptors,
|
167
|
-
channel_pool_config: @config.channel_pool
|
167
|
+
channel_pool_config: @config.channel_pool,
|
168
|
+
logger: @config.logger
|
168
169
|
)
|
170
|
+
|
171
|
+
@iam_checker_stub.stub_logger&.info do |entry|
|
172
|
+
entry.set_system_name
|
173
|
+
entry.set_service
|
174
|
+
entry.message = "Created client for #{entry.service}"
|
175
|
+
entry.set_credentials_fields credentials
|
176
|
+
entry.set "customEndpoint", @config.endpoint if @config.endpoint
|
177
|
+
entry.set "defaultTimeout", @config.timeout if @config.timeout
|
178
|
+
entry.set "quotaProject", @quota_project_id if @quota_project_id
|
179
|
+
end
|
180
|
+
end
|
181
|
+
|
182
|
+
##
|
183
|
+
# The logger used for request/response debug logging.
|
184
|
+
#
|
185
|
+
# @return [Logger]
|
186
|
+
#
|
187
|
+
def logger
|
188
|
+
@iam_checker_stub.logger
|
169
189
|
end
|
170
190
|
|
171
191
|
# Service calls
|
@@ -245,7 +265,6 @@ module Google
|
|
245
265
|
|
246
266
|
@iam_checker_stub.call_rpc :troubleshoot_iam_policy, request, options: options do |response, operation|
|
247
267
|
yield response, operation if block_given?
|
248
|
-
return response
|
249
268
|
end
|
250
269
|
rescue ::GRPC::BadStatus => e
|
251
270
|
raise ::Google::Cloud::Error.from_error(e)
|
@@ -295,6 +314,13 @@ module Google
|
|
295
314
|
# * (`GRPC::Core::Channel`) a gRPC channel with included credentials
|
296
315
|
# * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
|
297
316
|
# * (`nil`) indicating no credentials
|
317
|
+
#
|
318
|
+
# Warning: If you accept a credential configuration (JSON file or Hash) from an
|
319
|
+
# external source for authentication to Google Cloud, you must validate it before
|
320
|
+
# providing it to a Google API client library. Providing an unvalidated credential
|
321
|
+
# configuration to Google APIs can compromise the security of your systems and data.
|
322
|
+
# For more information, refer to [Validate credential configurations from external
|
323
|
+
# sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
|
298
324
|
# @return [::Object]
|
299
325
|
# @!attribute [rw] scope
|
300
326
|
# The OAuth scopes
|
@@ -334,6 +360,11 @@ module Google
|
|
334
360
|
# default endpoint URL. The default value of nil uses the environment
|
335
361
|
# universe (usually the default "googleapis.com" universe).
|
336
362
|
# @return [::String,nil]
|
363
|
+
# @!attribute [rw] logger
|
364
|
+
# A custom logger to use for request/response debug logging, or the value
|
365
|
+
# `:default` (the default) to construct a default logger, or `nil` to
|
366
|
+
# explicitly disable logging.
|
367
|
+
# @return [::Logger,:default,nil]
|
337
368
|
#
|
338
369
|
class Configuration
|
339
370
|
extend ::Gapic::Config
|
@@ -358,6 +389,7 @@ module Google
|
|
358
389
|
config_attr :retry_policy, nil, ::Hash, ::Proc, nil
|
359
390
|
config_attr :quota_project, nil, ::String, nil
|
360
391
|
config_attr :universe_domain, nil, ::String, nil
|
392
|
+
config_attr :logger, :default, ::Logger, nil, :default
|
361
393
|
|
362
394
|
# @private
|
363
395
|
def initialize parent_config = nil
|
@@ -157,8 +157,28 @@ module Google
|
|
157
157
|
endpoint: @config.endpoint,
|
158
158
|
endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
|
159
159
|
universe_domain: @config.universe_domain,
|
160
|
-
credentials: credentials
|
160
|
+
credentials: credentials,
|
161
|
+
logger: @config.logger
|
161
162
|
)
|
163
|
+
|
164
|
+
@iam_checker_stub.logger(stub: true)&.info do |entry|
|
165
|
+
entry.set_system_name
|
166
|
+
entry.set_service
|
167
|
+
entry.message = "Created client for #{entry.service}"
|
168
|
+
entry.set_credentials_fields credentials
|
169
|
+
entry.set "customEndpoint", @config.endpoint if @config.endpoint
|
170
|
+
entry.set "defaultTimeout", @config.timeout if @config.timeout
|
171
|
+
entry.set "quotaProject", @quota_project_id if @quota_project_id
|
172
|
+
end
|
173
|
+
end
|
174
|
+
|
175
|
+
##
|
176
|
+
# The logger used for request/response debug logging.
|
177
|
+
#
|
178
|
+
# @return [Logger]
|
179
|
+
#
|
180
|
+
def logger
|
181
|
+
@iam_checker_stub.logger
|
162
182
|
end
|
163
183
|
|
164
184
|
# Service calls
|
@@ -239,7 +259,6 @@ module Google
|
|
239
259
|
|
240
260
|
@iam_checker_stub.troubleshoot_iam_policy request, options do |result, operation|
|
241
261
|
yield result, operation if block_given?
|
242
|
-
return result
|
243
262
|
end
|
244
263
|
rescue ::Gapic::Rest::Error => e
|
245
264
|
raise ::Google::Cloud::Error.from_error(e)
|
@@ -287,6 +306,13 @@ module Google
|
|
287
306
|
# * (`Signet::OAuth2::Client`) A signet oauth2 client object
|
288
307
|
# (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
|
289
308
|
# * (`nil`) indicating no credentials
|
309
|
+
#
|
310
|
+
# Warning: If you accept a credential configuration (JSON file or Hash) from an
|
311
|
+
# external source for authentication to Google Cloud, you must validate it before
|
312
|
+
# providing it to a Google API client library. Providing an unvalidated credential
|
313
|
+
# configuration to Google APIs can compromise the security of your systems and data.
|
314
|
+
# For more information, refer to [Validate credential configurations from external
|
315
|
+
# sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
|
290
316
|
# @return [::Object]
|
291
317
|
# @!attribute [rw] scope
|
292
318
|
# The OAuth scopes
|
@@ -319,6 +345,11 @@ module Google
|
|
319
345
|
# default endpoint URL. The default value of nil uses the environment
|
320
346
|
# universe (usually the default "googleapis.com" universe).
|
321
347
|
# @return [::String,nil]
|
348
|
+
# @!attribute [rw] logger
|
349
|
+
# A custom logger to use for request/response debug logging, or the value
|
350
|
+
# `:default` (the default) to construct a default logger, or `nil` to
|
351
|
+
# explicitly disable logging.
|
352
|
+
# @return [::Logger,:default,nil]
|
322
353
|
#
|
323
354
|
class Configuration
|
324
355
|
extend ::Gapic::Config
|
@@ -340,6 +371,7 @@ module Google
|
|
340
371
|
config_attr :retry_policy, nil, ::Hash, ::Proc, nil
|
341
372
|
config_attr :quota_project, nil, ::String, nil
|
342
373
|
config_attr :universe_domain, nil, ::String, nil
|
374
|
+
config_attr :logger, :default, ::Logger, nil, :default
|
343
375
|
|
344
376
|
# @private
|
345
377
|
def initialize parent_config = nil
|
@@ -30,7 +30,8 @@ module Google
|
|
30
30
|
# including transcoding, making the REST call, and deserialing the response.
|
31
31
|
#
|
32
32
|
class ServiceStub
|
33
|
-
|
33
|
+
# @private
|
34
|
+
def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger:
|
34
35
|
# These require statements are intentionally placed here to initialize
|
35
36
|
# the REST modules only when it's required.
|
36
37
|
require "gapic/rest"
|
@@ -40,7 +41,9 @@ module Google
|
|
40
41
|
universe_domain: universe_domain,
|
41
42
|
credentials: credentials,
|
42
43
|
numeric_enums: true,
|
43
|
-
|
44
|
+
service_name: self.class,
|
45
|
+
raise_faraday_errors: false,
|
46
|
+
logger: logger
|
44
47
|
end
|
45
48
|
|
46
49
|
##
|
@@ -61,6 +64,15 @@ module Google
|
|
61
64
|
@client_stub.endpoint
|
62
65
|
end
|
63
66
|
|
67
|
+
##
|
68
|
+
# The logger used for request/response debug logging.
|
69
|
+
#
|
70
|
+
# @return [Logger]
|
71
|
+
#
|
72
|
+
def logger stub: false
|
73
|
+
stub ? @client_stub.stub_logger : @client_stub.logger
|
74
|
+
end
|
75
|
+
|
64
76
|
##
|
65
77
|
# Baseline implementation for the troubleshoot_iam_policy REST call
|
66
78
|
#
|
@@ -87,16 +99,18 @@ module Google
|
|
87
99
|
|
88
100
|
response = @client_stub.make_http_request(
|
89
101
|
verb,
|
90
|
-
uri:
|
91
|
-
body:
|
92
|
-
params:
|
102
|
+
uri: uri,
|
103
|
+
body: body || "",
|
104
|
+
params: query_string_params,
|
105
|
+
method_name: "troubleshoot_iam_policy",
|
93
106
|
options: options
|
94
107
|
)
|
95
108
|
operation = ::Gapic::Rest::TransportOperation.new response
|
96
109
|
result = ::Google::Cloud::PolicyTroubleshooter::V1::TroubleshootIamPolicyResponse.decode_json response.body, ignore_unknown_fields: true
|
97
|
-
|
98
|
-
|
99
|
-
|
110
|
+
catch :response do
|
111
|
+
yield result, operation if block_given?
|
112
|
+
result
|
113
|
+
end
|
100
114
|
end
|
101
115
|
|
102
116
|
##
|
@@ -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,12 @@ 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.
|
215
224
|
class ExperimentalFeatures
|
216
225
|
include ::Google::Protobuf::MessageExts
|
217
226
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -297,9 +306,28 @@ module Google
|
|
297
306
|
# @!attribute [rw] common
|
298
307
|
# @return [::Google::Api::CommonLanguageSettings]
|
299
308
|
# Some settings.
|
309
|
+
# @!attribute [rw] renamed_services
|
310
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
311
|
+
# Map of service names to renamed services. Keys are the package relative
|
312
|
+
# service names and values are the name to be used for the service client
|
313
|
+
# and call options.
|
314
|
+
#
|
315
|
+
# publishing:
|
316
|
+
# go_settings:
|
317
|
+
# renamed_services:
|
318
|
+
# Publisher: TopicAdmin
|
300
319
|
class GoSettings
|
301
320
|
include ::Google::Protobuf::MessageExts
|
302
321
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
322
|
+
|
323
|
+
# @!attribute [rw] key
|
324
|
+
# @return [::String]
|
325
|
+
# @!attribute [rw] value
|
326
|
+
# @return [::String]
|
327
|
+
class RenamedServicesEntry
|
328
|
+
include ::Google::Protobuf::MessageExts
|
329
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
330
|
+
end
|
303
331
|
end
|
304
332
|
|
305
333
|
# Describes the generator configuration for a method.
|
@@ -375,6 +403,17 @@ module Google
|
|
375
403
|
end
|
376
404
|
end
|
377
405
|
|
406
|
+
# This message is used to configure the generation of a subset of the RPCs in
|
407
|
+
# a service for client libraries.
|
408
|
+
# @!attribute [rw] methods
|
409
|
+
# @return [::Array<::String>]
|
410
|
+
# An allowlist of the fully qualified names of RPCs that should be included
|
411
|
+
# on public client surfaces.
|
412
|
+
class SelectiveGapicGeneration
|
413
|
+
include ::Google::Protobuf::MessageExts
|
414
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
415
|
+
end
|
416
|
+
|
378
417
|
# The organization for which the client libraries are being published.
|
379
418
|
# Affects the url where generated docs are published, etc.
|
380
419
|
module ClientLibraryOrganization
|
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-policy_troubleshooter-v1
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Google LLC
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 2025-01-29 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.
|
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.
|
28
|
+
version: 0.25.0
|
30
29
|
- - "<"
|
31
30
|
- !ruby/object:Gem::Version
|
32
31
|
version: 2.a
|
@@ -104,7 +103,6 @@ homepage: https://github.com/googleapis/google-cloud-ruby
|
|
104
103
|
licenses:
|
105
104
|
- Apache-2.0
|
106
105
|
metadata: {}
|
107
|
-
post_install_message:
|
108
106
|
rdoc_options: []
|
109
107
|
require_paths:
|
110
108
|
- lib
|
@@ -112,15 +110,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
112
110
|
requirements:
|
113
111
|
- - ">="
|
114
112
|
- !ruby/object:Gem::Version
|
115
|
-
version: '
|
113
|
+
version: '3.0'
|
116
114
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
117
115
|
requirements:
|
118
116
|
- - ">="
|
119
117
|
- !ruby/object:Gem::Version
|
120
118
|
version: '0'
|
121
119
|
requirements: []
|
122
|
-
rubygems_version: 3.
|
123
|
-
signing_key:
|
120
|
+
rubygems_version: 3.6.2
|
124
121
|
specification_version: 4
|
125
122
|
summary: API Client library for the IAM Policy Troubleshooter V1 API
|
126
123
|
test_files: []
|