Class: VagrantPlugins::Nixos::Config
- Inherits:
-
Object
- Object
- VagrantPlugins::Nixos::Config
- Defined in:
- lib/vagrant-nixos/config.rb
Instance Attribute Summary collapse
-
#expression ⇒ Object
Returns the value of attribute expression.
-
#inline ⇒ Object
Returns the value of attribute inline.
-
#NIX_PATH ⇒ Object
Returns the value of attribute NIX_PATH.
-
#path ⇒ Object
Returns the value of attribute path.
Instance Method Summary collapse
- #finalize! ⇒ Object
-
#initialize ⇒ Config
constructor
A new instance of Config.
- #validate(machine) ⇒ Object
Constructor Details
#initialize ⇒ Config
Returns a new instance of Config.
10 11 12 13 14 15 |
# File 'lib/vagrant-nixos/config.rb', line 10 def initialize @inline = UNSET_VALUE @path = UNSET_VALUE @expression = UNSET_VALUE @NIX_PATH = UNSET_VALUE end |
Instance Attribute Details
#expression ⇒ Object
Returns the value of attribute expression.
7 8 9 |
# File 'lib/vagrant-nixos/config.rb', line 7 def expression @expression end |
#inline ⇒ Object
Returns the value of attribute inline.
5 6 7 |
# File 'lib/vagrant-nixos/config.rb', line 5 def inline @inline end |
#NIX_PATH ⇒ Object
Returns the value of attribute NIX_PATH.
8 9 10 |
# File 'lib/vagrant-nixos/config.rb', line 8 def NIX_PATH @NIX_PATH end |
#path ⇒ Object
Returns the value of attribute path.
6 7 8 |
# File 'lib/vagrant-nixos/config.rb', line 6 def path @path end |
Instance Method Details
#finalize! ⇒ Object
17 18 19 20 21 22 |
# File 'lib/vagrant-nixos/config.rb', line 17 def finalize! @inline = nil if @inline == UNSET_VALUE @path = nil if @path == UNSET_VALUE @expression = nil if @expression == UNSET_VALUE @NIX_PATH = nil if @NIX_PATH == UNSET_VALUE end |
#validate(machine) ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/vagrant-nixos/config.rb', line 28 def validate(machine) errors = _detected_errors if (path && inline) or (path && expression) or (inline && expression) errors << "You can have one and only one of :path, :expression or :inline for nixos provisioner" elsif !path && !inline && !expression errors << "Missing :inline, :expression or :path for nixos provisioner" end if path && !File.exist?(path) errors << "Invalid path #{path}" end { "nixos provisioner" => errors } end |