module Google::Cloud::OrgPolicy
Constants
- VERSION
Public Class Methods
Configure the google-cloud-org_policy 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 gRPC 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.
@return [::Google::Cloud::Config] The default configuration used by this library
# File lib/google/cloud/org_policy.rb, line 124 def self.configure yield ::Google::Cloud.configure.org_policy if block_given? ::Google::Cloud.configure.org_policy end
Create a new client object for OrgPolicy
.
By default, this returns an instance of [Google::Cloud::OrgPolicy::V2::OrgPolicy::Client](googleapis.dev/ruby/google-cloud-org_policy-v2/latest/Google/Cloud/OrgPolicy/V2/OrgPolicy/Client.html) for version V2 of the API. However, you can specify specify a different API version by passing it in the `version` parameter. If the OrgPolicy
service is supported by that API version, and the corresponding gem is available, the appropriate versioned client will be returned.
## About OrgPolicy
An interface for managing organization policies.
The Cloud
Org Policy service provides a simple mechanism for organizations to restrict the allowed configurations across their entire Cloud
Resource hierarchy.
You can use a `policy` to configure restrictions in Cloud
resources. For example, you can enforce a `policy` that restricts which Google
Cloud
Platform APIs can be activated in a certain part of your resource hierarchy, or prevents serial port access to VM instances in a particular folder.
`Policies` are inherited down through the resource hierarchy. A `policy` applied to a parent resource automatically applies to all its child resources unless overridden with a `policy` lower in the hierarchy.
A `constraint` defines an aspect of a resource's configuration that can be controlled by an organization's policy administrator. `Policies` are a collection of `constraints` that defines their allowable configuration on a particular resource and its child resources.
@param version [::String, ::Symbol] The API version to connect to. Optional.
Defaults to `:v2`.
@return [OrgPolicy::Client] A client object for the specified version.
# File lib/google/cloud/org_policy.rb, line 85 def self.org_policy version: :v2, &block require "google/cloud/org_policy/#{version.to_s.downcase}" package_name = Google::Cloud::OrgPolicy .constants .select { |sym| sym.to_s.downcase == version.to_s.downcase.tr("_", "") } .first package_module = Google::Cloud::OrgPolicy.const_get package_name package_module.const_get(:OrgPolicy).const_get(:Client).new(&block) end