Class: Google::Apis::OrgpolicyV2::GoogleCloudOrgpolicyV2CustomConstraint
- Inherits:
-
Object
- Object
- Google::Apis::OrgpolicyV2::GoogleCloudOrgpolicyV2CustomConstraint
- 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
A custom constraint defined by customers which can only be applied to the given resource types and organization. By creating a custom constraint, customers can apply policies of this custom constraint. Creating a custom constraint itself does NOT apply any policy enforcement.
Instance Attribute Summary collapse
-
#action_type ⇒ String
Allow or deny type.
-
#condition ⇒ String
Org policy condition/expression.
-
#description ⇒ String
Detailed information about this custom policy constraint.
-
#display_name ⇒ String
One line display name for the UI.
-
#method_types ⇒ Array<String>
All the operations being applied for this constraint.
-
#name ⇒ String
Immutable.
-
#resource_types ⇒ Array<String>
Immutable.
-
#update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudOrgpolicyV2CustomConstraint
constructor
A new instance of GoogleCloudOrgpolicyV2CustomConstraint.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleCloudOrgpolicyV2CustomConstraint
Returns a new instance of GoogleCloudOrgpolicyV2CustomConstraint.
234 235 236 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 234 def initialize(**args) update!(**args) end |
Instance Attribute Details
#action_type ⇒ String
Allow or deny type.
Corresponds to the JSON property actionType
185 186 187 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 185 def action_type @action_type end |
#condition ⇒ String
Org policy condition/expression. For example: resource.instanceName.matches("[
production|test]_.*_(\d)+") or, resource.management.auto_upgrade == true
The max length of the condition is 1000 characters.
Corresponds to the JSON property condition
192 193 194 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 192 def condition @condition end |
#description ⇒ String
Detailed information about this custom policy constraint. The max length of
the description is 2000 characters.
Corresponds to the JSON property description
198 199 200 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 198 def description @description end |
#display_name ⇒ String
One line display name for the UI. The max length of the display_name is 200
characters.
Corresponds to the JSON property displayName
204 205 206 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 204 def display_name @display_name end |
#method_types ⇒ Array<String>
All the operations being applied for this constraint.
Corresponds to the JSON property methodTypes
209 210 211 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 209 def method_types @method_types end |
#name ⇒ String
Immutable. Name of the constraint. This is unique within the organization.
Format of the name should be * organizations/organization_id/
customConstraints/custom_constraint_id`Example:organizations/123/
customConstraints/custom.createOnlyE2TypeVmsThe max length is 70 characters
and the minimum length is 1. Note that the prefixorganizations/
organization_id/customConstraints/is not counted.
Corresponds to the JSON propertyname`
219 220 221 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 219 def name @name end |
#resource_types ⇒ Array<String>
Immutable. The resource instance type on which this policy applies. Format
will be of the form : / Example: * compute.googleapis.com/Instance.
Corresponds to the JSON property resourceTypes
225 226 227 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 225 def resource_types @resource_types end |
#update_time ⇒ String
Output only. The last time this custom constraint was updated. This represents
the last time that the CreateCustomConstraint or UpdateCustomConstraint
RPC was called
Corresponds to the JSON property updateTime
232 233 234 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 232 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
239 240 241 242 243 244 245 246 247 248 |
# File 'lib/google/apis/orgpolicy_v2/classes.rb', line 239 def update!(**args) @action_type = args[:action_type] if args.key?(:action_type) @condition = args[:condition] if args.key?(:condition) @description = args[:description] if args.key?(:description) @display_name = args[:display_name] if args.key?(:display_name) @method_types = args[:method_types] if args.key?(:method_types) @name = args[:name] if args.key?(:name) @resource_types = args[:resource_types] if args.key?(:resource_types) @update_time = args[:update_time] if args.key?(:update_time) end |