class Chef::Platform
Public Class Methods
dsc_refresh_mode_disabled?(node)
click to toggle source
# File lib/chef/platform/query_helpers.rb, line 63 def dsc_refresh_mode_disabled?(node) exec = powershell_exec!("Get-DscLocalConfigurationManager") exec.error! exec.result["RefreshMode"] == "Disabled" end
find_platform_and_version(node)
click to toggle source
# File lib/chef/platform/provider_mapping.rb, line 29 def find_platform_and_version(node) platform = nil version = nil if node[:platform] platform = node[:platform] elsif node.attribute?("os") platform = node[:os] end raise ArgumentError, "Cannot find a platform for #{node}" unless platform if node[:platform_version] version = node[:platform_version] elsif node[:os_version] version = node[:os_version] elsif node[:os_release] version = node[:os_release] end raise ArgumentError, "Cannot find a version for #{node}" unless version [platform, version] end
supported_powershell_version?(node, version_string)
click to toggle source
# File lib/chef/platform/query_helpers.rb, line 69 def supported_powershell_version?(node, version_string) return false unless node[:languages] && node[:languages][:powershell] require "rubygems" unless defined?(Gem) Gem::Version.new(node[:languages][:powershell][:version]) >= Gem::Version.new(version_string) end
supports_dsc?(node)
click to toggle source
# File lib/chef/platform/query_helpers.rb, line 49 def supports_dsc?(node) node[:languages] && node[:languages][:powershell] && node[:languages][:powershell][:version].to_i >= 4 end
supports_dsc_invoke_resource?(node)
click to toggle source
# File lib/chef/platform/query_helpers.rb, line 54 def supports_dsc_invoke_resource?(node) supports_dsc?(node) && supported_powershell_version?(node, "5.0.10018.0") end
supports_msi?()
click to toggle source
@deprecated we added this method due to Windows Server Nano, which is no longer a platform
# File lib/chef/platform/query_helpers.rb, line 38 def supports_msi? return false unless windows? true end
supports_powershell_execution_bypass?(node)
click to toggle source
@deprecated we don’t support any release of Windows that isn’t PS 3+
# File lib/chef/platform/query_helpers.rb, line 45 def supports_powershell_execution_bypass?(node) true end
supports_refresh_mode_enabled?(node)
click to toggle source
# File lib/chef/platform/query_helpers.rb, line 59 def supports_refresh_mode_enabled?(node) supported_powershell_version?(node, "5.0.10586.0") end
windows?()
click to toggle source
# File lib/chef/platform/query_helpers.rb, line 28 def windows? ChefUtils.windows? end
windows_nano_server?()
click to toggle source
@deprecated Windows Nano is not a thing anymore so this check shouldn’t be used
# File lib/chef/platform/query_helpers.rb, line 33 def windows_nano_server? false end