Class: PuppetX::VMware::Mapper::IpPoolMap

Inherits:
Map
  • Object
show all
Defined in:
lib/puppet_x/vmware/mapper/ip_pool_map.rb

Instance Attribute Summary

Attributes inherited from Map

#leaf_list, #node_list

Instance Method Summary collapse

Methods inherited from Map

#annotate_is_now, #objectify

Constructor Details

#initializeIpPoolMap

Returns a new instance of IpPoolMap.



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
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
# File 'lib/puppet_x/vmware/mapper/ip_pool_map.rb', line 5

def initialize
  @initTree = {
    Node => NodeData[
	  :node_type => 'IpPool',
    ],
    :allocatedIpv4Addresses => LeafData[
	  :desc => 'The number of allocated IPv4 addresses',
	],
    :allocatedIpv6Addresses => LeafData[
	  :desc => 'The number of allocated IPv6 addresses',
	],
    :availableIpv4Addresses => LeafData[
	  :desc => 'The number of IPv4 addresses available for allocation',
	],
    :availableIpv6Addresses => LeafData[
	  :desc => 'The number of IPv6 addresses available for allocation',
	],
    :dnsDomain => LeafData[
	  :desc => 'DNS Domain. For example, vmware.com. This can be an empty string if no domain is configured',
	],
    :dnsSearchPath => LeafData[
	  :desc => 'DNS Search Path. For example, eng.vmware.com;vmware.com',
	],
    :hostPrefix => LeafData[
	  :desc => 'Prefix for hostnames',
	],
    :httpProxy => LeafData[
	  :desc => 'The HTTP proxy to use on this network, e.g., :',
	],
    :ipv4Config => {
	  Node => NodeData[
        :node_type => 'IpPoolIpPoolConfigInfo',
      ],
	  :dhcpServerAvailable => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'Whether a DHCP server is available on this network',
 :valid_enum => [:true, :false]
	  ],
	  :dns => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'DNS servers. For example: ["10.20.0.1", "10.20.0.2"]',
 :olio => {
   Puppet::Property::VMware_Array => {
     :property_option => {
 	  :inclusive => :true,
:preserve  => :false,	
       },
   },
 },
	  ],
	  :gateway => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'Gateway. This can be an empty string - if no gateway is configured. For example: 192.168.5.1',
	  ],
	  :ipPoolEnabled => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'IP addresses can only be allocated from the range if the IP pool is enabled',
 :valid_enum => [:true, :false]
	  ],
	  :netmask => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'Netmask. For example: 255.255.255.0',
	  ],
	  :range => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'IP range. This is specified as a set of ranges separated with commas. One range is given by a start address, a hash (#), and the length of the range. For example: 192.0.2.235 # 20 is the IPv4 range from 192.0.2.235 to 192.0.2.254',
	  ],
	  :subnetAddress => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'Address of the subnet. For example: 192.168.5.0',
	  ],
	},
    :ipv6Config => {
	  Node => NodeData[
        :node_type => 'IpPoolIpPoolConfigInfo',
      ],
	  :dhcpServerAvailable => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'Whether a DHCP server is available on this network',
 :valid_enum => [:true, :false]
	  ],
	  :dns => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'DNS servers. For example: ["2001:0db8:85a3::0370:7334", "2001:0db8:85a3::0370:7335"]',
 :olio => {
   Puppet::Property::VMware_Array => {
     :property_option => {
 	  :inclusive => :true,
:preserve  => :false,	
       },
   },
 },
	  ],
	  :gateway => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'Gateway. This can be an empty string - if no gateway is configured. For example: 2001:0db8:85a3::1',
	  ],
	  :ipPoolEnabled => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'IP addresses can only be allocated from the range if the IP pool is enabled',
 :valid_enum => [:true, :false]
	  ],
	  :netmask => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'Netmask. For example: ffff:ffff:ffff::',
	  ],
	  :range => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'IP range. This is specified as a set of ranges separated with commas. One range is given by a start address, a hash (#), and the length of the range. For example: 2001::7334 # 20 is the IPv6 range from 2001::7334 to 2001::7347',
	  ],
	  :subnetAddress => LeafData[
 :prop_name => PROP_NAME_IS_FULL_PATH,
 :desc => 'Address of the subnet. For example: 2001:0db8:85a3::',
	  ],
	},
    :networkAssociation => LeafData[
      :prop_name => PROP_NAME_IS_FULL_PATH,
	  :olio => {
 Puppet::Property::VMware_Array_VIM_Object => {
   :property_option => {
		:type => 'IpPoolAssociation',
		:array_matching => :all,
	:comparison_scope => :array,
            :sort_array => true,
:key => :networkName,
     },
 },
      },
    ],
    :name => LeafData[
	  :desc => 'Pool name. The pool name must be unique within the datacenter.',
	],
  }
 
  super
end