Class: Google::Apis::OrgpolicyV2::GoogleCloudOrgpolicyV2PolicySpec
- Inherits:
-
Object
- Object
- Google::Apis::OrgpolicyV2::GoogleCloudOrgpolicyV2PolicySpec
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/orgpolicy_v2/classes.rb,
lib/google/apis/orgpolicy_v2/representations.rb,
lib/google/apis/orgpolicy_v2/representations.rb
Overview
Defines a Google Cloud policy specification that is used to specify constraints for configurations of Google Cloud resources.
Instance Attribute Summary collapse
-
#etag ⇒ String
An opaque tag indicating the current version of the policySpec, used for concurrency control.
-
#inherit_from_parent ⇒ Boolean
(also: #inherit_from_parent?)
Determines the inheritance behavior for this policy.
-
#reset ⇒ Boolean
(also: #reset?)
Ignores policies set above this resource and restores the
constraint_defaultenforcement behavior of the specific constraint at this resource. -
#rules ⇒ Array<Google::Apis::OrgpolicyV2::GoogleCloudOrgpolicyV2PolicySpecPolicyRule>
In policies for boolean constraints, the following requirements apply: - There must be exactly one policy rule where a condition is unset.
-
#update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudOrgpolicyV2PolicySpec
constructor
A new instance of GoogleCloudOrgpolicyV2PolicySpec.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleCloudOrgpolicyV2PolicySpec
Returns a new instance of GoogleCloudOrgpolicyV2PolicySpec.
574 575 576 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 574 def initialize(**args) update!(**args) end |
Instance Attribute Details
#etag ⇒ String
An opaque tag indicating the current version of the policySpec, used for
concurrency control. This field is ignored if used in a CreatePolicy request.
When the policy is returned from either a GetPolicy or a ListPolicies
request, this entity tag (ETag) indicates the version of the current
policySpec to use when executing a read-modify-write loop. When the policy is
returned from a GetEffectivePolicy request, the ETag will be unset.
Corresponds to the JSON property etag
538 539 540 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 538 def etag @etag end |
#inherit_from_parent ⇒ Boolean Also known as: inherit_from_parent?
Determines the inheritance behavior for this policy. If inherit_from_parent
is true, policy rules set higher up in the hierarchy (up to the closest root)
are inherited and present in the effective policy. If it is false, then no
rules are inherited, and this policy becomes the new root for evaluation. This
field can be set only for policies that configure list constraints.
Corresponds to the JSON property inheritFromParent
547 548 549 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 547 def inherit_from_parent @inherit_from_parent end |
#reset ⇒ Boolean Also known as: reset?
Ignores policies set above this resource and restores the constraint_default
enforcement behavior of the specific constraint at this resource. This field
can be set in policies for either list or boolean constraints. If set, rules
must be empty and inherit_from_parent must be set to false.
Corresponds to the JSON property reset
556 557 558 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 556 def reset @reset end |
#rules ⇒ Array<Google::Apis::OrgpolicyV2::GoogleCloudOrgpolicyV2PolicySpecPolicyRule>
In policies for boolean constraints, the following requirements apply: - There
must be exactly one policy rule where a condition is unset. - Boolean policy
rules with conditions must set enforced to the opposite of the policy rule
without a condition. - During policy evaluation, policy rules with conditions
that are true for a target resource take precedence.
Corresponds to the JSON property rules
566 567 568 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 566 def rules @rules end |
#update_time ⇒ String
Output only. The time stamp this was previously updated. This represents the
last time a call to CreatePolicy or UpdatePolicy was made for that policy.
Corresponds to the JSON property updateTime
572 573 574 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 572 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
579 580 581 582 583 584 585 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 579 def update!(**args) @etag = args[:etag] if args.key?(:etag) @inherit_from_parent = args[:inherit_from_parent] if args.key?(:inherit_from_parent) @reset = args[:reset] if args.key?(:reset) @rules = args[:rules] if args.key?(:rules) @update_time = args[:update_time] if args.key?(:update_time) end |