google-cloud-security-public_ca-v1beta1 0.6.1 → 0.8.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ab5be5a74ec53b91340c274d85723d05aba4c7236ab558e2be048ed3320f3370
4
- data.tar.gz: 6bda528c3b37e1123b7aa802597a7fc60aedae89e81e7464f85ab177fe251b8e
3
+ metadata.gz: 47756bb0edaaeb3b8be13c6b37e8ace14ea91d5ff29cba9ba9af064d07b07ce0
4
+ data.tar.gz: f5f5b1899c8f15239e7a536f8f1e55fe50430aca96c31ebb922536e8482781b7
5
5
  SHA512:
6
- metadata.gz: 4bcbc1d890d2fff41d90f2234112f61501a8f5d61f3b390a93aec43dc2eb4811aa98f728b92bb8b5019052e84a3f19065077744868b3f9187da389b40e0ad8a6
7
- data.tar.gz: 6d367b122c7a46c74731cbb772a6eae2d908e916587d126531eaa14adba1611f405c6d925a558e9a05562c9daa9604f45480de1e39d9c77b72c544302dea0031
6
+ metadata.gz: b19ab1613deacf9ba117e82918378ad2397092fbf3664ad853d2deb335aa1888ab3bf5a643ad7fea0469def786858256117828558d2492ae0729d4bcd70f70d4
7
+ data.tar.gz: 59a6d6ca4c3f44ed795bb09b547906ca245a68d3408323130f830107540c373015852e3b22d4ada2092ce046190fc43b34a793fe94e28b2ae0c88d7e248874f2
data/README.md CHANGED
@@ -43,40 +43,50 @@ for class and method documentation.
43
43
  See also the [Product Documentation](https://cloud.google.com/certificate-manager/docs/public-ca/)
44
44
  for general usage information.
45
45
 
46
- ## Enabling Logging
47
-
48
- To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
49
- The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/current/stdlibs/logger/Logger.html) as shown below,
50
- or a [`Google::Cloud::Logging::Logger`](https://cloud.google.com/ruby/docs/reference/google-cloud-logging/latest)
51
- that will write logs to [Cloud Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
52
- and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
53
-
54
- Configuring a Ruby stdlib logger:
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/security/public_ca/v1beta1"
57
76
  require "logger"
58
77
 
59
- module MyLogger
60
- LOGGER = Logger.new $stderr, level: Logger::WARN
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::Security::PublicCA::V1beta1::PublicCertificateAuthorityService::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 2.7+.
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
@@ -165,8 +165,28 @@ module Google
165
165
  universe_domain: @config.universe_domain,
166
166
  channel_args: @config.channel_args,
167
167
  interceptors: @config.interceptors,
168
- channel_pool_config: @config.channel_pool
168
+ channel_pool_config: @config.channel_pool,
169
+ logger: @config.logger
169
170
  )
171
+
172
+ @public_certificate_authority_service_stub.stub_logger&.info do |entry|
173
+ entry.set_system_name
174
+ entry.set_service
175
+ entry.message = "Created client for #{entry.service}"
176
+ entry.set_credentials_fields credentials
177
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
178
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
179
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
180
+ end
181
+ end
182
+
183
+ ##
184
+ # The logger used for request/response debug logging.
185
+ #
186
+ # @return [Logger]
187
+ #
188
+ def logger
189
+ @public_certificate_authority_service_stub.logger
170
190
  end
171
191
 
172
192
  # Service calls
@@ -258,7 +278,6 @@ module Google
258
278
 
259
279
  @public_certificate_authority_service_stub.call_rpc :create_external_account_key, request, options: options do |response, operation|
260
280
  yield response, operation if block_given?
261
- return response
262
281
  end
263
282
  rescue ::GRPC::BadStatus => e
264
283
  raise ::Google::Cloud::Error.from_error(e)
@@ -308,6 +327,13 @@ module Google
308
327
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
309
328
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
310
329
  # * (`nil`) indicating no credentials
330
+ #
331
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
332
+ # external source for authentication to Google Cloud, you must validate it before
333
+ # providing it to a Google API client library. Providing an unvalidated credential
334
+ # configuration to Google APIs can compromise the security of your systems and data.
335
+ # For more information, refer to [Validate credential configurations from external
336
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
311
337
  # @return [::Object]
312
338
  # @!attribute [rw] scope
313
339
  # The OAuth scopes
@@ -347,6 +373,11 @@ module Google
347
373
  # default endpoint URL. The default value of nil uses the environment
348
374
  # universe (usually the default "googleapis.com" universe).
349
375
  # @return [::String,nil]
376
+ # @!attribute [rw] logger
377
+ # A custom logger to use for request/response debug logging, or the value
378
+ # `:default` (the default) to construct a default logger, or `nil` to
379
+ # explicitly disable logging.
380
+ # @return [::Logger,:default,nil]
350
381
  #
351
382
  class Configuration
352
383
  extend ::Gapic::Config
@@ -371,6 +402,7 @@ module Google
371
402
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
372
403
  config_attr :quota_project, nil, ::String, nil
373
404
  config_attr :universe_domain, nil, ::String, nil
405
+ config_attr :logger, :default, ::Logger, nil, :default
374
406
 
375
407
  # @private
376
408
  def initialize parent_config = nil
@@ -158,8 +158,28 @@ module Google
158
158
  endpoint: @config.endpoint,
159
159
  endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
160
160
  universe_domain: @config.universe_domain,
161
- credentials: credentials
161
+ credentials: credentials,
162
+ logger: @config.logger
162
163
  )
