Class: Bluebase::AppGenerator
- Inherits:
-
Rails::Generators::AppGenerator
- Object
- Rails::Generators::AppGenerator
- Bluebase::AppGenerator
- Defined in:
- lib/bluebase/generators/app_generator.rb
Instance Method Summary collapse
- #bluebase_customization ⇒ Object
- #customize_app_files ⇒ Object
- #customize_bin_files ⇒ Object
- #customize_config_files ⇒ Object
- #customize_root_files ⇒ Object
- #customize_spec_files ⇒ Object
-
#finish_template ⇒ Object
Invoked after Rails generates app.
- #outro ⇒ Object
- #run_bundle ⇒ Object
- #setup_git_and_github ⇒ Object
- #setup_heroku_apps ⇒ Object
Instance Method Details
#bluebase_customization ⇒ Object
28 29 30 31 32 33 34 35 36 37 |
# File 'lib/bluebase/generators/app_generator.rb', line 28 def bluebase_customization invoke :customize_root_files invoke :customize_app_files invoke :customize_bin_files invoke :customize_config_files invoke :customize_spec_files invoke :setup_git_and_github invoke :setup_heroku_apps invoke :outro end |
#customize_app_files ⇒ Object
50 51 52 53 54 55 |
# File 'lib/bluebase/generators/app_generator.rb', line 50 def customize_app_files build :add_vendor_dirs build :replace_application_css_with_scss build :add_application_folder_and_files_to_views build :replace_application_erb_with_slim end |
#customize_bin_files ⇒ Object
57 58 59 |
# File 'lib/bluebase/generators/app_generator.rb', line 57 def customize_bin_files build :add_setup_to_bin end |
#customize_config_files ⇒ Object
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/bluebase/generators/app_generator.rb', line 61 def customize_config_files build :configure_application_environment build :configure_development_environment build :configure_test_environment build :configure_production_environment build :add_staging_environment build :add_devise_config build :add_figaro_config build :replace_en_yml build :add_application_yml build :add_database_yml if [:database] == 'postgresql' build :add_travis_database_yml build :add_i18n_tasks_yml build :replace_secrets_yml build :add_smtp_settings build :remove_routes_comment_lines end |
#customize_root_files ⇒ Object
39 40 41 42 43 44 45 46 47 48 |
# File 'lib/bluebase/generators/app_generator.rb', line 39 def customize_root_files build :replace_gemfile build :add_envrc build :replace_gitignore build :add_rubocop_and_hound_config build :add_rvm_config build :add_travis_config build :add_guardfile build :add_dot_rspec end |
#customize_spec_files ⇒ Object
79 80 81 82 83 84 85 86 |
# File 'lib/bluebase/generators/app_generator.rb', line 79 def customize_spec_files build :add_spec_dirs build :configure_rspec build :configure_factorygirl build :configure_actionmailer build :configure_i18n build :configure_database_cleaner end |
#finish_template ⇒ Object
Invoked after Rails generates app
23 24 25 26 |
# File 'lib/bluebase/generators/app_generator.rb', line 23 def finish_template invoke :bluebase_customization super end |
#outro ⇒ Object
110 111 112 113 114 115 116 117 |
# File 'lib/bluebase/generators/app_generator.rb', line 110 def outro say "Your bluebase is complete!" say "Remember to set:" say "- Your database settings in config/database.yml" say "- Your env variables in config/application.yml" say "- Your Code Climate token in .travis.yml" say "Afterward, you can now run bin/setup in your project directory to set up the app." end |
#run_bundle ⇒ Object
119 120 121 |
# File 'lib/bluebase/generators/app_generator.rb', line 119 def run_bundle # We'll run it ourselves end |
#setup_git_and_github ⇒ Object
88 89 90 91 92 93 94 95 96 97 |
# File 'lib/bluebase/generators/app_generator.rb', line 88 def setup_git_and_github if ![:skip_git] say "Initializing git" build :git_init if [:github] say "Creating github repo" build :create_github_repo, [:github] end end end |
#setup_heroku_apps ⇒ Object
99 100 101 102 103 104 105 106 107 108 |
# File 'lib/bluebase/generators/app_generator.rb', line 99 def setup_heroku_apps if [:heroku] say "Creating heroku apps" build :create_heroku_apps build :set_heroku_remotes build :set_heroku_env_variables build :add_heroku_addons build :set_memory_management_variable end end |