[chef] Re: Re: Chef 11.6 Windows, error with templates?


Chronological Thread 
  • From: Brian Anderson < >
  • To:
  • Subject: [chef] Re: Re: Chef 11.6 Windows, error with templates?
  • Date: Mon, 29 Jul 2013 11:12:17 -0400

And more. Re-running the same recipe now gives me an error on a file that was created by Chef on the last run. 


  * template[/etc/sensu/conf.d/base-checks.json] action create[2013-07-29T11:04:
30-04:00] INFO: Processing template[/etc/sensu/conf.d/base-checks.json] action c
reate (affect_mon::sensu-client line 40)

================================================================================

Error executing action `create` on resource 'template[/etc/sensu/conf.d/base-che
cks.json]'
================================================================================


Chef::Exceptions::Win32APIError
-------------------------------
The system cannot find the path specified.
---- Begin Win32 API output ----
System Error Code: 3
System Error Message: The system cannot find the path specified.
---- End Win32 API output ----

Resource Declaration:
---------------------
# In C:/chef/cache/cookbooks/affect_mon/recipes/sensu-client.rb

 40:     template "#{node['sensu']['conf_dir']}/base-checks.json" do
 41:         source "sensu-confd/base-checks-win.json.erb"
 42:         owner node['sensu']['user']
 43:         group node['sensu']['group']
 44:         mode "0644"
 45:     end
 46:

Compiled Resource:
------------------
# Declared in C:/chef/cache/cookbooks/affect_mon/recipes/sensu-client.rb:40:in `
from_file'

template("/etc/sensu/conf.d/base-checks.json") do
  provider Chef::Provider::Template
  action "create"
  retries 0
  retry_delay 2
  path "/etc/sensu/conf.d/base-checks.json"
  backup 5
  atomic_update true
  source "sensu-confd/base-checks-win.json.erb"
  cookbook_name "affect_mon"
  recipe_name "sensu-client"
  owner "Administrator"
  group "Administrators"
  mode "0644"
end

[2013-07-29T11:04:30-04:00] INFO: Running queued delayed notifications before re
-raising exception
[2013-07-29T11:04:30-04:00] ERROR: Running exception handlers
[2013-07-29T11:04:30-04:00] ERROR: Exception handlers complete
[2013-07-29T11:04:30-04:00] FATAL: Stacktrace dumped to C:/chef/cache/chef-stack
trace.out
Chef Client failed. 2 resources updated
[2013-07-29T11:04:30-04:00] FATAL: Chef::Exceptions::Win32APIError: template[/et
c/sensu/conf.d/base-checks.json] (affect_mon::sensu-client line 40) had an error
: Chef::Exceptions::Win32APIError: The system cannot find the path specified.
---- Begin Win32 API output ----
System Error Code: 3
System Error Message: The system cannot find the path specified.
---- End Win32 API output ----
                                               


Stacktrace:



Generated at 2013-07-29 11:04:30 -0400
Chef::Exceptions::Win32APIError: template[/etc/sensu/conf.d/base-checks.json] (affect_mon::sensu-client line 40) had an error: Chef::Exceptions::Win32APIError: The system cannot find the path specified.
---- Begin Win32 API output ----
System Error Code: 3
System Error Message: The system cannot find the path specified.
---- End Win32 API output ----

C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/win32/error.rb:69:in `raise!'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/win32/api/file.rb:478:in `file_search_handle'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/win32/file.rb:75:in `symlink?'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/provider/file.rb:268:in `real_file?'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/provider/file.rb:192:in `inspect_existing_fs_entry'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/provider/file.rb:105:in `define_resource_requirements'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/provider/template.rb:45:in `define_resource_requirements'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/provider.rb:103:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource.rb:625:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/runner.rb:49:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/runner.rb:81:in `block (2 levels) in converge'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/runner.rb:81:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/runner.rb:81:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection.rb:98:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection/stepable_iterator.rb:116:in `call'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection/stepable_iterator.rb:116:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection/stepable_iterator.rb:104:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection.rb:96:in `execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/runner.rb:80:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/client.rb:429:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/client.rb:494:in `do_run'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/client.rb:212:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/application.rb:183:in `run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/application/client.rb:302:in `block in run_application'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/application/client.rb:294:in `loop'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/application/client.rb:294:in `run_application'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/application.rb:66:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/bin/chef-client:26:in `<top (required)>'
C:/opscode/chef/bin/chef-client:23:in `load'
C:/opscode/chef/bin/chef-client:23:in `<main>'


