Module: Google::Cloud::BinaryAuthorization

Defined in:
lib/google/cloud/binary_authorization.rb,
lib/google/cloud/binary_authorization/version.rb

Constant Summary collapse

VERSION =
"2.0.1"

Class Method Summary collapse

Class Method Details

.binauthz_management_service(version: :v1, transport: :grpc, &block) ⇒ ::Object

Create a new client object for BinauthzManagementService.

By default, this returns an instance of Google::Cloud::BinaryAuthorization::V1::BinauthzManagementService::Client for a gRPC client for version V1 of the API. However, you can specify a different API version by passing it in the version parameter. If the BinauthzManagementService service is supported by that API version, and the corresponding gem is available, the appropriate versioned client will be returned. You can also specify a different transport by passing :rest or :grpc in the transport parameter.

Raises an exception if the currently installed versioned client gem for the given API version does not support the given transport of the BinauthzManagementService service. You can determine whether the method will succeed by calling binauthz_management_service_available?.

About BinauthzManagementService

Google Cloud Management Service for Binary Authorization admission policies and attestation authorities.

This API implements a REST model with the following objects:

  • Policy
  • Attestor

Parameters:

  • version (::String, ::Symbol) (defaults to: :v1)

    The API version to connect to. Optional. Defaults to :v1.

  • transport (:grpc, :rest) (defaults to: :grpc)

    The transport to use. Defaults to :grpc.

Returns:

  • (::Object)

    A client object for the specified version.



81
82
83
84
85
86
87
88
89
90
91
# File 'lib/google/cloud/binary_authorization.rb', line 81

def self.binauthz_management_service version: :v1, transport: :grpc, &block
  require "google/cloud/binary_authorization/#{version.to_s.downcase}"

  package_name = Google::Cloud::BinaryAuthorization
                 .constants
                 .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
                 .first
  service_module = Google::Cloud::BinaryAuthorization.const_get(package_name).const_get(:BinauthzManagementService)
  service_module = service_module.const_get(:Rest) if transport == :rest
  service_module.const_get(:Client).new(&block)
end

.binauthz_management_service_available?(version: :v1, transport: :grpc) ⇒ boolean

Determines whether the BinauthzManagementService service is supported by the current client. If true, you can retrieve a client object by calling binauthz_management_service. If false, that method will raise an exception. This could happen if the given API version does not exist or does not support the BinauthzManagementService service, or if the versioned client gem needs an update to support the BinauthzManagementService service.

Parameters:

  • version (::String, ::Symbol) (defaults to: :v1)

    The API version to connect to. Optional. Defaults to :v1.

  • transport (:grpc, :rest) (defaults to: :grpc)

    The transport to use. Defaults to :grpc.

Returns:

  • (boolean)

    Whether the service is available.



105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
# File 'lib/google/cloud/binary_authorization.rb', line 105

def self.binauthz_management_service_available? version: :v1, transport: :grpc
  require "google/cloud/binary_authorization/#{version.to_s.downcase}"
  package_name = Google::Cloud::BinaryAuthorization
                 .constants
                 .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
                 .first
  return false unless package_name
  service_module = Google::Cloud::BinaryAuthorization.const_get package_name
  return false unless service_module.const_defined? :BinauthzManagementService
  service_module = service_module.const_get :BinauthzManagementService
  if transport == :rest
    return false unless service_module.const_defined? :Rest
    service_module = service_module.const_get :Rest
  end
  service_module.const_defined? :Client
rescue ::LoadError
  false
end

.configure {|::Google::Cloud.configure.binary_authorization| ... } ⇒ ::Google::Cloud::Config

Configure the google-cloud-binary_authorization library.

The following configuration parameters are supported:

  • credentials (type: String, Hash, Google::Auth::Credentials) - The path to the keyfile as a String, the contents of the keyfile as a Hash, or a Google::Auth::Credentials object.
  • lib_name (type: String) - The library name as recorded in instrumentation and logging.
  • lib_version (type: String) - The library version as recorded in instrumentation and logging.
  • interceptors (type: Array<GRPC::ClientInterceptor>) - An array of interceptors that are run before calls are executed.
  • timeout (type: Numeric) - Default timeout in seconds.
  • metadata (type: Hash{Symbol=>String}) - Additional headers to be sent with the call.
  • retry_policy (type: Hash) - The retry policy. The value is a hash with the following keys:
    • :initial_delay (type: Numeric) - The initial delay in seconds.
    • :max_delay (type: Numeric) - The max delay in seconds.
    • :multiplier (type: Numeric) - The incremental backoff multiplier.
    • :retry_codes (type: Array<String>) - The error codes that should trigger a retry.

Yields:

Returns:

  • (::Google::Cloud::Config)

    The default configuration used by this library



292
293
294
295
296
# File 'lib/google/cloud/binary_authorization.rb', line 292

def self.configure
  yield ::Google::Cloud.configure.binary_authorization if block_given?

  ::Google::Cloud.configure.binary_authorization
end

.system_policy(version: :v1, transport: :grpc, &block) ⇒ ::Object

Create a new client object for SystemPolicy.

By default, this returns an instance of Google::Cloud::BinaryAuthorization::V1::SystemPolicy::Client for a gRPC client for version V1 of the API. However, you can specify a different API version by passing it in the version parameter. If the SystemPolicy service is supported by that API version, and the corresponding gem is available, the appropriate versioned client will be returned. You can also specify a different transport by passing :rest or :grpc in the transport parameter.

