Class: Corneal::Generators::AppGenerator
- Inherits:
-
Thor::Group
- Object
- Thor::Group
- Corneal::Generators::AppGenerator
- Includes:
- Thor::Actions
- Defined in:
- lib/corneal/generators/app/app_generator.rb
Class Method Summary collapse
Instance Method Summary collapse
- #create_app_directory ⇒ Object
- #create_app_spec ⇒ Object
- #create_capistrano_config ⇒ Object
- #create_config ⇒ Object
- #create_database_initializer ⇒ Object
- #create_db_config ⇒ Object
-
#create_empty_directories ⇒ Object
Create empty directories.
- #create_gemfile ⇒ Object
- #create_public_directory ⇒ Object
- #create_rakefile ⇒ Object
- #create_readme ⇒ Object
- #create_redis_config ⇒ Object
- #create_redis_initializer ⇒ Object
- #create_rvm_gemset ⇒ Object
- #create_spec_helper ⇒ Object
- #initialize_git_repo ⇒ Object
- #install_dependencies ⇒ Object
-
#setup ⇒ Object
Creates instance variables from options passed to corneal.
Class Method Details
.source_root ⇒ Object
28 29 30 |
# File 'lib/corneal/generators/app/app_generator.rb', line 28 def self.source_root File.(File.join(File.dirname(__FILE__), "templates")) end |
Instance Method Details
#create_app_directory ⇒ Object
52 53 54 55 56 |
# File 'lib/corneal/generators/app/app_generator.rb', line 52 def create_app_directory %w{app/controllers app/views app/models}.each do |dir| directory dir, File.join(@app_path, dir) end end |
#create_app_spec ⇒ Object
58 59 60 |
# File 'lib/corneal/generators/app/app_generator.rb', line 58 def create_app_spec template "spec/application_controller_spec.rb", File.join(@app_path, "spec/application_controller_spec.rb") end |
#create_capistrano_config ⇒ Object
98 99 100 101 102 103 104 |
# File 'lib/corneal/generators/app/app_generator.rb', line 98 def create_capistrano_config if @capistrano inside(@app_path) do run('cap install') end end end |
#create_config ⇒ Object
66 67 68 |
# File 'lib/corneal/generators/app/app_generator.rb', line 66 def create_config template "config.ru", File.join(@app_path, "config.ru") end |
#create_database_initializer ⇒ Object
86 87 88 |
# File 'lib/corneal/generators/app/app_generator.rb', line 86 def create_database_initializer template("config/initializers/database.rb", File.join(@app_path, "config/initializers/database.rb")) unless @database.empty? end |
#create_db_config ⇒ Object
82 83 84 |
# File 'lib/corneal/generators/app/app_generator.rb', line 82 def create_db_config template("config/db.yml", File.join(@app_path, "config/db.yml")) unless @database.empty? end |
#create_empty_directories ⇒ Object
Create empty directories
33 34 35 36 37 38 39 40 41 42 |
# File 'lib/corneal/generators/app/app_generator.rb', line 33 def create_empty_directories %w{config/initializers lib spec}.each do |dir| empty_directory File.join(@app_path, dir) end empty_directory File.join(@app_path, 'db/migrate') create_file File.join(@app_path, "lib", ".gitkeep") template "config/environment.rb", File.join(@app_path, "config/environment.rb") end |
#create_gemfile ⇒ Object
70 71 72 |
# File 'lib/corneal/generators/app/app_generator.rb', line 70 def create_gemfile template "Gemfile", File.join(@app_path, "Gemfile") end |
#create_public_directory ⇒ Object
44 45 46 47 48 49 50 |
# File 'lib/corneal/generators/app/app_generator.rb', line 44 def create_public_directory %w{public/stylesheets public/javascripts public/images}.each do |dir| directory dir, File.join(@app_path, dir) end template "public/favicon.ico", File.join(@app_path, "public/favicon.ico") end |
#create_rakefile ⇒ Object
74 75 76 |
# File 'lib/corneal/generators/app/app_generator.rb', line 74 def create_rakefile template "Rakefile", File.join(@app_path, "Rakefile") end |
#create_readme ⇒ Object
78 79 80 |
# File 'lib/corneal/generators/app/app_generator.rb', line 78 def create_readme copy_file "README.md", File.join(@app_path, "README.md") end |
#create_redis_config ⇒ Object
90 91 92 |
# File 'lib/corneal/generators/app/app_generator.rb', line 90 def create_redis_config copy_file("config/redis.yml", File.join(@app_path, "config/redis.yml")) if @redis end |
#create_redis_initializer ⇒ Object
94 95 96 |
# File 'lib/corneal/generators/app/app_generator.rb', line 94 def create_redis_initializer template("config/initializers/redis.rb", File.join(@app_path, "config/initializers/redis.rb")) if @redis end |
#create_rvm_gemset ⇒ Object
106 107 108 109 110 111 112 113 114 |
# File 'lib/corneal/generators/app/app_generator.rb', line 106 def create_rvm_gemset if @rvm create_file(File.join(@app_path, '.ruby-version'), 'ruby-2.1.0') create_file(File.join(@app_path, '.ruby-gemset'), @app_path) @bundle = false puts "You need to run 'bundle install' manually." end end |
#create_spec_helper ⇒ Object
62 63 64 |
# File 'lib/corneal/generators/app/app_generator.rb', line 62 def create_spec_helper template "spec/spec_helper.rb", File.join(@app_path, "spec/spec_helper.rb") end |
#initialize_git_repo ⇒ Object
116 117 118 119 120 |
# File 'lib/corneal/generators/app/app_generator.rb', line 116 def initialize_git_repo inside(@app_path) do run('git init .') if @git end end |
#install_dependencies ⇒ Object
122 123 124 125 126 |
# File 'lib/corneal/generators/app/app_generator.rb', line 122 def install_dependencies inside(@app_path) do run('bundle') if @bundle end end |
#setup ⇒ Object
Creates instance variables from options passed to corneal.
19 20 21 22 23 24 25 26 |
# File 'lib/corneal/generators/app/app_generator.rb', line 19 def setup @app_path = name.directory_name @name = name.file_name .each do |key, value| instance_variable_set "@#{key.to_s}".to_sym, value end end |