On Mon, Jul 29, 2013 at 10:21 AM, Brian Anderson < " target="_blank"> > wrote:
Weird is right...

I just launched an instance using our standard AMI (Windows server 2008 r2, latest updates as of maybe 4-6 weeks ago)

Running along, processing templates just fine, then breaks with a permission denied error:

ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:05-04:00] INFO: Processing template[/etc/sensu/conf.d/worker-interactive.json] action create (affect_mon::sensu-x1interactive-checks line 14)
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:05-04:00] INFO: template[/etc/sensu/conf.d/worker-interactive.json] created file /etc/sensu/conf.d/worker-interactive.json
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:29-04:00] INFO: template[/etc/sensu/conf.d/worker-interactive.json] updated file contents /etc/sensu/conf.d/worker-interactive.json
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:29-04:00] INFO: template[/etc/sensu/conf.d/worker-interactive.json] owner changed to S-1-5-21-2359669852-410513563-3594093940-500
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:29-04:00] INFO: template[/etc/sensu/conf.d/worker-interactive.json] group changed to S-1-5-32-544
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:29-04:00] INFO: template[/etc/sensu/conf.d/worker-interactive.json] permissions changed to [AFFECTIVA-X1\Administrator/flags:0/mask:c0010000, BUILTIN\Administrators/flags:0/mask:80000000, Everyone/flags:0/mask:80000000]
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:29-04:00] INFO: Processing service[sensu-client] action nothing (affect_mon::sensu-x1batch-checks line 10)
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:29-04:00] INFO: Processing template[/etc/sensu/conf.d/worker-batch.json] action create (affect_mon::sensu-x1batch-checks line 14)
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:29-04:00] INFO: template[/etc/sensu/conf.d/worker-batch.json] created file /etc/sensu/conf.d/worker-batch.json
ec2-184-72-146-236.compute-1.amazonaws.com ================================================================================
ec2-184-72-146-236.compute-1.amazonaws.com Error executing action `create` on resource 'template[/etc/sensu/conf.d/worker-batch.json]'
ec2-184-72-146-236.compute-1.amazonaws.com ================================================================================
ec2-184-72-146-236.compute-1.amazonaws.com Permission denied - /etc/sensu/conf.d/worker-batch.json
ec2-184-72-146-236.compute-1.amazonaws.com # In c:/chef/cache/cookbooks/affect_mon/recipes/sensu-x1batch-checks.rb
ec2-184-72-146-236.compute-1.amazonaws.com  14: template "/etc/sensu/conf.d/worker-batch.json" do
ec2-184-72-146-236.compute-1.amazonaws.com  15:     source "sensu-confd/worker-batch.json.erb"
ec2-184-72-146-236.compute-1.amazonaws.com  16:     owner node['sensu']['user']
ec2-184-72-146-236.compute-1.amazonaws.com  17:     group node['sensu']['group']
ec2-184-72-146-236.compute-1.amazonaws.com  19:     notifies :restart, "service[sensu-client]"
ec2-184-72-146-236.compute-1.amazonaws.com  20:     only_if {File.exists?("/etc/sensu/conf.d")}
ec2-184-72-146-236.compute-1.amazonaws.com # Declared in c:/chef/cache/cookbooks/affect_mon/recipes/sensu-x1batch-checks.rb:14:in `from_file'
ec2-184-72-146-236.compute-1.amazonaws.com template("/etc/sensu/conf.d/worker-batch.json") do
ec2-184-72-146-236.compute-1.amazonaws.com   provider Chef::Provider::Template
ec2-184-72-146-236.compute-1.amazonaws.com   path "/etc/sensu/conf.d/worker-batch.json"
ec2-184-72-146-236.compute-1.amazonaws.com   source "sensu-confd/worker-batch.json.erb"
ec2-184-72-146-236.compute-1.amazonaws.com   cookbook_name "affect_mon"
ec2-184-72-146-236.compute-1.amazonaws.com   recipe_name "sensu-x1batch-checks"
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:56-04:00] INFO: Running queued delayed notifications before re-raising exception
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:56-04:00] INFO: template[C:/chef/client.rb] sending create action to ruby_block[reload_client_config] (delayed)
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:56-04:00] INFO: Processing ruby_block[reload_client_config] action create (chef-client::config line 86)
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:56-04:00] INFO: ruby_block[reload_client_config] called
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:56-04:00] INFO: template[/etc/sensu/conf.d/worker-interactive.json] sending restart action to service[sensu-client] (delayed)
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:56-04:00] INFO: Processing service[sensu-client] action restart (affect_mon::sensu-x1batch-checks line 10)
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:58-04:00] INFO: service[sensu-client] restarted
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:58-04:00] ERROR: Running exception handlers
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:58-04:00] ERROR: Exception handlers complete
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:58-04:00] FATAL: Stacktrace dumped to C:/chef/cache/chef-stacktrace.out
ec2-184-72-146-236.compute-1.amazonaws.com [2013-07-29T09:57:58-04:00] FATAL: Errno:


