Class: Azure::Hdinsight::Mgmt::V2018_06_01_preview::Models::VmSizeCompatibilityFilterV2

Inherits:
Object
  • Object
show all
Includes:
MsRestAzure
Defined in:
lib/2018-06-01-preview/generated/azure_mgmt_hdinsight/models/vm_size_compatibility_filter_v2.rb

Overview

This class represent a single filter object that defines a multidimensional set. The dimensions of this set are Regions, ClusterFlavors, NodeTypes and ClusterVersions. The constraint should be defined based on the following: FilterMode (Exclude vs Include), VMSizes (the vm sizes in affect of exclusion/inclusion) and the ordering of the Filters. Later filters override previous settings if conflicted.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Attribute Details

#cluster_flavorsArray<String>

the filter.

Returns:

  • (Array<String>)

    The list of cluster flavors under the effect of



31
32
33
# File 'lib/2018-06-01-preview/generated/azure_mgmt_hdinsight/models/vm_size_compatibility_filter_v2.rb', line 31

def cluster_flavors
  @cluster_flavors
end

#cluster_versionsArray<String>

Major.Minor format.

Returns:

  • (Array<String>)

    The list of cluster versions affected in



38
39
40
# File 'lib/2018-06-01-preview/generated/azure_mgmt_hdinsight/models/vm_size_compatibility_filter_v2.rb', line 38

def cluster_versions
  @cluster_versions
end

#filter_modeFilterMode

or disabling the VM sizes in a particular set. Possible values include: ‘Exclude’, ‘Include’, ‘Recommend’, ‘Default’

Returns:

  • (FilterMode)

    The filtering mode. Effectively this can enabling



23
24
25
# File 'lib/2018-06-01-preview/generated/azure_mgmt_hdinsight/models/vm_size_compatibility_filter_v2.rb', line 23

def filter_mode
  @filter_mode
end

#node_typesArray<String>

Returns The list of node types affected by the filter.

Returns:

  • (Array<String>)

    The list of node types affected by the filter.



34
35
36
# File 'lib/2018-06-01-preview/generated/azure_mgmt_hdinsight/models/vm_size_compatibility_filter_v2.rb', line 34

def node_types
  @node_types
end

#os_typeArray<OSType>

Returns The OSType affected, Windows or Linux.

Returns:

  • (Array<OSType>)

    The OSType affected, Windows or Linux.



41
42
43
# File 'lib/2018-06-01-preview/generated/azure_mgmt_hdinsight/models/vm_size_compatibility_filter_v2.rb', line 41

def os_type
  @os_type
end

#regionsArray<String>

filter.

Returns:

  • (Array<String>)

    The list of regions under the effect of the



27
28
29
# File 'lib/2018-06-01-preview/generated/azure_mgmt_hdinsight/models/vm_size_compatibility_filter_v2.rb', line 27

def regions
  @regions
end

#vm_sizesArray<String>

exclude.

Returns:

  • (Array<String>)

    The list of virtual machine sizes to include or



45
46
47
# File 'lib/2018-06-01-preview/generated/azure_mgmt_hdinsight/models/vm_size_compatibility_filter_v2.rb', line 45

def vm_sizes
  @vm_sizes
end

Class Method Details

.mapperObject

Mapper for VmSizeCompatibilityFilterV2 class as Ruby Hash. This will be used for serialization/deserialization.



52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
# File 'lib/2018-06-01-preview/generated/azure_mgmt_hdinsight/models/vm_size_compatibility_filter_v2.rb', line 52

def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'VmSizeCompatibilityFilterV2',
    type: {
      name: 'Composite',
      class_name: 'VmSizeCompatibilityFilterV2',
      model_properties: {
        filter_mode: {
          client_side_validation: true,
          required: false,
          serialized_name: 'filterMode',
          type: {
            name: 'String'
          }
        },
        regions: {
          client_side_validation: true,
          required: false,
          serialized_name: 'regions',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        cluster_flavors: {
          client_side_validation: true,
          required: false,
          serialized_name: 'clusterFlavors',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        node_types: {
          client_side_validation: true,
          required: false,
          serialized_name: 'nodeTypes',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        cluster_versions: {
          client_side_validation: true,
          required: false,
          serialized_name: 'clusterVersions',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        os_type: {
          client_side_validation: true,
          required: false,
          serialized_name: 'osType',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'OSTypeElementType',
                type: {
                  name: 'Enum',
                  module: 'OSType'
                }
            }
          }
        },
        vm_sizes: {
          client_side_validation: true,
          required: false,
          serialized_name: 'vmSizes',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        }
      }
    }
  }
end