Chef Client, version 11.8.2: Fatal error loading LWRP when cookbook name contains hyphen


#1

Hi All.
I am having a problem in Chef Client, version 11.8.2 that sound similar to:
CHEF-2454: Fatal error loading LWRP when cookbook name contains hyphen

I’ve attached the bootstrap output below with LWRP cookbook named
"my_common-cookbook".

Note: This error goes away if “my_common-cookbook” is changed to
"my_common_cookbook".

Unfortunately it’s significant work to change the cookbook name at this point
in a project.

What are the steps to get hyphens supported in Chef Client, version 11.8.2 and
beyond?

Best Regards,
Dave

Bootstrapping Chef on node-3.test.lab
node-3.test.lab Starting Chef Client, version 11.8.2
node-3.test.lab resolving cookbooks for run list: [“app-cookbook”]
node-3.test.lab Synchronizing Cookbooks:
node-3.test.lab - hostsfile
node-3.test.lab - ntp
node-3.test.lab - my_common-cookbook
node-3.test.lab - app-cookbook
node-3.test.lab Compiling Cookbooks…
node-3.test.lab
node-3.test.lab

node-3.test.lab Recipe Compile Error in
/var/chef/cache/cookbooks/app-cookbook/recipes/default.rb
node-3.test.lab

node-3.test.lab
node-3.test.lab
node-3.test.lab NameError
node-3.test.lab ---------
node-3.test.lab Cannot find a resource for my_common on ubuntu version 12.04
node-3.test.lab
node-3.test.lab
node-3.test.lab Cookbook Trace:
node-3.test.lab ---------------
node-3.test.lab
/var/chef/cache/cookbooks/app-cookbook/recipes/default.rb:24:in `from_file’
node-3.test.lab
node-3.test.lab
node-3.test.lab Relevant File Content:
node-3.test.lab ----------------------
node-3.test.lab /var/chef/cache/cookbooks/app-cookbook/recipes/default.rb:
node-3.test.lab
node-3.test.lab 17:
node-3.test.lab 18:
node-3.test.lab 19: case node[:platform]
node-3.test.lab 20: when "ubuntu"
node-3.test.lab 21:
node-3.test.lab 22:
node-3.test.lab 23:
node-3.test.lab 24>> my_common-cookbook_component do
node-3.test.lab 25: action :create
node-3.test.lab 26: end
node-3.test.lab 27:
node-3.test.lab 28: else
node-3.test.lab 29: Chef::Log.error(“OS=#{node[:platform]} is not
supported.”)
node-3.test.lab 30: end
node-3.test.lab 31:
node-3.test.lab 32:
node-3.test.lab 33:
node-3.test.lab
node-3.test.lab
node-3.test.lab
node-3.test.lab [2014-02-12T13:35:23-05:00] ERROR: Running exception handlers
node-3.test.lab [2014-02-12T13:35:23-05:00] ERROR: Exception handlers complete
node-3.test.lab [2014-02-12T13:35:23-05:00] FATAL: Stacktrace dumped to
/var/chef/cache/chef-stacktrace.out
node-3.test.lab Chef Client failed. 0 resources updated
node-3.test.lab [2014-02-12T13:35:23-05:00] ERROR: Cannot find a resource for
my_common on ubuntu version 12.04
node-3.test.lab [2014-02-12T13:35:23-05:00] FATAL:
Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully
(exit code 1)


#2

Hyphens should be supported just fine, your resource name would just my_common_cookbook since thats the full name you are using.

–Noah

On Feb 12, 2014, at 10:56 AM, Dave Urschatz durschatz@blackberry.com wrote:

Hi All.
I am having a problem in Chef Client, version 11.8.2 that sound similar to:
CHEF-2454: Fatal error loading LWRP when cookbook name contains hyphen

I’ve attached the bootstrap output below with LWRP cookbook named
"my_common-cookbook".

Note: This error goes away if “my_common-cookbook” is changed to
"my_common_cookbook".

Unfortunately it’s significant work to change the cookbook name at this point
in a project.

What are the steps to get hyphens supported in Chef Client, version 11.8.2 and
beyond?

Best Regards,
Dave

Bootstrapping Chef on node-3.test.lab
node-3.test.lab Starting Chef Client, version 11.8.2
node-3.test.lab resolving cookbooks for run list: [“app-cookbook”]
node-3.test.lab Synchronizing Cookbooks:
node-3.test.lab - hostsfile
node-3.test.lab - ntp
node-3.test.lab - my_common-cookbook
node-3.test.lab - app-cookbook
node-3.test.lab Compiling Cookbooks…
node-3.test.lab
node-3.test.lab

node-3.test.lab Recipe Compile Error in
/var/chef/cache/cookbooks/app-cookbook/recipes/default.rb
node-3.test.lab

node-3.test.lab
node-3.test.lab
node-3.test.lab NameError
node-3.test.lab ---------
node-3.test.lab Cannot find a resource for my_common on ubuntu version 12.04
node-3.test.lab
node-3.test.lab
node-3.test.lab Cookbook Trace:
node-3.test.lab ---------------
node-3.test.lab
/var/chef/cache/cookbooks/app-cookbook/recipes/default.rb:24:in `from_file’
node-3.test.lab
node-3.test.lab
node-3.test.lab Relevant File Content:
node-3.test.lab ----------------------
node-3.test.lab /var/chef/cache/cookbooks/app-cookbook/recipes/default.rb:
node-3.test.lab
node-3.test.lab 17:
node-3.test.lab 18:
node-3.test.lab 19: case node[:platform]
node-3.test.lab 20: when "ubuntu"
node-3.test.lab 21:
node-3.test.lab 22:
node-3.test.lab 23:
node-3.test.lab 24>> my_common-cookbook_component do
node-3.test.lab 25: action :create
node-3.test.lab 26: end
node-3.test.lab 27:
node-3.test.lab 28: else
node-3.test.lab 29: Chef::Log.error(“OS=#{node[:platform]} is not
supported.”)
node-3.test.lab 30: end
node-3.test.lab 31:
node-3.test.lab 32:
node-3.test.lab 33:
node-3.test.lab
node-3.test.lab
node-3.test.lab
node-3.test.lab [2014-02-12T13:35:23-05:00] ERROR: Running exception handlers
node-3.test.lab [2014-02-12T13:35:23-05:00] ERROR: Exception handlers complete
node-3.test.lab [2014-02-12T13:35:23-05:00] FATAL: Stacktrace dumped to
/var/chef/cache/chef-stacktrace.out
node-3.test.lab Chef Client failed. 0 resources updated
node-3.test.lab [2014-02-12T13:35:23-05:00] ERROR: Cannot find a resource for
my_common on ubuntu version 12.04
node-3.test.lab [2014-02-12T13:35:23-05:00] FATAL:
Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully
(exit code 1)