Class: Google::Apis::OrgpolicyV2::GoogleCloudOrgpolicyV2PolicySpec

Inherits:
Object
  • Object
show all
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 which is used to specify constraints for configurations of Google Cloud resources.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleCloudOrgpolicyV2PolicySpec

Returns a new instance of GoogleCloudOrgpolicyV2PolicySpec.



438
439
440
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 438

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#etagString

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 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

Returns:

  • (String)


402
403
404
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 402

def etag
  @etag
end

#inherit_from_parentBoolean 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 which configure list constraints. Corresponds to the JSON property inheritFromParent

Returns:

  • (Boolean)


411
412
413
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 411

def inherit_from_parent
  @inherit_from_parent
end

#resetBoolean 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

Returns:

  • (Boolean)


420
421
422
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 420

def reset
  @reset
end

#rulesArray<Google::Apis::OrgpolicyV2::GoogleCloudOrgpolicyV2PolicySpecPolicyRule>

In policies for boolean constraints, the following requirements apply: - There must be one and only one policy rule where 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



430
431
432
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 430

def rules
  @rules
end

#update_timeString

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

Returns:

  • (String)


436
437
438
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 436

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



443
444
445
446
447
448
449
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 443

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