164
+
165
+ @public_certificate_authority_service_stub.logger(stub: true)&.info do |entry|
166
+ entry.set_system_name
167
+ entry.set_service
168
+ entry.message = "Created client for #{entry.service}"
169
+ entry.set_credentials_fields credentials
170
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
171
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
172
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
173
+ end
174
+ end
175
+
176
+ ##
177
+ # The logger used for request/response debug logging.
178
+ #
179
+ # @return [Logger]
180
+ #
181
+ def logger
182
+ @public_certificate_authority_service_stub.logger
163
183
  end
164
184
 
165
185
  # Service calls
@@ -244,7 +264,6 @@ module Google
244
264
 
245
265
  @public_certificate_authority_service_stub.create_external_account_key request, options do |result, operation|
246
266
  yield result, operation if block_given?
247
- return result
248
267
  end
249
268
  rescue ::Gapic::Rest::Error => e
250
269
  raise ::Google::Cloud::Error.from_error(e)
@@ -292,6 +311,13 @@ module Google
292
311
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
293
312
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
294
313
  # * (`nil`) indicating no credentials
314
+ #
315
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
316
+ # external source for authentication to Google Cloud, you must validate it before
317
+ # providing it to a Google API client library. Providing an unvalidated credential
318
+ # configuration to Google APIs can compromise the security of your systems and data.
319
+ # For more information, refer to [Validate credential configurations from external
320
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
295
321
  # @return [::Object]
296
322
  # @!attribute [rw] scope
297
323
  # The OAuth scopes
@@ -324,6 +350,11 @@ module Google
324
350
  # default endpoint URL. The default value of nil uses the environment
325
351
  # universe (usually the default "googleapis.com" universe).
326
352
  # @return [::String,nil]
353
+ # @!attribute [rw] logger
354
+ # A custom logger to use for request/response debug logging, or the value
355
+ # `:default` (the default) to construct a default logger, or `nil` to
356
+ # explicitly disable logging.
357
+ # @return [::Logger,:default,nil]
327
358
  #
328
359
  class Configuration
329
360
  extend ::Gapic::Config
@@ -345,6 +376,7 @@ module Google
345
376
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
346
377
  config_attr :quota_project, nil, ::String, nil
347
378
  config_attr :universe_domain, nil, ::String, nil
379
+ config_attr :logger, :default, ::Logger, nil, :default
348
380
 
349
381
  # @private
350
382
  def initialize parent_config = nil
@@ -31,7 +31,8 @@ module Google
31
31
  # including transcoding, making the REST call, and deserialing the response.
32
32
  #
33
33
  class ServiceStub
34
- def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
34
+ # @private
35
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger:
35
36
  # These require statements are intentionally placed here to initialize
36
37
  # the REST modules only when it's required.
37
38
  require "gapic/rest"
@@ -41,7 +42,9 @@ module Google
41
42
  universe_domain: universe_domain,
42
43
  credentials: credentials,
43
44
  numeric_enums: true,
44
- raise_faraday_errors: false
45
+ service_name: self.class,
46
+ raise_faraday_errors: false,
47
+ logger: logger
45
48
  end
46
49
 
47
50
  ##
@@ -62,6 +65,15 @@ module Google
62
65
  @client_stub.endpoint
63
66
  end
64
67
 
68
+ ##
69
+ # The logger used for request/response debug logging.
70
+ #
71
+ # @return [Logger]
72
+ #
73
+ def logger stub: false
74
+ stub ? @client_stub.stub_logger : @client_stub.logger
75
+ end
76
+
65
77
  ##
66
78
  # Baseline implementation for the create_external_account_key REST call
67
79
  #
@@ -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: "create_external_account_key",
94
107
  options: options
95
108
  )
96
109
  operation = ::Gapic::Rest::TransportOperation.new response
97
110
  result = ::Google::Cloud::Security::PublicCA::V1beta1::ExternalAccountKey.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
  ##
@@ -22,7 +22,7 @@ module Google
22
22
  module Security
23
23
  module PublicCA
24
24
  module V1beta1
25
- VERSION = "0.6.1"
25
+ VERSION = "0.8.0"
26
26
  end
27
27
  end
28
28
  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,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-security-public_ca-v1beta1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.1
4
+ version: 0.8.0
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: 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.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
@@ -88,7 +87,6 @@ homepage: https://github.com/googleapis/google-cloud-ruby
88
87
  licenses:
89
88
  - Apache-2.0
90
89
  metadata: {}
91
- post_install_message:
92
90
  rdoc_options: []
93
91
  require_paths:
94
92
  - lib
@@ -96,15 +94,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
96
94
  requirements:
97
95
  - - ">="
98
96
  - !ruby/object:Gem::Version
99
- version: '2.7'
97
+ version: '3.0'
100
98
  required_rubygems_version: !ruby/object:Gem::Requirement
101
99
  requirements:
102
100
  - - ">="
103
101
  - !ruby/object:Gem::Version
104
102
  version: '0'
105
103
  requirements: []
106
- rubygems_version: 3.5.6
107
- signing_key:
104
+ rubygems_version: 3.6.2
108
105
  specification_version: 4
109
106
  summary: The Public Certificate Authority API may be used to create and manage ACME
110
107
  external account binding keys associated with Google Trust Services' publicly trusted