Module: RosettAi::Init::DirectoryBuilder

Defined in:
lib/rosett_ai/init/directory_builder.rb

Overview

Helper module for creating directories during initialization

Constant Summary collapse

GLOBAL_DIRS =
['rules', 'locales', 'conf', 'conf/behaviour', 'conf/schemas', 'doc', 'bin', 'lib',
'lib/rosett-ai'].freeze
LOCAL_DIRS =
['rules', 'conf', 'conf/behaviour', 'conf/schemas'].freeze

Class Method Summary collapse

Class Method Details

.create_directories(base_dir, subdirs) ⇒ Object



26
27
28
29
30
31
32
33
34
35
# File 'lib/rosett_ai/init/directory_builder.rb', line 26

def create_directories(base_dir, subdirs)
  created = []
  ([base_dir] + subdirs.map { |subdir| File.join(base_dir, subdir) }).each do |dir|
    next if Dir.exist?(dir)

    FileUtils.mkdir_p(dir)
    created << dir
  end
  created
end

.create_global_structure(base_dir) ⇒ Object



18
19
20
# File 'lib/rosett_ai/init/directory_builder.rb', line 18

def create_global_structure(base_dir)
  create_directories(base_dir, GLOBAL_DIRS)
end

.create_local_structure(base_dir) ⇒ Object



22
23
24
# File 'lib/rosett_ai/init/directory_builder.rb', line 22

def create_local_structure(base_dir)
  create_directories(base_dir, LOCAL_DIRS)
end