rails_apps_composer 2.2.15 → 2.2.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/rails_wizard/diagnostics.rb +4 -0
- data/recipes/core.rb +1 -1
- data/recipes/gems.rb +11 -5
- data/recipes/railsapps.rb +17 -0
- data/recipes/saas.rb +97 -0
- data/version.rb +1 -1
- metadata +5 -4
@@ -18,8 +18,10 @@ module RailsWizard
|
|
18
18
|
@@recipes << %w(controllers email extras frontend gems git init models railsapps readme routes setup testing views)
|
19
19
|
@@recipes << %w(controllers core email extras frontend gems git init models railsapps readme routes setup testing views)
|
20
20
|
@@recipes << %w(controllers core email extras frontend gems git init models prelaunch railsapps readme routes setup testing views)
|
21
|
+
@@recipes << %w(controllers core email extras frontend gems git init models prelaunch railsapps readme routes saas setup testing views)
|
21
22
|
@@recipes << %w(controllers email example extras frontend gems git init models railsapps readme routes setup testing views)
|
22
23
|
@@recipes << %w(controllers email example extras frontend gems git init models prelaunch railsapps readme routes setup testing views)
|
24
|
+
@@recipes << %w(controllers email example extras frontend gems git init models prelaunch railsapps readme routes saas setup testing views)
|
23
25
|
|
24
26
|
### collections of preferences that are known to work together
|
25
27
|
|
@@ -37,6 +39,8 @@ module RailsWizard
|
|
37
39
|
# :main_branch
|
38
40
|
|
39
41
|
@@prefs = []
|
42
|
+
@@prefs << {:railsapps=>"rails-stripe-membership-saas", :database=>"sqlite", :unit_test=>"rspec", :integration=>"cucumber", :fixtures=>"factory_girl", :frontend=>"bootstrap", :bootstrap=>"sass", :email=>"gmail", :authentication=>"devise", :devise_modules=>"default", :authorization=>"cancan", :starter_app=>"admin_app", :form_builder=>"simple_form"}
|
43
|
+
@@prefs << {:railsapps=>"rails-stripe-membership-saas", :database=>"sqlite", :unit_test=>"rspec", :integration=>"cucumber", :fixtures=>"factory_girl", :frontend=>"bootstrap", :bootstrap=>"sass", :email=>"mandrill", :authentication=>"devise", :devise_modules=>"confirmable", :authorization=>"cancan", :starter_app=>"admin_app", :form_builder=>"simple_form"}
|
40
44
|
@@prefs << {:railsapps=>"rails-prelaunch-signup", :database=>"sqlite", :unit_test=>"rspec", :integration=>"cucumber", :fixtures=>"factory_girl", :frontend=>"bootstrap", :bootstrap=>"sass", :email=>"mandrill", :authentication=>"devise", :devise_modules=>"confirmable", :authorization=>"cancan", :starter_app=>"admin_app", :form_builder=>"simple_form"}
|
41
45
|
@@prefs << {:railsapps=>"rails3-bootstrap-devise-cancan", :database=>"sqlite", :unit_test=>"rspec", :integration=>"cucumber", :fixtures=>"factory_girl", :frontend=>"bootstrap", :bootstrap=>"sass", :email=>"gmail", :authentication=>"devise", :devise_modules=>"default", :authorization=>"cancan", :starter_app=>"admin_app", :form_builder=>"simple_form"}
|
42
46
|
@@prefs << {:railsapps=>"rails3-devise-rspec-cucumber", :database=>"sqlite", :unit_test=>"rspec", :integration=>"cucumber", :fixtures=>"factory_girl", :frontend=>"none", :email=>"gmail", :authentication=>"devise", :devise_modules=>"default", :authorization=>"none", :starter_app=>"users_app", :form_builder=>"none"}
|
data/recipes/core.rb
CHANGED
@@ -10,5 +10,5 @@ name: core
|
|
10
10
|
description: "Select all core recipes."
|
11
11
|
author: RailsApps
|
12
12
|
|
13
|
-
requires: [git, railsapps, setup, readme, gems, testing, email, models, controllers, views, routes, frontend, init, prelaunch, extras]
|
13
|
+
requires: [git, railsapps, setup, readme, gems, testing, email, models, controllers, views, routes, frontend, init, prelaunch, saas, extras]
|
14
14
|
category: collections
|
data/recipes/gems.rb
CHANGED
@@ -35,7 +35,7 @@ if prefer :templates, 'haml'
|
|
35
35
|
gem 'ruby_parser', '>= 2.3.1', :group => :development
|
36
36
|
end
|
37
37
|
if prefer :templates, 'slim'
|
38
|
-
gem 'slim', '>= 1.3.
|
38
|
+
gem 'slim', '>= 1.3.3'
|
39
39
|
gem 'haml2slim', '>= 0.4.6', :group => :development
|
40
40
|
# Haml is needed for conversion of HTML to Slim
|
41
41
|
gem 'haml', '>= 3.1.6', :group => :development
|
@@ -46,7 +46,7 @@ end
|
|
46
46
|
|
47
47
|
## Testing Framework
|
48
48
|
if prefer :unit_test, 'rspec'
|
49
|
-
gem 'rspec-rails', '>= 2.11.
|
49
|
+
gem 'rspec-rails', '>= 2.11.4', :group => [:development, :test]
|
50
50
|
gem 'capybara', '>= 1.1.2', :group => :test if prefer :integration, 'rspec-capybara'
|
51
51
|
if prefer :orm, 'mongoid'
|
52
52
|
# use the database_cleaner gem to reset the test database
|
@@ -73,11 +73,11 @@ gem 'fabrication', '>= 2.3.0', :group => [:development, :test] if prefer :fixtur
|
|
73
73
|
gem 'machinist', '>= 2.0', :group => :test if prefer :fixtures, 'machinist'
|
74
74
|
|
75
75
|
## Front-end Framework
|
76
|
-
gem 'bootstrap-sass', '>= 2.1.0.
|
76
|
+
gem 'bootstrap-sass', '>= 2.1.0.1' if prefer :bootstrap, 'sass'
|
77
77
|
gem 'compass-rails', '>= 1.0.3', :group => :assets if prefer :frontend, 'foundation'
|
78
78
|
gem 'zurb-foundation', '>= 3.1.1', :group => :assets if prefer :frontend, 'foundation'
|
79
79
|
if prefer :bootstrap, 'less'
|
80
|
-
gem 'twitter-bootstrap-rails', '>= 2.1.
|
80
|
+
gem 'twitter-bootstrap-rails', '>= 2.1.4', :group => :assets
|
81
81
|
# install gem 'therubyracer' to use Less
|
82
82
|
gem 'therubyracer', '>= 0.10.2', :group => :assets, :platform => :ruby
|
83
83
|
end
|
@@ -88,7 +88,7 @@ gem 'hominid', '>= 3.0.5' if prefer :email, 'mandrill'
|
|
88
88
|
|
89
89
|
## Authentication (Devise)
|
90
90
|
gem 'devise', '>= 2.1.2' if prefer :authentication, 'devise'
|
91
|
-
gem 'devise_invitable', '>= 1.
|
91
|
+
gem 'devise_invitable', '>= 1.1.1' if prefer :devise_modules, 'invitable'
|
92
92
|
|
93
93
|
## Authentication (OmniAuth)
|
94
94
|
gem 'omniauth', '>= 1.1.1' if prefer :authentication, 'omniauth'
|
@@ -108,6 +108,12 @@ end
|
|
108
108
|
## Form Builder
|
109
109
|
gem 'simple_form', '>= 2.0.4' if prefer :form_builder, 'simple_form'
|
110
110
|
|
111
|
+
## Membership App
|
112
|
+
if prefer :railsapps, 'rails-stripe-membership-saas'
|
113
|
+
gem 'stripe', '>= 1.7.4'
|
114
|
+
gem 'stripe_event', '>= 0.4.0'
|
115
|
+
end
|
116
|
+
|
111
117
|
## Signup App
|
112
118
|
if prefer :railsapps, 'rails-prelaunch-signup'
|
113
119
|
gem 'google_visualr', '>= 2.1.2'
|
data/recipes/railsapps.rb
CHANGED
@@ -3,6 +3,8 @@
|
|
3
3
|
|
4
4
|
prefs[:railsapps] = multiple_choice "Install an example application?",
|
5
5
|
[["I want to build my own application", "none"],
|
6
|
+
["rails-stripe-membership-saas", "rails-stripe-membership-saas"],
|
7
|
+
["rails-prelaunch-signup", "rails-prelaunch-signup"],
|
6
8
|
["rails3-bootstrap-devise-cancan", "rails3-bootstrap-devise-cancan"],
|
7
9
|
["rails3-devise-rspec-cucumber", "rails3-devise-rspec-cucumber"],
|
8
10
|
["rails3-mongoid-devise", "rails3-mongoid-devise"],
|
@@ -10,6 +12,21 @@ prefs[:railsapps] = multiple_choice "Install an example application?",
|
|
10
12
|
["rails3-subdomains", "rails3-subdomains"]] unless prefs.has_key? :railsapps
|
11
13
|
|
12
14
|
case prefs[:railsapps]
|
15
|
+
when 'rails-stripe-membership-saas'
|
16
|
+
prefs[:git] = true
|
17
|
+
prefs[:database] = 'sqlite'
|
18
|
+
prefs[:unit_test] = 'rspec'
|
19
|
+
prefs[:integration] = 'cucumber'
|
20
|
+
prefs[:fixtures] = 'factory_girl'
|
21
|
+
prefs[:frontend] = 'bootstrap'
|
22
|
+
prefs[:bootstrap] = 'sass'
|
23
|
+
prefs[:email] = 'gmail'
|
24
|
+
prefs[:authentication] = 'devise'
|
25
|
+
prefs[:devise_modules] = 'default'
|
26
|
+
prefs[:authorization] = 'cancan'
|
27
|
+
prefs[:starter_app] = 'admin_app'
|
28
|
+
prefs[:form_builder] = 'simple_form'
|
29
|
+
prefs[:quiet_assets] = true
|
13
30
|
when 'rails-prelaunch-signup'
|
14
31
|
prefs[:git] = true
|
15
32
|
prefs[:database] = 'sqlite'
|
data/recipes/saas.rb
ADDED
@@ -0,0 +1,97 @@
|
|
1
|
+
# Application template recipe for the rails_apps_composer. Change the recipe here:
|
2
|
+
# https://github.com/RailsApps/rails_apps_composer/blob/master/recipes/saas.rb
|
3
|
+
|
4
|
+
if prefer :railsapps, 'rails-stripe-membership-saas'
|
5
|
+
|
6
|
+
after_everything do
|
7
|
+
say_wizard "recipe running after 'bundle install'"
|
8
|
+
repo = 'https://raw.github.com/RailsApps/rails-stripe-membership-saas/master/'
|
9
|
+
|
10
|
+
# >-------------------------------[ Clean up starter app ]--------------------------------<
|
11
|
+
|
12
|
+
%w{
|
13
|
+
public/index.html
|
14
|
+
app/assets/images/rails.png
|
15
|
+
}.each { |file| remove_file file }
|
16
|
+
# remove commented lines and multiple blank lines from Gemfile
|
17
|
+
# thanks to https://github.com/perfectline/template-bucket/blob/master/cleanup.rb
|
18
|
+
gsub_file 'Gemfile', /#.*\n/, "\n"
|
19
|
+
gsub_file 'Gemfile', /\n^\s*\n/, "\n"
|
20
|
+
# remove commented lines and multiple blank lines from config/routes.rb
|
21
|
+
gsub_file 'config/routes.rb', / #.*\n/, "\n"
|
22
|
+
gsub_file 'config/routes.rb', /\n^\s*\n/, "\n"
|
23
|
+
# GIT
|
24
|
+
git :add => '-A' if prefer :git, true
|
25
|
+
git :commit => '-qm "rails_apps_composer: clean up starter app"' if prefer :git, true
|
26
|
+
|
27
|
+
# >-------------------------------[ Cucumber ]--------------------------------<
|
28
|
+
say_wizard "copying Cucumber scenarios from the rails-stripe-membership-saas examples"
|
29
|
+
remove_file 'features/users/user_show.feature'
|
30
|
+
copy_from_repo 'features/users/sign_in.feature', :repo => repo
|
31
|
+
copy_from_repo 'features/users/sign_up.feature', :repo => repo
|
32
|
+
copy_from_repo 'features/step_definitions/user_steps.rb', :repo => repo
|
33
|
+
copy_from_repo 'config/locales/devise.en.yml', :repo => repo
|
34
|
+
|
35
|
+
# >-------------------------------[ Models ]--------------------------------<
|
36
|
+
copy_from_repo 'app/models/ability.rb', :repo => repo
|
37
|
+
copy_from_repo 'app/models/user.rb', :repo => repo
|
38
|
+
|
39
|
+
# >-------------------------------[ Init ]--------------------------------<
|
40
|
+
copy_from_repo 'db/seeds.rb', :repo => repo
|
41
|
+
copy_from_repo 'config/initializers/stripe.rb', :repo => repo
|
42
|
+
|
43
|
+
# >-------------------------------[ Migrations ]--------------------------------<
|
44
|
+
generate 'migration AddStripeToUsers customer_id:string last_4_digits:string'
|
45
|
+
run 'bundle exec rake db:drop'
|
46
|
+
run 'bundle exec rake db:migrate'
|
47
|
+
run 'bundle exec rake db:test:prepare'
|
48
|
+
run 'bundle exec rake db:seed'
|
49
|
+
|
50
|
+
# >-------------------------------[ Controllers ]--------------------------------<
|
51
|
+
copy_from_repo 'app/controllers/home_controller.rb', :repo => repo
|
52
|
+
generate 'controller content silver gold platinum --skip-stylesheets --skip-javascripts'
|
53
|
+
copy_from_repo 'app/controllers/content_controller.rb', :repo => repo
|
54
|
+
copy_from_repo 'app/controllers/registrations_controller.rb', :repo => repo
|
55
|
+
copy_from_repo 'app/controllers/application_controller.rb', :repo => repo
|
56
|
+
|
57
|
+
# >-------------------------------[ Mailers ]--------------------------------<
|
58
|
+
generate 'mailer UserMailer'
|
59
|
+
copy_from_repo 'spec/mailers/user_mailer_spec.rb', :repo => repo
|
60
|
+
copy_from_repo 'app/mailers/user_mailer.rb', :repo => repo
|
61
|
+
|
62
|
+
# >-------------------------------[ Views ]--------------------------------<
|
63
|
+
copy_from_repo 'app/views/home/index.html.erb', :repo => repo
|
64
|
+
copy_from_repo 'app/views/layouts/_navigation.html.erb', :repo => repo
|
65
|
+
copy_from_repo 'app/views/devise/registrations/new.html.erb', :repo => repo
|
66
|
+
copy_from_repo 'app/views/devise/registrations/edit.html.erb', :repo => repo
|
67
|
+
copy_from_repo 'app/views/user_mailer/expire_email.html.erb', :repo => repo
|
68
|
+
copy_from_repo 'app/views/user_mailer/expire_email.text.erb', :repo => repo
|
69
|
+
|
70
|
+
# >-------------------------------[ Routes ]--------------------------------<
|
71
|
+
copy_from_repo 'config/routes.rb', :repo => repo
|
72
|
+
### CORRECT APPLICATION NAME ###
|
73
|
+
gsub_file 'config/routes.rb', /^.*.routes.draw do/, "#{app_const}.routes.draw do"
|
74
|
+
|
75
|
+
# >-------------------------------[ Assets ]--------------------------------<
|
76
|
+
copy_from_repo 'app/assets/javascripts/application.js', :repo => repo
|
77
|
+
copy_from_repo 'app/assets/javascripts/jquery.readyselector.js', :repo => repo
|
78
|
+
copy_from_repo 'app/assets/javascripts/jquery.externalscript.js', :repo => repo
|
79
|
+
copy_from_repo 'app/assets/javascripts/registrations.js.erb', :repo => repo
|
80
|
+
copy_from_repo 'app/assets/stylesheets/application.css.scss', :repo => repo
|
81
|
+
copy_from_repo 'app/assets/stylesheets/pricing.css.scss', :repo => repo
|
82
|
+
|
83
|
+
### GIT ###
|
84
|
+
git :add => '-A' if prefer :git, true
|
85
|
+
git :commit => '-qm "rails_apps_composer: membership app"' if prefer :git, true
|
86
|
+
end # after_bundler
|
87
|
+
end # rails-stripe-membership-saas
|
88
|
+
|
89
|
+
__END__
|
90
|
+
|
91
|
+
name: prelaunch
|
92
|
+
description: "Install an example application for a membership site."
|
93
|
+
author: RailsApps
|
94
|
+
|
95
|
+
requires: [core]
|
96
|
+
run_after: [setup, gems, models, controllers, views, frontend, init]
|
97
|
+
category: apps
|
data/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails_apps_composer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.16
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-10-
|
12
|
+
date: 2012-10-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: i18n
|
@@ -169,6 +169,7 @@ files:
|
|
169
169
|
- recipes/railsapps.rb
|
170
170
|
- recipes/readme.rb
|
171
171
|
- recipes/routes.rb
|
172
|
+
- recipes/saas.rb
|
172
173
|
- recipes/setup.rb
|
173
174
|
- recipes/testing.rb
|
174
175
|
- recipes/views.rb
|
@@ -201,7 +202,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
201
202
|
version: '0'
|
202
203
|
segments:
|
203
204
|
- 0
|
204
|
-
hash:
|
205
|
+
hash: 2773202915050764008
|
205
206
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
206
207
|
none: false
|
207
208
|
requirements:
|
@@ -210,7 +211,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
210
211
|
version: '0'
|
211
212
|
segments:
|
212
213
|
- 0
|
213
|
-
hash:
|
214
|
+
hash: 2773202915050764008
|
214
215
|
requirements: []
|
215
216
|
rubyforge_project: rails_apps_composer
|
216
217
|
rubygems_version: 1.8.24
|