ruby - Error executing action `create` on resource 'template[/etc/awslogs//cwlogs.cfg]' -
i trying chef run keep receiving error in title. log output follows;
project: error executing action `create` on resource 'template[/etc/awslogs//cwlogs.cfg]' project: ================================================================================ project: project: chef::mixin::template::templateerror project: ------------------------------------ project: no implicit conversion of string integer project: project: resource declaration: project: --------------------- project: # in /tmp/packer-chef-solo/cookbooks-0/cloudwatch-cookbook/recipes/logconfig.rb project: project: 21: template "#{node['cloudwatch-cookbook']['cwlogs']['directory']}/#{node['cloudwatch-cookbook']['cwlogs']['configfilename']}" project: 22: source "cwlogs.cfg.erb" project: 23: owner "root" project: 24: group "root" project: 25: mode 0644 project: 26: variables( project: 27: :cookbook_name => "cloudwatch-cookbook" project: 28: ) project: 29: end project: project: compiled resource: project: ------------------ project: # declared in /tmp/packer-chef-solo/cookbooks-0/cloudwatch-cookbook/recipes/logconfig.rb:21:in `from_file' project: project: template("/etc/awslogs//cwlogs.cfg") project: action "create" project: retries 0 project: retry_delay 2 project: default_guard_interpreter :default project: path "/etc/awslogs//cwlogs.cfg" project: backup 5 project: atomic_update true project: source "cwlogs.cfg.erb" project: variables {:cookbook_name=>"cloudwatch-cookbook"} project: declared_type :template project: cookbook_name :"cloudwatch-cookbook" project: recipe_name "logconfig" project: mode 420 project: owner "root" project: group "root" project: end project: project: template context: project: ----------------- project: on line #31 project: 29: <% node['cloudwatch-cookbook']['cwlogs']['logfiles'].each |group| -%> project: 30: project: 31: [<%= group['groupname'] %>_<%= group['logfile'] %>] project: 32: datetime_format = [%y-%m-%d %h:%m:%s] project: 33: log_group_name = <%= group['groupname'].gsub(' ', '_') %> project: project: recipe: apache2::default project: * service[apache2] action reload project: - reload service service[apache2] project: project: running handlers: project: [2015-05-11t11:03:15+00:00] error: running exception handlers project: running handlers complete project: [2015-05-11t11:03:15+00:00] error: exception handlers complete project: [2015-05-11t11:03:15+00:00] fatal: stacktrace dumped /var/chef/cache/chef-stacktrace.out project: chef client failed. 99 resources updated in 301.919689764 seconds project: [2015-05-11t11:03:15+00:00] error: project: project: chef::mixin::template::templateerror (no implicit conversion of string integer) on line #31: project: project: 29: <% node['cloudwatch-cookbook']['cwlogs']['logfiles'].each |group| -%> project: 30: project: 31: [<%= group['groupname'] %>_<%= group['logfile'] %>] project: 32: datetime_format = [%y-%m-%d %h:%m:%s] project: 33: log_group_name = <%= group['groupname'].gsub(' ', '_') %> project: project: (erubis):31:in `[]' project: (erubis):31:in `block (2 levels) in evaluate' project: (erubis):29:in `each' project: (erubis):29:in `block in evaluate' i have tried looking on existing answers similar questions they've identified different problems don't seem reflect happening in case.
does have suggestions?
the problem .each on has return |key, value|. grabbing key string. call string['something'] expects index on string.
if change line 29 read:
<% node['cloudwatch-cookbook']['cwlogs']['logfiles'].values |group| -%> you should go.
Comments
Post a Comment