Class: Vagrant::Provisioners::Shell::Config

Inherits:
Config::Base show all
Defined in:
lib/vagrant/provisioners/shell.rb

Instance Attribute Summary collapse

Attributes inherited from Config::Base

#top

Instance Method Summary collapse

Methods inherited from Config::Base

configures, #env, #instance_variables_hash, json_create, #set_options, #to_hash, #to_json

Constructor Details

#initializeConfig

Returns a new instance of Config.



10
11
12
# File 'lib/vagrant/provisioners/shell.rb', line 10

def initialize
  @upload_path = "/tmp/vagrant-shell"
end

Instance Attribute Details

#pathObject

Returns the value of attribute path.



7
8
9
# File 'lib/vagrant/provisioners/shell.rb', line 7

def path
  @path
end

#upload_pathObject

Returns the value of attribute upload_path.



8
9
10
# File 'lib/vagrant/provisioners/shell.rb', line 8

def upload_path
  @upload_path
end

Instance Method Details

#expanded_pathObject



14
15
16
# File 'lib/vagrant/provisioners/shell.rb', line 14

def expanded_path
  Pathname.new(path).expand_path(env.root_path) if path
end

#validate(errors) ⇒ Object



18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/vagrant/provisioners/shell.rb', line 18

def validate(errors)
  super

  if !path
    errors.add(I18n.t("vagrant.provisioners.shell.path_not_set"))
  elsif !expanded_path.file?
    errors.add(I18n.t("vagrant.provisioners.shell.path_invalid", :path => expanded_path))
  end

  if !upload_path
    errors.add(I18n.t("vagrant.provisioners.shell.upload_path_not_set"))
  end
end