2015-07-06 20:21:29 +00:00
|
|
|
require "pathname"
|
|
|
|
|
2013-09-03 18:01:12 +00:00
|
|
|
require "vagrant"
|
|
|
|
|
|
|
|
module VagrantPlugins
|
|
|
|
module FileUpload
|
|
|
|
class Config < Vagrant.plugin("2", :config)
|
|
|
|
attr_accessor :source
|
|
|
|
attr_accessor :destination
|
|
|
|
|
|
|
|
def validate(machine)
|
2013-09-04 23:56:45 +00:00
|
|
|
errors = _detected_errors
|
2013-09-03 18:01:12 +00:00
|
|
|
if !source
|
|
|
|
errors << I18n.t("vagrant.provisioners.file.no_source_file")
|
|
|
|
end
|
|
|
|
if !destination
|
|
|
|
errors << I18n.t("vagrant.provisioners.file.no_dest_file")
|
|
|
|
end
|
|
|
|
if source
|
2015-07-06 20:21:29 +00:00
|
|
|
s = Pathname.new(source).expand_path(machine.env.root_path)
|
|
|
|
if !s.exist?
|
2013-09-03 18:01:12 +00:00
|
|
|
errors << I18n.t("vagrant.provisioners.file.path_invalid",
|
2015-07-06 20:21:29 +00:00
|
|
|
path: s.to_s)
|
2013-09-03 18:01:12 +00:00
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
{ "File provisioner" => errors }
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|