Merge pull request #4099 from mitchellh/fix-issue-2476-chef-client-node-cleanup

provisioners/chef: clean bundle env when executing chef client
This commit is contained in:
Mitchell Hashimoto 2014-08-06 10:13:37 -07:00
commit 22395e5cb4
1 changed files with 12 additions and 8 deletions

View File

@ -104,14 +104,18 @@ module VagrantPlugins
"vagrant.provisioners.chef.deleting_from_server",
deletable: deletable, name: node_name))
command = ["knife", deletable, "delete", "--yes", node_name]
r = Vagrant::Util::Subprocess.execute(*command)
if r.exit_code != 0
@machine.ui.error(I18n.t(
"vagrant.chef_client_cleanup_failed",
deletable: deletable,
stdout: r.stdout,
stderr: r.stderr))
# Knife is not part of the current Vagrant bundle, so it needs to run
# in the context of the system.
Bundler.with_clean_env do
command = ["knife", deletable, "delete", "--yes", node_name]
r = Vagrant::Util::Subprocess.execute(*command)
if r.exit_code != 0
@machine.ui.error(I18n.t(
"vagrant.chef_client_cleanup_failed",
deletable: deletable,
stdout: r.stdout,
stderr: r.stderr))
end
end
end
end