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