The template definitions are identical for worker-batch and worker-interactive:

This worked:

template "/etc/sensu/conf.d/worker-interactive.json" do
    source "sensu-confd/worker-interactive.json.erb"
    owner node['sensu']['user']
    group node['sensu']['group']
    mode "0644"
    notifies :restart, "service[sensu-client]"
    only_if {File.exists?("/etc/sensu/conf.d")}
end

This failed:

template "/etc/sensu/conf.d/worker-batch.json" do
    source "sensu-confd/worker-batch.json.erb"
    owner node['sensu']['user']
    group node['sensu']['group']
    mode "0644"
    notifies :restart, "service[sensu-client]"
    only_if {File.exists?("/etc/sensu/conf.d")}
end


/etc/sensu/conf.d/worker-batch.json was created but has no content. /etc/sensu/conf.d/worker-interactive.json is correct as one would expect based on the output. 



And the stacktrace:

Generated at 2013-07-29 09:57:58 -0400
Errno::EACCES: template[/etc/sensu/conf.d/worker-batch.json] (affect_mon::sensu-x1batch-checks line 14) had an error: Errno::EACCES: Permission denied - /etc/sensu/conf.d/worker-batch.json
C:/opscode/chef/embedded/lib/ruby/1.9.1/fileutils.rb:1406:in `unlink'
C:/opscode/chef/embedded/lib/ruby/1.9.1/fileutils.rb:1406:in `block in remove_file'
C:/opscode/chef/embedded/lib/ruby/1.9.1/fileutils.rb:1414:in `platform_support'
C:/opscode/chef/embedded/lib/ruby/1.9.1/fileutils.rb:1405:in `remove_file'
C:/opscode/chef/embedded/lib/ruby/1.9.1/fileutils.rb:515:in `block in mv'
C:/opscode/chef/embedded/lib/ruby/1.9.1/fileutils.rb:1515:in `block in fu_each_src_dest'
C:/opscode/chef/embedded/lib/ruby/1.9.1/fileutils.rb:1531:in `fu_each_src_dest0'
C:/opscode/chef/embedded/lib/ruby/1.9.1/fileutils.rb:1513:in `fu_each_src_dest'
C:/opscode/chef/embedded/lib/ruby/1.9.1/fileutils.rb:508:in `mv'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/file_content_management/deploy/mv_windows.rb:78:in `deploy'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/provider/file.rb:331:in `update_file_contents'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/provider/file.rb:350:in `block in do_contents_changes'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/mixin/why_run.rb:52:in `call'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/mixin/why_run.rb:52:in `add_action'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/provider.rb:149:in `converge_by'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/provider/file.rb:349:in `do_contents_changes'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/provider/file.rb:120:in `action_create'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/provider.rb:114:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource.rb:625:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/runner.rb:49:in `run_action'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/runner.rb:81:in `block (2 levels) in converge'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/runner.rb:81:in `each'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/runner.rb:81:in `block in converge'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection.rb:98:in `block in execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection/stepable_iterator.rb:116:in `call'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection/stepable_iterator.rb:116:in `call_iterator_block'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection/stepable_iterator.rb:85:in `step'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection/stepable_iterator.rb:104:in `iterate'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection/stepable_iterator.rb:55:in `each_with_index'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/resource_collection.rb:96:in `execute_each_resource'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/runner.rb:80:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/client.rb:429:in `converge'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/client.rb:494:in `do_run'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/client.rb:212:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/application.rb:183:in `run_chef_client'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/application/client.rb:302:in `block in run_application'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/application/client.rb:294:in `loop'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/application/client.rb:294:in `run_application'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/lib/chef/application.rb:66:in `run'
C:/opscode/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.6.0/bin/chef-client:26:in `<top (required)>'
C:/opscode/chef/bin/chef-client:23:in `load'
C:/opscode/chef/bin/chef-client:23:in `<main>'





