diff options
author | Tim Smith <tsmith@chef.io> | 2018-07-11 11:16:31 -0700 |
---|---|---|
committer | Tim Smith <tsmith@chef.io> | 2018-07-11 11:16:31 -0700 |
commit | 92204511b3cf1aefb7d8c9cb176366d78de4f191 (patch) | |
tree | 18d62e22a66f26d2f7bb71b091001a12dbe60eae | |
parent | feee4070b49e7581529b789be2731d874fd14edc (diff) | |
download | chef-better_rehash_error.tar.gz |
Provide a better error when knife plugins are missing from the cachebetter_rehash_error
No one outside chef developers knows what the manifest is and we don't actually tell them what command to run. Leave the details out. Just tell them how to fix it.
Signed-off-by: Tim Smith <tsmith@chef.io>
-rw-r--r-- | lib/chef/knife/core/hashed_command_loader.rb | 2 | ||||
-rw-r--r-- | spec/unit/knife/core/hashed_command_loader_spec.rb | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/lib/chef/knife/core/hashed_command_loader.rb b/lib/chef/knife/core/hashed_command_loader.rb index cbe4d558c1..dff4ae50ab 100644 --- a/lib/chef/knife/core/hashed_command_loader.rb +++ b/lib/chef/knife/core/hashed_command_loader.rb @@ -60,7 +60,7 @@ class Chef if errors.empty? commands else - Chef::Log.error "There are files specified in the manifest that are missing. Please rehash to update the subcommands cache. If you see this error after rehashing delete the cache at #{Chef::Knife::SubcommandLoader.plugin_manifest_path}" + Chef::Log.error "There are plugin files specified in the knife cache that cannot be found. Please run knife rehash to update the subcommands cache. If you see this error after rehashing delete the cache at #{Chef::Knife::SubcommandLoader.plugin_manifest_path}" Chef::Log.error "Missing files:\n\t#{errors.values.flatten.join("\n\t")}" {} end diff --git a/spec/unit/knife/core/hashed_command_loader_spec.rb b/spec/unit/knife/core/hashed_command_loader_spec.rb index 53bd81f4f7..e866f13a9c 100644 --- a/spec/unit/knife/core/hashed_command_loader_spec.rb +++ b/spec/unit/knife/core/hashed_command_loader_spec.rb @@ -65,7 +65,7 @@ describe Chef::Knife::SubcommandLoader::HashedCommandLoader do end it "lists all commands by category when no argument is given" do - expect(Chef::Log).to receive(:error).with(/There are files specified in the manifest that are missing/) + expect(Chef::Log).to receive(:error).with(/There are plugin files specified in the knife cache that cannot be found/) expect(Chef::Log).to receive(:error).with("Missing files:\n\t/file/for/plugin/b") expect(loader.list_commands).to eq({}) end |