Module: ProjectModule
- Included in:
- Takelage::CLI, Takelage::InfoProject
- Defined in:
- lib/takelage/lib/project.rb
Overview
takelage project module
Defined Under Namespace
Classes: TakelageProject
Constant Summary collapse
- @@project =
Global singleton config
TakelageProject.new
Instance Method Summary collapse
-
#initialize_project ⇒ Object
Initialze project.
-
#project ⇒ Object
Global singleton project.
Instance Method Details
#initialize_project ⇒ Object
Initialze project
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/takelage/lib/project.rb', line 24 def initialize_project rakefile, path = Rake.application.find_rakefile_location main_file = "#{path}/#{@@project.config.active['info_project_main']}" private_file = "#{path}/#{@@project.config.active['info_project_private']}" # read main project info if File.exist? main_file @@project.main = read_yaml_file(main_file) || Hash.new @@project.main = @@project.main.sort.to_h end # read private project info if File.exist? private_file @@project.private = read_yaml_file(private_file) || Hash.new @@project.private = @@project.private.sort.to_h end # make a clone or else we'll change the original hash main = @@project.main.clone private = @@project.private.clone # merge main and private to active # private wins against main @@project.active = main.merge!(private) @@project.active = @@project.active.sort.to_h end |
#project ⇒ Object
Returns global singleton project.
54 55 56 |
# File 'lib/takelage/lib/project.rb', line 54 def project @@project end |