Class: Google::Apis::OsconfigV2::OsPolicyAssignmentInstanceFilter

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

Overview

Filters to select target VMs for an assignment. If more than one filter criteria is specified below, a VM will be selected if and only if it satisfies all of them.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ OsPolicyAssignmentInstanceFilter

Returns a new instance of OsPolicyAssignmentInstanceFilter.



870
871
872
# File 'lib/google/apis/osconfig_v2/classes.rb', line 870

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

Instance Attribute Details

#allBoolean Also known as: all?

Target all VMs in the project. If true, no other criteria is permitted. Corresponds to the JSON property all

Returns:

  • (Boolean)


848
849
850
# File 'lib/google/apis/osconfig_v2/classes.rb', line 848

def all
  @all
end

#exclusion_labelsArray<Google::Apis::OsconfigV2::OsPolicyAssignmentLabelSet>

List of label sets used for VM exclusion. If the list has more than one label set, the VM is excluded if any of the label sets are applicable for the VM. Corresponds to the JSON property exclusionLabels



855
856
857
# File 'lib/google/apis/osconfig_v2/classes.rb', line 855

def exclusion_labels
  @exclusion_labels
end

#inclusion_labelsArray<Google::Apis::OsconfigV2::OsPolicyAssignmentLabelSet>

List of label sets used for VM inclusion. If the list has more than one LabelSet, the VM is included if any of the label sets are applicable for the VM. Corresponds to the JSON property inclusionLabels



862
863
864
# File 'lib/google/apis/osconfig_v2/classes.rb', line 862

def inclusion_labels
  @inclusion_labels
end

#inventoriesArray<Google::Apis::OsconfigV2::OsPolicyAssignmentInstanceFilterInventory>

List of inventories to select VMs. A VM is selected if its inventory data matches at least one of the following inventories. Corresponds to the JSON property inventories



868
869
870
# File 'lib/google/apis/osconfig_v2/classes.rb', line 868

def inventories
  @inventories
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



875
876
877
878
879
880
# File 'lib/google/apis/osconfig_v2/classes.rb', line 875

def update!(**args)
  @all = args[:all] if args.key?(:all)
  @exclusion_labels = args[:exclusion_labels] if args.key?(:exclusion_labels)
  @inclusion_labels = args[:inclusion_labels] if args.key?(:inclusion_labels)
  @inventories = args[:inventories] if args.key?(:inventories)
end