module Nucleon::Mixin::Action::Project

Public Instance Methods

project_config() click to toggle source
   # File lib/core/mixin/action/project.rb
10 def project_config
11   register_project_provider :project_provider, nil, [
12     'nucleon.core.mixin.action.project.options.project_provider',
13     'nucleon.core.mixin.action.project.errors.project_provider'
14   ]
15   register_project :project_reference, nil, [
16     'nucleon.core.mixin.action.project.options.project_reference',
17     'nucleon.core.mixin.action.project.errors.project_reference'
18   ]
19   register_str :project_revision, :master, 'nucleon.core.mixin.action.project.options.project_revision'
20 end
project_ignore() click to toggle source
   # File lib/core/mixin/action/project.rb
24 def project_ignore
25   [ :project_provider, :project_reference, :project_revision ]
26 end
project_load(root_dir, create = false, update = false) click to toggle source
   # File lib/core/mixin/action/project.rb
31 def project_load(root_dir, create = false, update = false)
32 
33   # 1. Set a default project provider (reference can override)
34   # 2. Get project from root directory
35   # 3. Initialize project if not yet initialized if requested
36   # 4. Set remote if needed
37   # 5. Checkout revision if needed
38   # 6. Pull down updates if requested
39 
40   return Nucleon.project(extended_config(:project, {
41     :create         => create,
42     :provider       => settings[:project_provider],
43     :directory      => root_dir,
44     :url            => settings[:project_reference],
45     :revision       => settings[:project_revision],
46     :pull           => update,
47     :nucleon_resave => true,
48     :nucleon_cache  => false
49   }))
50 end