Class: Smdev::CursorRules::FileCopier
- Inherits:
-
Object
- Object
- Smdev::CursorRules::FileCopier
- Defined in:
- lib/smdev/cursor_rules/file_copier.rb
Instance Method Summary collapse
- #copy_documentation(source_docs, target_docs) ⇒ Object
- #copy_rules(source_rules, target_rules) ⇒ Object
- #copy_templates(source_templates, target_templates) ⇒ Object
-
#initialize(source_dir, target_dir) ⇒ FileCopier
constructor
A new instance of FileCopier.
Constructor Details
#initialize(source_dir, target_dir) ⇒ FileCopier
Returns a new instance of FileCopier.
7 8 9 10 |
# File 'lib/smdev/cursor_rules/file_copier.rb', line 7 def initialize(source_dir, target_dir) @source_dir = source_dir @target_dir = target_dir end |
Instance Method Details
#copy_documentation(source_docs, target_docs) ⇒ Object
27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/smdev/cursor_rules/file_copier.rb', line 27 def copy_documentation(source_docs, target_docs) FileUtils.mkdir_p(target_docs) Dir.glob(File.join(source_docs, '**', '*')).each do |file| if File.file?(file) copy_with_path(file, source_docs, target_docs) elsif File.directory?(file) rel_path = Pathname.new(file).relative_path_from(Pathname.new(source_docs)).to_s FileUtils.mkdir_p(File.join(target_docs, rel_path)) end end end |
#copy_rules(source_rules, target_rules) ⇒ Object
12 13 14 15 16 17 18 |
# File 'lib/smdev/cursor_rules/file_copier.rb', line 12 def copy_rules(source_rules, target_rules) FileUtils.mkdir_p(target_rules) Dir.glob(File.join(source_rules, '**', '*.mdc')).each do |source_file| copy_with_path(source_file, source_rules, target_rules) end end |
#copy_templates(source_templates, target_templates) ⇒ Object
20 21 22 23 24 25 |
# File 'lib/smdev/cursor_rules/file_copier.rb', line 20 def copy_templates(source_templates, target_templates) return unless Dir.exist?(source_templates) FileUtils.mkdir_p(target_templates) FileUtils.cp_r(Dir.glob("#{source_templates}/*"), target_templates) end |