Class: Prop::AppGenerator

Inherits:
Rails::Generators::AppGenerator
  • Object
show all
Defined in:
lib/prop/generators/app_generator.rb

Instance Method Summary collapse

Instance Method Details

#configure_appObject



149
150
151
152
153
154
155
156
157
158
159
160
161
# File 'lib/prop/generators/app_generator.rb', line 149

def configure_app
  say 'Configuring app'
  build :configure_action_mailer
  build :blacklist_active_record_attributes
  build :configure_strong_parameters
  build :configure_time_zone
  build :configure_time_formats
  build :configure_rack_timeout
  build :disable_xml_params
  build :setup_default_rake_task
  build :configure_unicorn
  build :setup_foreman
end

#copy_librariesObject



219
220
221
222
# File 'lib/prop/generators/app_generator.rb', line 219

def copy_libraries
  say 'Copying libraries'
  build :copy_libraries
end

#copy_miscellaneous_filesObject



224
225
226
227
# File 'lib/prop/generators/app_generator.rb', line 224

def copy_miscellaneous_files
  say 'Copying miscellaneous support files'
  build :copy_miscellaneous_files
end

#create_github_repoObject



196
197
198
199
# File 'lib/prop/generators/app_generator.rb', line 196

def create_github_repo
  say 'Creating Github repo'
  build :create_github_repo, "#{app_name}"
end

#create_guard_fileObject



173
174
175
176
# File 'lib/prop/generators/app_generator.rb', line 173

def create_guard_file
  say 'Creating Guardfile'
  build :setup_guardfile
end

#create_heroku_appsObject



188
189
190
191
192
193
194
# File 'lib/prop/generators/app_generator.rb', line 188

def create_heroku_apps
  if options[:heroku]
    say 'Creating Heroku apps'
    build :create_heroku_apps
    build :set_heroku_remotes
  end
end

#create_prop_viewsObject



135
136
137
138
139
140
141
# File 'lib/prop/generators/app_generator.rb', line 135

def create_prop_views
  say 'Creating prop views'
  build :create_partials_directory
  build :create_shared_flashes
  build :create_shared_javascripts
  build :create_application_layout
end

#customize_error_pagesObject



229
230
231
232
# File 'lib/prop/generators/app_generator.rb', line 229

def customize_error_pages
  say 'Customizing the 500/404/422 pages'
  build :customize_error_pages
end

#customize_gemfileObject



79
80
81
82
83
# File 'lib/prop/generators/app_generator.rb', line 79

def customize_gemfile
  build :replace_gemfile
  build :set_ruby_to_version_being_used
  bundle_command 'install'
end

#finish_templateObject



30
31
32
33
# File 'lib/prop/generators/app_generator.rb', line 30

def finish_template
  invoke :prop_customizations
  super
end

#generate_specsObject



126
127
128
129
130
131
132
133
# File 'lib/prop/generators/app_generator.rb', line 126

def generate_specs
  say 'Generating specs'
  build :clean_up_factories
  build :generate_login_specs
  build :create_controller_for_sign_in
  build :enable_logout
  build :migrate_test_db
end

#init_gitObject



215
216
217
# File 'lib/prop/generators/app_generator.rb', line 215

def init_git
  build :init_git
end

#initial_commit_and_pushObject



206
207
208
209
# File 'lib/prop/generators/app_generator.rb', line 206

def initial_commit_and_push
  say 'Performing initial commit and pushing to Github'
  build :initial_commit_and_push
end

#initialize_zeusObject



178
179
180
# File 'lib/prop/generators/app_generator.rb', line 178

def initialize_zeus
  build :init_zeus
end

#outroObject



264
265
266
# File 'lib/prop/generators/app_generator.rb', line 264

def outro
  say 'Propped up.'
end

#prop_customizationsObject



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/prop/generators/app_generator.rb', line 35

def prop_customizations
  invoke :resolve_qt4_dependency
  invoke :remove_garbage_files
  invoke :customize_gemfile
  invoke :setup_database
  invoke :setup_development_environment
  invoke :setup_test_environment
  invoke :setup_production_environment
  invoke :setup_staging_environment
  invoke :setup_coffeescript
  invoke :configure_app
  invoke :setup_stylesheets
  invoke :copy_miscellaneous_files
  invoke :customize_error_pages
  invoke :remove_routes_comment_lines
  invoke :setup_modernizr
  invoke :setup_backbone
  invoke :setup_backbone_rails
  invoke :setup_foundation
  invoke :create_prop_views
  invoke :setup_application_js
  invoke :setup_google_places
  invoke :create_guard_file
  invoke :initialize_zeus
  invoke :setup_devise
  invoke :generate_specs
  invoke :setup_git
  invoke :create_heroku_apps
  invoke :create_github_repo
  invoke :setup_travis_ci
  invoke :initial_commit_and_push
  invoke :start_zeus
  invoke :outro
