criteo-cookbooks / nssm

Chef cookbook to install the Non-Sucking Service Manager
http://nssm.cc
MIT License
13 stars 15 forks source link

Version 3.0.1 is missing %WINDIR% #16

Open emachnic opened 7 years ago

emachnic commented 7 years ago

It appears that whatever was changed between version 3.0.0 and 3.0.1 has caused a break in the consul cookbook. I'm creating this issue so you can be aware. Here is the stacktrace:

Generated at 2017-07-13 10:03:17 -0700
Chef::Exceptions::MultipleFailures: Chef::Exceptions::MultipleFailures
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:240:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:321:in `block in run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:320:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:320:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:155:in `process_resource_requirements'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:133:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource.rb:622:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:69:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:77:in `block in run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:75:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:75:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block (2 levels) in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:94:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:114:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:103:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:92:in `execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:96:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:417:in `block in recipe_eval'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:52:in `add_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:176:in `converge_by'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:412:in `recipe_eval'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/nssm/providers/default.rb:19:in `install_nssm'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/nssm/providers/default.rb:54:in `block in class_from_file'
(eval):2:in `block in action_install'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:361:in `instance_eval'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:361:in `compile_and_converge_action'
(eval):2:in `action_install'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:145:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource.rb:622:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:69:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block (2 levels) in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:94:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:114:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:103:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:92:in `execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:96:in `converge'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/poise/files/halite_gem/poise/helpers/notifying_block.rb:69:in `notifying_block'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/consul/libraries/consul_service_windows.rb:25:in `action_enable'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:145:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource.rb:622:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:69:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block (2 levels) in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:94:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:114:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:103:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:92:in `execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:96:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:715:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:710:in `catch'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:710:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:749:in `converge_and_save'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:286:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:277:in `run_with_graceful_exit_option'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:253:in `block in run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/local_mode.rb:44:in `with_server_connectivity'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:236:in `run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application/client.rb:427:in `run_application'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:59:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/bin/chef-client:26:in `<top (required)>'
C:/opscode/chef/bin/chef-client:68:in `load'
C:/opscode/chef/bin/chef-client:68:in `<main>'

>>>> Caused by Chef::Exceptions::EnclosingDirectoryDoesNotExist: consul_service[consul] (consul::default line 29) had an error: Chef::Exceptions::EnclosingDirectoryDoesNotExist: nssm[consul] (C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/consul/libraries/consul_service_windows.rb line 36) had an error: Chef::Exceptions::EnclosingDirectoryDoesNotExist: remote_file[install nssm] (nssm::default line 18) had an error: Chef::Exceptions::EnclosingDirectoryDoesNotExist: Parent directory %WINDIR% does not exist.
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:240:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:321:in `block in run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:320:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:320:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:155:in `process_resource_requirements'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:133:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource.rb:622:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:69:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:77:in `block in run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:75:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:75:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block (2 levels) in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:94:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:114:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:103:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:92:in `execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:96:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:417:in `block in recipe_eval'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:52:in `add_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:176:in `converge_by'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:412:in `recipe_eval'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/nssm/providers/default.rb:19:in `install_nssm'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/nssm/providers/default.rb:54:in `block in class_from_file'
(eval):2:in `block in action_install'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:361:in `instance_eval'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:361:in `compile_and_converge_action'
(eval):2:in `action_install'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:145:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource.rb:622:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:69:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block (2 levels) in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:94:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:114:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:103:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:92:in `execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:96:in `converge'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/poise/files/halite_gem/poise/helpers/notifying_block.rb:69:in `notifying_block'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/consul/libraries/consul_service_windows.rb:25:in `action_enable'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:145:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource.rb:622:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:69:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block (2 levels) in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:94:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:114:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:103:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:92:in `execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:96:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:715:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:710:in `catch'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:710:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:749:in `converge_and_save'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:286:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:277:in `run_with_graceful_exit_option'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:253:in `block in run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/local_mode.rb:44:in `with_server_connectivity'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:236:in `run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application/client.rb:427:in `run_application'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:59:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/bin/chef-client:26:in `<top (required)>'
C:/opscode/chef/bin/chef-client:68:in `load'
C:/opscode/chef/bin/chef-client:68:in `<main>'

