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
|
# File 'lib/chef/provider/service/windows.rb', line 52
def load_current_resource
@current_resource = Chef::Resource::WindowsService.new(new_resource.name)
current_resource.service_name(new_resource.service_name)
if Win32::Service.exists?(current_resource.service_name)
current_resource.running(current_state == RUNNING)
logger.trace "#{new_resource} running: #{current_resource.running}"
case current_startup_type
when :automatic
current_resource.enabled(true)
when :disabled
current_resource.enabled(false)
end
logger.trace "#{new_resource} enabled: #{current_resource.enabled}"
config_info = Win32::Service.config_info(current_resource.service_name)
current_resource.service_type(get_service_type(config_info.service_type)) if config_info.service_type
current_resource.startup_type(start_type_to_sym(config_info.start_type)) if config_info.start_type
current_resource.error_control(get_error_control(config_info.error_control)) if config_info.error_control
current_resource.binary_path_name(config_info.binary_path_name) if config_info.binary_path_name
current_resource.load_order_group(config_info.load_order_group) if config_info.load_order_group
current_resource.dependencies(config_info.dependencies) if config_info.dependencies
current_resource.run_as_user(config_info.service_start_name) if config_info.service_start_name
current_resource.display_name(config_info.display_name) if config_info.display_name
current_resource.delayed_start(current_delayed_start) if current_delayed_start
end
current_resource
end
|