lib/vagrant-notify/action/install_command.rb in vagrant-notify-0.5.3 vs lib/vagrant-notify/action/install_command.rb in vagrant-notify-0.5.4
- old
+ new
@@ -9,10 +9,11 @@
def call(env)
return if env[:machine].config.notify.enable == false
path = compile_command(env, 'notify-send.erb')
install_command_on_guest(env, path)
+ check_if_ruby_on_guest(env)
@app.call env
end
private
@@ -33,9 +34,17 @@
env[:machine].communicate.upload(source.to_s, '/tmp/notify-send')
env[:machine].communicate.sudo('mv /usr/bin/{notify-send,notify-send.bkp}; exit 0')
env[:machine].communicate.sudo('mv /tmp/notify-send /usr/bin/notify-send && chmod +x /usr/bin/notify-send')
if RUBY_PLATFORM =~ /mswin|msys|mingw|cygwin|bccwin|wince|emc/
env[:machine].communicate.sudo("sed 's/\r\$//' -i /usr/bin/notify-send") # dos2unix
+ end
+ end
+
+ def check_if_ruby_on_guest(env)
+ ruby_check = ''
+ env[:machine].communicate.sudo("which ruby || true") {|type, data| ruby_check = data }
+ if ruby_check.empty?
+ env[:machine].ui.warn("Ruby is not installed on '#{env[:machine].name}' guest VM! vagrant-notify will not work until a version of Ruby is installed.")
end
end
end
end
end