>>>> Caused by Chef::Exceptions::EnclosingDirectoryDoesNotExist: Parent directory %WINDIR% does not exist.
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:240:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:321:in `block in run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:320:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:320:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:155:in `process_resource_requirements'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:133:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource.rb:622:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:69:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:77:in `block in run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:75:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:75:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block (2 levels) in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:94:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:114:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:103:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:92:in `execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:96:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:417:in `block in recipe_eval'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/mixin/why_run.rb:52:in `add_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:176:in `converge_by'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:412:in `recipe_eval'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/nssm/providers/default.rb:19:in `install_nssm'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/nssm/providers/default.rb:54:in `block in class_from_file'
(eval):2:in `block in action_install'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:361:in `instance_eval'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:361:in `compile_and_converge_action'
(eval):2:in `action_install'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:145:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource.rb:622:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:69:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block (2 levels) in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:94:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:114:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:103:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:92:in `execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:96:in `converge'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/poise/files/halite_gem/poise/helpers/notifying_block.rb:69:in `notifying_block'
C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/cookbooks/consul/libraries/consul_service_windows.rb:25:in `action_enable'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/provider.rb:145:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource.rb:622:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:69:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block (2 levels) in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:97:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:94:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:114:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:103:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/resource_collection/resource_list.rb:92:in `execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/runner.rb:96:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:715:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:710:in `catch'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:710:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:749:in `converge_and_save'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/client.rb:286:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:277:in `run_with_graceful_exit_option'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:253:in `block in run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/local_mode.rb:44:in `with_server_connectivity'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:236:in `run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application/client.rb:427:in `run_application'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/lib/chef/application.rb:59:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/2.3.0/gems/chef-12.21.1-universal-mingw32/bin/chef-client:26:in `<top (required)>'
C:/opscode/chef/bin/chef-client:68:in `load'
C:/opscode/chef/bin/chef-client:68:in `<main>'
dhoer commented 7 years ago

Please let me know if v3.0.2 fixed this issue

emachnic commented 7 years ago

Hi @dhoer, tried with version 3.0.2 and this is still an issue. Thanks for looking into it.

dhoer commented 7 years ago

What platform and chef-client version is this occurring on?

emachnic commented 7 years ago

This is on Windows Server 2012R2 with Chef 12.21.1

dhoer commented 7 years ago

Does changing the attribute from ENV['WINDIR'] to '%WINDIR%' fix the issue?

dhoer commented 7 years ago

From #chef irc chat: <@cheeseplus> dhoer: based on my reading of that that, the place they're trying to put the file doesn't already exist

Annih commented 7 years ago

IMHO this is not completly related to nssm cookbook but more due to consul cookbook weird usage. In consul cookbook the nssm.install_location value is overridden from ENV['WINDIR'] to %WINDIR% (https://github.com/johnbellone/consul-cookbook/blob/master/recipes/default.rb#L7)

I agreeat that it appears that a recent change in nssm broke consul behavior, but the faulty line in consul cookbook shouldn't be here :)

I'm preparing a PR for the consul cookbook to be compatible with #21

aprice commented 7 years ago

Has that PR been submitted to consul cookbook?

Annih commented 7 years ago

Not yet, I'm waiting for @dhoer to release the 4.0 version of nssm cookbook ^^

aprice commented 7 years ago

Understandable - do you know offhand what the last working pin would be? nssm 3.0.0 + consul 3.0.0? Looks like the referenced line (overriding install_location to %WINDIR%) has been around a long time.

axelrtgs commented 7 years ago

the change from %WINDIR% to ENV['WINDIR'] was because on some systems it was failing to expand the %WINDIR% into the correct path. In ruby the correct method for getting environment variables is using the ENV[] syntax as that will work reliably.

This is from my experience in using the environment variables.

axelrtgs commented 7 years ago

@aprice Also to answer your question, from what i can tell i think this issue might be chef version dependent because the attribute is being used directly in the remote_file resource (in versions <=3.0.1) and the paths no longer expanding may have been a change in more recent chef versions and how they copy files which broke the nssm cookbook and required the change to the proper ruby method for expanding that environment variable. 3.0.1 should be working otherwise the behavior of remote_file may have changed in chef.

@Annih the change in the consul cookbook to properly expand the environment attribute shouldn't depend on the release of 4.0 since the changes in 4.0 dont fix or break anything in that regard.

Annih commented 7 years ago

@axelrtgs I'm not saying the fix should depends on v4.0. I'm just saying I'll not provide a PR on consul cookbook until v4.0 is released :)

axelrtgs commented 7 years ago

Makes sense, i was just thinking more form the interest of getting it fixed sooner but i also understand wanting to wait for the latest release