Class: DiceBag::Project

Inherits:
Object
  • Object
show all
Defined in:
lib/dice_bag/project.rb

Constant Summary collapse

DEFAULT_NAME =
'project'

Class Method Summary collapse

Class Method Details

.config_files(filename) ⇒ Object



12
13
14
# File 'lib/dice_bag/project.rb', line 12

def self.config_files(filename)
  File.join(Dir.pwd, filename)
end

.nameObject



7
8
9
10
# File 'lib/dice_bag/project.rb', line 7

def self.name
  #TODO: how to do find the name of the project in no-rails environments?
  defined?(Rails) ? Rails.application.class.parent_name.downcase : DEFAULT_NAME
end

.templates_to_generateObject

local templates always takes preference over generated templates



17
18
19
20
21
22
23
24
25
# File 'lib/dice_bag/project.rb', line 17

def self.templates_to_generate
  generated_templates = Dir[Project.config_files("**/config/*.erb")]
  custom_templates = Dir[Project.config_files("**/config/*.erb.local")]
  dotNetTemplates = Dir[Project.config_files("**/*.config.template")]
  all_files = generated_templates + custom_templates
  templates = all_files.delete_if {|file| custom_templates.include?(file + '.local')}
  dotNetTemplates = dotNetTemplates.delete_if {|file| file.include?("/bin/")}
  all_files + dotNetTemplates
end