Raises an exception if the currently installed versioned client gem for the given API version does not support the given transport of the SystemPolicy service. You can determine whether the method will succeed by calling system_policy_available?.

About SystemPolicy

API for working with the system policy.

Parameters:

  • version (::String, ::Symbol) (defaults to: :v1)

    The API version to connect to. Optional. Defaults to :v1.

  • transport (:grpc, :rest) (defaults to: :grpc)

    The transport to use. Defaults to :grpc.

Returns:

  • (::Object)

    A client object for the specified version.



151
152
153
154
155
156
157
158
159
160
161
# File 'lib/google/cloud/binary_authorization.rb', line 151

def self.system_policy version: :v1, transport: :grpc, &block
  require "google/cloud/binary_authorization/#{version.to_s.downcase}"

  package_name = Google::Cloud::BinaryAuthorization
                 .constants
                 .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
                 .first
  service_module = Google::Cloud::BinaryAuthorization.const_get(package_name).const_get(:SystemPolicy)
  service_module = service_module.const_get(:Rest) if transport == :rest
  service_module.const_get(:Client).new(&block)
end

.system_policy_available?(version: :v1, transport: :grpc) ⇒ boolean

Determines whether the SystemPolicy service is supported by the current client. If true, you can retrieve a client object by calling system_policy. If false, that method will raise an exception. This could happen if the given API version does not exist or does not support the SystemPolicy service, or if the versioned client gem needs an update to support the SystemPolicy service.

Parameters:

  • version (::String, ::Symbol) (defaults to: :v1)

    The API version to connect to. Optional. Defaults to :v1.

  • transport (:grpc, :rest) (defaults to: :grpc)

    The transport to use. Defaults to :grpc.

Returns:

  • (boolean)

    Whether the service is available.



175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
# File 'lib/google/cloud/binary_authorization.rb', line 175

def self.system_policy_available? version: :v1, transport: :grpc
  require "google/cloud/binary_authorization/#{version.to_s.downcase}"
  package_name = Google::Cloud::BinaryAuthorization
                 .constants
                 .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
                 .first
  return false unless package_name
  service_module = Google::Cloud::BinaryAuthorization.const_get package_name
  return false unless service_module.const_defined? :SystemPolicy
  service_module = service_module.const_get :SystemPolicy
  if transport == :rest
    return false unless service_module.const_defined? :Rest
    service_module = service_module.const_get :Rest
  end
  service_module.const_defined? :Client
rescue ::LoadError
  false
end

.validation_helper(version: :v1, transport: :grpc, &block) ⇒ ::Object

Create a new client object for ValidationHelper.

By default, this returns an instance of Google::Cloud::BinaryAuthorization::V1::ValidationHelper::Client for a gRPC client for version V1 of the API. However, you can specify a different API version by passing it in the version parameter. If the ValidationHelper service is supported by that API version, and the corresponding gem is available, the appropriate versioned client will be returned. You can also specify a different transport by passing :rest or :grpc in the transport parameter.

Raises an exception if the currently installed versioned client gem for the given API version does not support the given transport of the ValidationHelper service. You can determine whether the method will succeed by calling validation_helper_available?.

About ValidationHelper

BinAuthz Attestor verification

Parameters:

  • version (::String, ::Symbol) (defaults to: :v1)

    The API version to connect to. Optional. Defaults to :v1.

  • transport (:grpc, :rest) (defaults to: :grpc)

    The transport to use. Defaults to :grpc.

Returns:

  • (::Object)

    A client object for the specified version.



221
222
223
224
225
226
227
228
229
230
231
# File 'lib/google/cloud/binary_authorization.rb', line 221

def self.validation_helper version: :v1, transport: :grpc, &block
  require "google/cloud/binary_authorization/#{version.to_s.downcase}"

  package_name = Google::Cloud::BinaryAuthorization
                 .constants
                 .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
                 .first
  service_module = Google::Cloud::BinaryAuthorization.const_get(package_name).const_get(:ValidationHelper)
  service_module = service_module.const_get(:Rest) if transport == :rest
  service_module.const_get(:Client).new(&block)
end

.validation_helper_available?(version: :v1, transport: :grpc) ⇒ boolean

Determines whether the ValidationHelper service is supported by the current client. If true, you can retrieve a client object by calling validation_helper. If false, that method will raise an exception. This could happen if the given API version does not exist or does not support the ValidationHelper service, or if the versioned client gem needs an update to support the ValidationHelper service.

Parameters:

  • version (::String, ::Symbol) (defaults to: :v1)

    The API version to connect to. Optional. Defaults to :v1.

  • transport (:grpc, :rest) (defaults to: :grpc)

    The transport to use. Defaults to :grpc.

Returns:

  • (boolean)

    Whether the service is available.



245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
# File 'lib/google/cloud/binary_authorization.rb', line 245

def self.validation_helper_available? version: :v1, transport: :grpc
  require "google/cloud/binary_authorization/#{version.to_s.downcase}"
  package_name = Google::Cloud::BinaryAuthorization
                 .constants
                 .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") }
                 .first
  return false unless package_name
  service_module = Google::Cloud::BinaryAuthorization.const_get package_name
  return false unless service_module.const_defined? :ValidationHelper
  service_module = service_module.const_get :ValidationHelper
  if transport == :rest
    return false unless service_module.const_defined? :Rest
    service_module = service_module.const_get :Rest
  end
  service_module.const_defined? :Client
rescue ::LoadError
  false
end