Module: ChefUtils::DSL::Virtualization
- Extended by:
- Virtualization
- Includes:
- Internal
- Included in:
- ChefUtils, Virtualization
- Defined in:
- lib/chef-utils/dsl/virtualization.rb
Instance Method Summary collapse
-
#guest?(node = __getnode) ⇒ Boolean
(also: #virtual?)
Determine if the current node is running under any virtualization environment.
-
#hyperv?(node = __getnode) ⇒ Boolean
Determine if the current node is running under Microsoft Hyper-v.
-
#hypervisor?(node = __getnode) ⇒ Boolean
Determine if the current node supports running guests under any virtualization environment.
-
#kvm?(node = __getnode) ⇒ Boolean
Determine if the current node is a KVM guest.
-
#kvm_host?(node = __getnode) ⇒ Boolean
Determine if the current node is a KVM host.
-
#lxc?(node = __getnode) ⇒ Boolean
Determine if the current node is running in a linux container.
-
#lxc_host?(node = __getnode) ⇒ Boolean
Determine if the current node is a linux container host.
-
#openvz?(node = __getnode) ⇒ Boolean
Determine if the current node is an openvz guest.
-
#openvz_host?(node = __getnode) ⇒ Boolean
Determine if the current node is an openvz host.
-
#parallels?(node = __getnode) ⇒ Boolean
Determine if the current node is running under Parallels Desktop.
-
#parallels_host?(node = __getnode) ⇒ Boolean
Determine if the current node is a Parallels Desktop host.
-
#physical?(node = __getnode) ⇒ Boolean
Determine if the current node is NOT running under any virtualization environment (bare-metal or hypervisor on metal).
-
#vagrant?(node = __getnode) ⇒ Boolean
Determine if the current node is running as a vagrant guest.
-
#vbox?(node = __getnode) ⇒ Boolean
(also: #virtualbox?)
Determine if the current node is a VirtualBox guest.
-
#vbox_host?(node = __getnode) ⇒ Boolean
Determine if the current node is a VirtualBox host.
-
#vmware?(node = __getnode) ⇒ Boolean
Determine if the current node is a VMWare guest.
-
#vmware_desktop?(node = __getnode) ⇒ Boolean
Determine if the current node is virtualized on VMware Desktop (Fusion/Player/Workstation).
-
#vmware_host?(node = __getnode) ⇒ Boolean
Determine if the current node is VMware host.
-
#vmware_vsphere?(node = __getnode) ⇒ Boolean
Determine if the current node is virtualized on VMware vSphere (ESX).
Instance Method Details
#guest?(node = __getnode) ⇒ Boolean Also known as: virtual?
Determine if the current node is running under any virtualization environment
205 206 207 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 205 def guest?(node = __getnode) node.dig("virtualization", "role") == "guest" end |
#hyperv?(node = __getnode) ⇒ Boolean
Determine if the current node is running under Microsoft Hyper-v.
194 195 196 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 194 def hyperv?(node = __getnode) node.dig("virtualization", "system") == "hyperv" && node.dig("virtualization", "role") == "guest" end |
#hypervisor?(node = __getnode) ⇒ Boolean
Determine if the current node supports running guests under any virtualization environment
219 220 221 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 219 def hypervisor?(node = __getnode) node.dig("virtualization", "role") == "host" end |
#kvm?(node = __getnode) ⇒ Boolean
Determine if the current node is a KVM guest.
33 34 35 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 33 def kvm?(node = __getnode) node.dig("virtualization", "system") == "kvm" && node.dig("virtualization", "role") == "guest" end |
#kvm_host?(node = __getnode) ⇒ Boolean
Determine if the current node is a KVM host.
44 45 46 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 44 def kvm_host?(node = __getnode) node.dig("virtualization", "system") == "kvm" && node.dig("virtualization", "role") == "host" end |
#lxc?(node = __getnode) ⇒ Boolean
Determine if the current node is running in a linux container.
55 56 57 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 55 def lxc?(node = __getnode) node.dig("virtualization", "system") == "lxc" && node.dig("virtualization", "role") == "guest" end |
#lxc_host?(node = __getnode) ⇒ Boolean
Determine if the current node is a linux container host.
66 67 68 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 66 def lxc_host?(node = __getnode) node.dig("virtualization", "system") == "lxc" && node.dig("virtualization", "role") == "host" end |
#openvz?(node = __getnode) ⇒ Boolean
Determine if the current node is an openvz guest.
172 173 174 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 172 def openvz?(node = __getnode) node.dig("virtualization", "system") == "openvz" && node.dig("virtualization", "role") == "guest" end |
#openvz_host?(node = __getnode) ⇒ Boolean
Determine if the current node is an openvz host.
183 184 185 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 183 def openvz_host?(node = __getnode) node.dig("virtualization", "system") == "openvz" && node.dig("virtualization", "role") == "host" end |
#parallels?(node = __getnode) ⇒ Boolean
Determine if the current node is running under Parallels Desktop.
79 80 81 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 79 def parallels?(node = __getnode) node.dig("virtualization", "system") == "parallels" && node.dig("virtualization", "role") == "guest" end |
#parallels_host?(node = __getnode) ⇒ Boolean
Determine if the current node is a Parallels Desktop host.
92 93 94 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 92 def parallels_host?(node = __getnode) node.dig("virtualization", "system") == "parallels" && node.dig("virtualization", "role") == "host" end |
#physical?(node = __getnode) ⇒ Boolean
Determine if the current node is NOT running under any virtualization environment (bare-metal or hypervisor on metal)
230 231 232 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 230 def physical?(node = __getnode) !virtual?(node) end |
#vagrant?(node = __getnode) ⇒ Boolean
Determine if the current node is running as a vagrant guest.
Note that this API is equivalent to just looking for the vagrant user or the vagrantup.com domain in the hostname, which is the best API we have.
246 247 248 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 246 def vagrant?(node = __getnode) vagrant_key?(node) || vagrant_domain?(node) || vagrant_user?(node) end |
#vbox?(node = __getnode) ⇒ Boolean Also known as: virtualbox?
Determine if the current node is a VirtualBox guest.
103 104 105 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 103 def vbox?(node = __getnode) node.dig("virtualization", "system") == "vbox" && node.dig("virtualization", "role") == "guest" end |
#vbox_host?(node = __getnode) ⇒ Boolean
Determine if the current node is a VirtualBox host.
114 115 116 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 114 def vbox_host?(node = __getnode) node.dig("virtualization", "system") == "vbox" && node.dig("virtualization", "role") == "host" end |
#vmware?(node = __getnode) ⇒ Boolean
Determine if the current node is a VMWare guest.
128 129 130 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 128 def vmware?(node = __getnode) node.dig("virtualization", "system") == "vmware" && node.dig("virtualization", "role") == "guest" end |
#vmware_desktop?(node = __getnode) ⇒ Boolean
Determine if the current node is virtualized on VMware Desktop (Fusion/Player/Workstation).
150 151 152 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 150 def vmware_desktop?(node = __getnode) node.dig("virtualization", "system") == "vmware" && node.dig("vmware", "host", "type") == "vmware_desktop" end |
#vmware_host?(node = __getnode) ⇒ Boolean
Determine if the current node is VMware host.
139 140 141 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 139 def vmware_host?(node = __getnode) node.dig("virtualization", "system") == "vmware" && node.dig("virtualization", "role") == "host" end |
#vmware_vsphere?(node = __getnode) ⇒ Boolean
Determine if the current node is virtualized on VMware vSphere (ESX).
161 162 163 |
# File 'lib/chef-utils/dsl/virtualization.rb', line 161 def vmware_vsphere?(node = __getnode) node.dig("virtualization", "system") == "vmware" && node.dig("vmware", "host", "type") == "vmware_vsphere" end |