I think these raises here should be calls to ::Chef::Log.error() at a minimum and possibly a call to ::Chef.fatal()?