Class: Troy::Generator
- Inherits:
-
Thor::Group
- Object
- Thor::Group
- Troy::Generator
- Includes:
- Thor::Actions
- Defined in:
- lib/troy/generator.rb
Overview
The Troy::Generator class will create a new site structure.
ebook = Troy::Generator.new
ebook.destination_root = "/some/path/site-name"
ebook.invoke_all
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.source_root ⇒ Object
15 16 17 |
# File 'lib/troy/generator.rb', line 15 def self.source_root File.("../../templates", __dir__) end |
Instance Method Details
#bundle_install ⇒ Object
43 44 45 46 47 |
# File 'lib/troy/generator.rb', line 43 def bundle_install inside destination_root do run "bundle install" end end |
#copy_files ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/troy/generator.rb', line 30 def copy_files copy_file "helpers.rb", "config/helpers.rb" copy_file "default.erb", "layouts/default.erb" copy_file "index.erb", "source/index.erb" copy_file "404.erb", "source/404.erb" copy_file "500.erb", "source/500.erb" copy_file "Gemfile", "Gemfile" copy_file "config.ru", "config.ru" copy_file "troy.rb", "config/troy.rb" copy_file "style.css", "assets/styles/main.css" copy_file "script.js", "assets/scripts/main.js" end |
#create_directories ⇒ Object
19 20 21 22 23 24 25 26 27 28 |
# File 'lib/troy/generator.rb', line 19 def create_directories empty_directory "assets/javascripts" empty_directory "assets/stylesheets" empty_directory "assets/images" empty_directory "assets/media" empty_directory "source" empty_directory "config" empty_directory "layouts" empty_directory "partials" end |