end

#remove_garbage_filesObject



74
75
76
77
# File 'lib/prop/generators/app_generator.rb', line 74

def remove_garbage_files
  build :remove_public_index
  build :remove_rails_logo_image
end

#remove_routes_comment_linesObject



234
235
236
# File 'lib/prop/generators/app_generator.rb', line 234

def remove_routes_comment_lines
  build :remove_routes_comment_lines
end

#resolve_qt4_dependencyObject



70
71
72
# File 'lib/prop/generators/app_generator.rb', line 70

def resolve_qt4_dependency
  build :resolve_qt4_dependency
end

#setup_application_jsObject



256
257
258
# File 'lib/prop/generators/app_generator.rb', line 256

def setup_application_js
  build :setup_application_js
end

#setup_backboneObject



247
248
249
250
# File 'lib/prop/generators/app_generator.rb', line 247

def setup_backbone
  say 'Initializing backbone.js'
  build :setup_backbone
end

#setup_backbone_railsObject



252
253
254
# File 'lib/prop/generators/app_generator.rb', line 252

def setup_backbone_rails
  build :setup_backbone_rails
end

#setup_coffeescriptObject



143
144
145
146
147
# File 'lib/prop/generators/app_generator.rb', line 143

def setup_coffeescript
  say 'Setting up CoffeeScript defaults'
  build :remove_turbolinks
  build :create_common_javascripts
end

#setup_databaseObject



85
86
87
88
89
# File 'lib/prop/generators/app_generator.rb', line 85

def setup_database
  say 'Setting up database'
  build :use_postgres_config_template
  build :create_database
end

#setup_development_environmentObject



91
92
93
94
95
96
97
# File 'lib/prop/generators/app_generator.rb', line 91

def setup_development_environment
  say 'Setting up the development environment'
  build :raise_on_delivery_errors
  build :raise_on_unpermitted_parameters
  build :provide_setup_script
  build :configure_generators
end

#setup_deviseObject



121
122
123
124
# File 'lib/prop/generators/app_generator.rb', line 121

def setup_devise
  say 'Creating users, login, and facebook connect'
  build :setup_devise
end

#setup_foundationObject



238
239
240
# File 'lib/prop/generators/app_generator.rb', line 238

def setup_foundation
  build :setup_foundation
end

#setup_gitObject



182
183
184
185
186
# File 'lib/prop/generators/app_generator.rb', line 182

def setup_git
  say 'Initializing git'
  invoke :setup_gitignore
  invoke :init_git
end

#setup_gitignoreObject



211
212
213
# File 'lib/prop/generators/app_generator.rb', line 211

def setup_gitignore
  build :gitignore_files
end

#setup_google_placesObject



168
169
170
171
# File 'lib/prop/generators/app_generator.rb', line 168

def setup_google_places
  say 'Integrating Google Places library'
  build :setup_google_places
end

#setup_modernizrObject



242
243
244
245
# File 'lib/prop/generators/app_generator.rb', line 242

def setup_modernizr
  say 'Initializing modernizr.js'
  build :setup_modernizr
end

#setup_production_environmentObject



111
112
113
114
# File 'lib/prop/generators/app_generator.rb', line 111

def setup_production_environment
  say 'Setting up the production environment'
  build :configure_smtp
end

#setup_staging_environmentObject



116
117
118
119
# File 'lib/prop/generators/app_generator.rb', line 116

def setup_staging_environment
  say 'Setting up the staging environment'
  build :setup_staging_environment
end

#setup_stylesheetsObject



163
164
165
166
# File 'lib/prop/generators/app_generator.rb', line 163

def setup_stylesheets
  say 'Setting up stylesheets'
  build :setup_stylesheets
end

#setup_test_environmentObject



99
100
101
102
103
104
105
106
107
108
109
# File 'lib/prop/generators/app_generator.rb', line 99

def setup_test_environment
  say 'Setting up the test environment'
  build :enable_factory_girl_syntax
  build :test_factories_first
  build :generate_rspec
  build :configure_rspec
  build :use_rspec_binstub
  build :conifigure_background_jobs_for_rspec
  build :enable_database_cleaner
  build :configure_capybara_webkit
end

#setup_travis_ciObject



201
202
203
204
# File 'lib/prop/generators/app_generator.rb', line 201

def setup_travis_ci
  say 'Setting up Travis CI'
  build :setup_travis_ci
end

#start_zeusObject



260
261
262
# File 'lib/prop/generators/app_generator.rb', line 260

def start_zeus
  build :start_zeus
end