lib/vagabond/vagabond.rb in vagabond-0.2.4 vs lib/vagabond/vagabond.rb in vagabond-0.2.6
- old
+ new
@@ -131,25 +131,28 @@
@options.merge!(args.last)
end
@leftover_args = args
setup_ui(_ui)
load_configurations
- validate! unless action == 'cluster' # TODO -> allow action
- # method to check for validation run
+ if(respond_to?(check = "#{action}_validate?".to_sym))
+ validate! if send(check)
+ else
+ validate!
+ end
end
def name_required!
unless(name)
ui.fatal "Node name is required!"
raise VagabondError::MissingNodeName.new
end
end
- def provision_solo(path)
+ def provision_solo(dir)
ui.info "#{ui.color('Vagabond:', :bold)} Provisioning node: #{ui.color(name, :magenta)}"
lxc.container_ip(20) # force wait for container to appear and do so quietly
direct_container_command(
- "chef-solo -c #{File.join(path, 'solo.rb')} -j #{File.join(path, 'dna.json')}",
+ "chef-solo -c #{File.join(dir, 'solo.rb')} -j #{File.join(dir, 'dna.json')}",
:live_stream => STDOUT
)
end
def load_configurations