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.
@@ -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.2'
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.0', :group => [:development, :test]
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.0' if prefer :bootstrap, 'sass'
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.3', :group => :assets
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.0.3' if prefer :devise_modules, 'invitable'
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
@@ -1,3 +1,3 @@
1
1
  module RailsWizard
2
- VERSION = "2.2.15"
2
+ VERSION = "2.2.16"
3
3
  end
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.15
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 00:00:00.000000000 Z
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: -3522021324614826310
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: -3522021324614826310
214
+ hash: 2773202915050764008
214
215
  requirements: []
215
216
  rubyforge_project: rails_apps_composer
216
217
  rubygems_version: 1.8.24