91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
|
# File 'lib/vagrant/provisioners/chef_client.rb', line 91
def run_chef_client
command_env = config.binary_env ? "#{config.binary_env} " : ""
command = "#{command_env}#{chef_binary_path("chef-client")} -c #{config.provisioning_path}/client.rb -j #{config.provisioning_path}/dna.json"
config.attempts.times do |attempt|
if attempt == 0
env[:ui].info I18n.t("vagrant.provisioners.chef.running_client")
else
env[:ui].info I18n.t("vagrant.provisioners.chef.running_client_again")
end
exit_status = env[:vm].channel.sudo(command) do |type, data|
color = type == :stdout ? :green : :red
env[:ui].info(data.chomp, :color => color, :prefix => false)
end
return if exit_status == 0
end
raise ChefError, :no_convergence
end
|