class Nucleon::Action::Project::Add
Public Class Methods
describe()
click to toggle source
Calls superclass method
# File lib/nucleon/action/project/add.rb 13 def self.describe 14 super(:project, :add, 700) 15 end
Public Instance Methods
arguments()
click to toggle source
# File lib/nucleon/action/project/add.rb 40 def arguments 41 [ :sub_path, :sub_reference ] 42 end
configure()
click to toggle source
Calls superclass method
# File lib/nucleon/action/project/add.rb 20 def configure 21 super do 22 codes :project_failure, 23 :add_failure, 24 :push_failure 25 26 register_str :path, Dir.pwd 27 register_str :sub_path, nil 28 29 register_project :sub_reference, nil 30 31 register_bool :editable 32 33 project_config 34 push_config 35 end 36 end
execute()
click to toggle source
Calls superclass method
# File lib/nucleon/action/project/add.rb 47 def execute 48 super do 49 info('start') 50 51 if project = project_load(settings[:path], false) 52 sub_info = project.translate_reference(settings[:sub_reference], settings[:editable]) 53 sub_path = settings[:sub_path] 54 55 if sub_info 56 sub_url = sub_info[:url] 57 sub_revision = sub_info[:revision] 58 else 59 sub_url = settings[:sub_reference] 60 sub_revision = nil 61 end 62 63 if project.add_subproject(sub_path, sub_url, sub_revision) 64 myself.status = code.push_failure unless push(project) 65 else 66 myself.status = code.add_failure 67 end 68 else 69 myself.status = code.project_failure 70 end 71 end 72 end