Class: Bluebase_api::AppGenerator
- Inherits:
-
Rails::Generators::AppGenerator
- Object
- Rails::Generators::AppGenerator
- Bluebase_api::AppGenerator
- Defined in:
- lib/bluebase_api/generators/app_generator.rb
Instance Method Summary collapse
- #bluebase_api_customization ⇒ Object
- #customize_app_directory ⇒ Object
- #customize_bin_files ⇒ Object
- #customize_config_files ⇒ Object
- #customize_lib_directory ⇒ Object
- #customize_public_directory ⇒ Object
- #customize_root_files ⇒ Object
- #customize_spec_files ⇒ Object
- #customize_tmp_directory ⇒ Object
- #customize_vendor_directory ⇒ 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_api_customization ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 28 def bluebase_api_customization invoke :customize_root_files invoke :customize_bin_files invoke :customize_config_files invoke :customize_spec_files invoke :customize_app_directory invoke :customize_public_directory invoke :customize_vendor_directory invoke :customize_lib_directory invoke :customize_tmp_directory invoke :setup_git_and_github invoke :setup_heroku_apps invoke :outro end |
#customize_app_directory ⇒ Object
88 89 90 91 92 93 94 95 96 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 88 def customize_app_directory build :configure_api_directory build :configure_v1_directory build :add_base_controller build :replace_application_controller build :add_serializers_directory build :remove_app_assets_directory build :remove_app_views_directory end |
#customize_bin_files ⇒ Object
53 54 55 56 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 53 def customize_bin_files # Rails 4.2.0 comes with a setup script by default # build :add_setup_to_bin end |
#customize_config_files ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 58 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_i18n_tasks_yml build :replace_secrets_yml build :add_smtp_settings build :replace_routes_rb end |
#customize_lib_directory ⇒ Object
84 85 86 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 84 def customize_lib_directory build :remove_lib_assets_directory end |
#customize_public_directory ⇒ Object
98 99 100 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 98 def customize_public_directory build :remove_html_files end |
#customize_root_files ⇒ Object
43 44 45 46 47 48 49 50 51 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 43 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_guardfile build :add_dot_rspec end |
#customize_spec_files ⇒ Object
75 76 77 78 79 80 81 82 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 75 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 |
#customize_tmp_directory ⇒ Object
106 107 108 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 106 def customize_tmp_directory build :remove_tmp_assets_directory end |
#customize_vendor_directory ⇒ Object
102 103 104 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 102 def customize_vendor_directory build :remove_vendor_assets_directories end |
#finish_template ⇒ Object
Invoked after Rails generates app
23 24 25 26 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 23 def finish_template invoke :bluebase_api_customization super end |
#outro ⇒ Object
132 133 134 135 136 137 138 139 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 132 def outro say "Your bluebase_api 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
141 142 143 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 141 def run_bundle # We'll run it ourselves end |
#setup_git_and_github ⇒ Object
110 111 112 113 114 115 116 117 118 119 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 110 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
121 122 123 124 125 126 127 128 129 130 |
# File 'lib/bluebase_api/generators/app_generator.rb', line 121 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 |