On Fri, Jul 26, 2013 at 1:49 PM, Daniel DeLeo < " target="_blank"> > wrote:

On Friday, July 26, 2013 at 10:37 AM, Brian Anderson wrote:

I tried booting up a new Windows Server instance today. Since the knife-windows plugin always installs the latest version of Chef, I got 11.6.

My chef run blew up pretty quickly at the first cookbook_file I hit:


ec2-184-72-136-111.compute-1.amazonaws.com ================================================================================
ec2-184-72-136-111.compute-1.amazonaws.com Error executing action `create` on resource 'cookbook_file[/Progra~1/NSClient++/nsclient.ini]'
ec2-184-72-136-111.compute-1.amazonaws.com ================================================================================
ec2-184-72-136-111.compute-1.amazonaws.com Chef::Exceptions::Win32APIError
ec2-184-72-136-111.compute-1.amazonaws.com -------------------------------
ec2-184-72-136-111.compute-1.amazonaws.com The system cannot find the path specified.
ec2-184-72-136-111.compute-1.amazonaws.com ---- Begin Win32 API output ----
ec2-184-72-136-111.compute-1.amazonaws.com System Error Message: The system cannot find the path specified.
ec2-184-72-136-111.compute-1.amazonaws.com ---- End Win32 API output ----
ec2-184-72-136-111.compute-1.amazonaws.com # In c:/chef/cache/cookbooks/nagios/recipes/client-win.rb
ec2-184-72-136-111.compute-1.amazonaws.com  16: cookbook_file "/Progra~1/NSClient++/nsclient.ini" do
ec2-184-72-136-111.compute-1.amazonaws.com  17:         source "nsclient.ini"
ec2-184-72-136-111.compute-1.amazonaws.com # Declared in c:/chef/cache/cookbooks/nagios/recipes/client-win.rb:16:in `from_file'
ec2-184-72-136-111.compute-1.amazonaws.com cookbook_file("/Progra~1/NSClient++/nsclient.ini") do
ec2-184-72-136-111.compute-1.amazonaws.com   provider Chef::Provider::CookbookFile
ec2-184-72-136-111.compute-1.amazonaws.com   path "/Progra~1/NSClient++/nsclient.ini"
ec2-184-72-136-111.compute-1.amazonaws.com   recipe_name "client-win"


I disabled that recipe and got a similar error the first time it hit a template.

I read the release notes about the file changes, but I didn't think I was doing anything that should cause trouble. Is there anything in that compiled resource that looks wrong?

I rolled back to 11.4.4 on the instance and everything ran as expected.


Brian
This is weird. I ran a bunch of cookbooks on windows when testing 11.6 and never saw anything like this. Can you post the contents of your chef-stacktrace.out file?

-- 
Daniel DeLeo




--
Brian Anderson | Operations Engineer
Phone 781.696.1304
 


www.affectiva.com

     



--
Brian Anderson | Operations Engineer
Phone 781.696.1304
 


www.affectiva.com

     



Archive powered by MHonArc 2.6.16.

§