Class: Google::Apis::OsconfigV1alpha::OsPolicy

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/osconfig_v1alpha/classes.rb,
lib/google/apis/osconfig_v1alpha/representations.rb,
lib/google/apis/osconfig_v1alpha/representations.rb

Overview

An OS policy defines the desired state configuration for a VM.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ OsPolicy

Returns a new instance of OsPolicy.



1074
1075
1076
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1074

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

Instance Attribute Details

#allow_no_resource_group_matchBoolean Also known as: allow_no_resource_group_match?

This flag determines the OS policy compliance status when none of the resource groups within the policy are applicable for a VM. Set this value to true if the policy needs to be reported as compliant even if the policy has nothing to validate or enforce. Corresponds to the JSON property allowNoResourceGroupMatch

Returns:

  • (Boolean)


1043
1044
1045
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1043

def allow_no_resource_group_match
  @allow_no_resource_group_match
end

#descriptionString

Policy description. Length of the description is limited to 1024 characters. Corresponds to the JSON property description

Returns:

  • (String)


1049
1050
1051
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1049

def description
  @description
end

#idString

Required. The id of the OS policy with the following restrictions: * Must contain only lowercase letters, numbers, and hyphens. * Must start with a letter. * Must be between 1-63 characters. * Must end with a number or a letter. * Must be unique within the assignment. Corresponds to the JSON property id

Returns:

  • (String)


1057
1058
1059
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1057

def id
  @id
end

#modeString

Required. Policy mode Corresponds to the JSON property mode

Returns:

  • (String)


1062
1063
1064
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1062

def mode
  @mode
end

#resource_groupsArray<Google::Apis::OsconfigV1alpha::OsPolicyResourceGroup>

Required. List of resource groups for the policy. For a particular VM, resource groups are evaluated in the order specified and the first resource group that is applicable is selected and the rest are ignored. If none of the resource groups are applicable for a VM, the VM is considered to be non- compliant w.r.t this policy. This behavior can be toggled by the flag allow_no_resource_group_match Corresponds to the JSON property resourceGroups



1072
1073
1074
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1072

def resource_groups
  @resource_groups
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1079
1080
1081
1082
1083
1084
1085
# File 'lib/google/apis/osconfig_v1alpha/classes.rb', line 1079

def update!(**args)
  @allow_no_resource_group_match = args[:allow_no_resource_group_match] if args.key?(:allow_no_resource_group_match)
  @description = args[:description] if args.key?(:description)
  @id = args[:id] if args.key?(:id)
  @mode = args[:mode] if args.key?(:mode)
  @resource_groups = args[:resource_groups] if args.key?(:resource_groups)
end