rails_apps_composer 1.3.1 → 1.4.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.textile +6 -8
- data/lib/rails_wizard/command.rb +49 -30
- data/recipes/add_user.rb +6 -0
- data/recipes/airbrake.rb +34 -0
- data/recipes/backbone.rb +1 -1
- data/recipes/cucumber.rb +2 -2
- data/recipes/datamapper.rb +111 -0
- data/recipes/devise.rb +2 -2
- data/recipes/extras.rb +4 -1
- data/recipes/mongoid.rb +1 -1
- data/recipes/rspec.rb +2 -2
- data/recipes/seed_database.rb +1 -1
- data/version.rb +1 -1
- metadata +24 -64
- data/recipes/hoptoad.rb +0 -34
data/README.textile
CHANGED
@@ -94,11 +94,9 @@ h4. Save the Application Template
|
|
94
94
|
The Rails Apps Composer gem creates an application template as an intermediate step before generating an application. You can generate and save the application template. Here's an example of generating an application template and saving the template to a file:
|
95
95
|
|
96
96
|
<pre>
|
97
|
-
$
|
97
|
+
$ rails_apps_composer template ~/Desktop/template.txt -r recipe1 recipe2
|
98
98
|
</pre>
|
99
99
|
|
100
|
-
If you don't include the @--silent@ option, the rake task will generate the application template with an extraneous first line. Open the template file and remove the first line if you encounter this problem.
|
101
|
-
|
102
100
|
The Rails Apps Composer gem creates an application template that can be used by the @rails new@ command with the @-m@ option. For example:
|
103
101
|
|
104
102
|
<pre>
|
@@ -114,7 +112,7 @@ h4. Template for Rails 3 + Haml + HTML5
|
|
114
112
|
This application template will offer you a choice of Haml or ERB, give you options for a CSS front-end framework such as Twitter Bootstrap, and create a default application layout using HTML5:
|
115
113
|
|
116
114
|
<pre>
|
117
|
-
$
|
115
|
+
$ rails_apps_composer template ~/Desktop/template.txt -r haml home_page html5 cleanup extras git
|
118
116
|
</pre>
|
119
117
|
|
120
118
|
Then generate the application:
|
@@ -128,7 +126,7 @@ h4. Template for Rails 3 + Devise + RSpec + Cucumber
|
|
128
126
|
To build a reusable application template for the "rails3-devise-rspec-cucumber":http://github.com/RailsApps/rails3-devise-rspec-cucumber/ example application, run the command:
|
129
127
|
|
130
128
|
<pre>
|
131
|
-
$
|
129
|
+
$ rails_apps_composer template ~/Desktop/template.txt -r haml rspec cucumber guard action_mailer devise add_user home_page home_page_users seed_database users_page html5 cleanup extras git
|
132
130
|
</pre>
|
133
131
|
|
134
132
|
Then generate the application using the @-T@ flag.
|
@@ -142,7 +140,7 @@ h4. Template for Rails 3 + Mongoid + Devise
|
|
142
140
|
To build a reusable application template for the "rails3-mongoid-devise":http://github.com/RailsApps/rails3-mongoid-devise/ example application, run the command:
|
143
141
|
|
144
142
|
<pre>
|
145
|
-
$
|
143
|
+
$ rails_apps_composer template ~/Desktop/template.txt -r haml rspec cucumber guard mongoid action_mailer devise add_user home_page home_page_users seed_database users_page html5 cleanup extras git
|
146
144
|
</pre>
|
147
145
|
|
148
146
|
Then generate the application using the @-T -O@ flags.
|
@@ -156,7 +154,7 @@ h4. Template for Rails 3 + Mongoid + OmniAuth
|
|
156
154
|
To build a reusable application template for the "rails3-mongoid-omniauth":http://github.com/RailsApps/rails3-mongoid-omniauth/ example application, run the command:
|
157
155
|
|
158
156
|
<pre>
|
159
|
-
$
|
157
|
+
$ rails_apps_composer template ~/Desktop/template.txt -r haml rspec cucumber guard mongoid seed_database add_user omniauth home_page home_page_users html5 users_page omniauth_email cleanup extras git
|
160
158
|
</pre>
|
161
159
|
|
162
160
|
Then generate the application using the @-T -O@ flags.
|
@@ -170,7 +168,7 @@ h4. Template for Rails 3 + Subdomains
|
|
170
168
|
To build a reusable application template for the "rails3-subdomains":https://github.com/RailsApps/rails3-subdomains example application, run the command:
|
171
169
|
|
172
170
|
<pre>
|
173
|
-
$
|
171
|
+
$ rails_apps_composer template ~/Desktop/template.txt -r haml rspec cucumber guard mongoid action_mailer devise add_user home_page home_page_users seed_database users_page subdomains html5 cleanup extras git
|
174
172
|
</pre>
|
175
173
|
|
176
174
|
Then generate the application using the @-T -O@ flags.
|
data/lib/rails_wizard/command.rb
CHANGED
@@ -7,25 +7,13 @@ module RailsWizard
|
|
7
7
|
desc "new APP_NAME", "create a new Rails app"
|
8
8
|
method_option :recipes, :type => :array, :aliases => "-r"
|
9
9
|
def new(name)
|
10
|
-
|
11
|
-
|
12
|
-
else
|
13
|
-
@recipes = []
|
10
|
+
run_template(name, ask_for_recipes, nil)
|
11
|
+
end
|
14
12
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
elsif RailsWizard::Recipes.list.include?(recipe)
|
20
|
-
@recipes << recipe
|
21
|
-
puts
|
22
|
-
puts "> #{green}Added '#{recipe}' to template.#{clear}"
|
23
|
-
else
|
24
|
-
puts
|
25
|
-
puts "> #{red}Invalid recipe, please try again.#{clear}"
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
13
|
+
desc "template TEMPLATE_FILE", "create a new Rails template"
|
14
|
+
method_option :recipes, :type => :array, :aliases => "-r"
|
15
|
+
def template(template_name)
|
16
|
+
run_template(nil, ask_for_recipes, template_name)
|
29
17
|
end
|
30
18
|
|
31
19
|
desc "list [CATEGORY]", "list available recipes (optionally by category)"
|
@@ -49,30 +37,61 @@ module RailsWizard
|
|
49
37
|
def green; "\033[32m" end
|
50
38
|
def yellow; "\033[33m" end
|
51
39
|
|
52
|
-
def print_recipes
|
53
|
-
puts
|
54
|
-
puts
|
40
|
+
def print_recipes(recipes)
|
55
41
|
puts
|
56
|
-
|
57
|
-
|
58
|
-
puts
|
42
|
+
puts "#{bold}#{cyan}Available Recipes#{clear}:"
|
43
|
+
RailsWizard::Recipes.categories.each do |category|
|
44
|
+
puts "#{bold}#{cyan}#{category}#{clear}: " +RailsWizard::Recipes.for(category).collect {|recipe|
|
45
|
+
recipes.include?(recipe) ? "#{green}#{bold}#{recipe}#{clear}" : recipe
|
46
|
+
}.join(', ')
|
59
47
|
end
|
60
|
-
puts "#{bold}#{cyan}Available Recipes:#{clear} " + RailsWizard::Recipes.list.join(', ')
|
61
48
|
puts
|
62
49
|
end
|
63
50
|
|
64
|
-
def
|
51
|
+
def ask_for_recipes
|
52
|
+
if options[:recipes]
|
53
|
+
return options[:recipes]
|
54
|
+
end
|
55
|
+
recipes=[]
|
56
|
+
while recipe = ask("#{print_recipes(recipes)}#{bold}Which recipe would you like to add? #{clear}#{yellow}(blank to finish)#{clear}")
|
57
|
+
if recipe == ''
|
58
|
+
break
|
59
|
+
elsif recipes.include?(recipe)
|
60
|
+
recipes -= [recipe]
|
61
|
+
elsif RailsWizard::Recipes.list.include?(recipe)
|
62
|
+
recipes << recipe
|
63
|
+
else
|
64
|
+
puts
|
65
|
+
puts "> #{red}Invalid recipe, please try again.#{clear}"
|
66
|
+
end
|
67
|
+
end
|
68
|
+
recipes
|
69
|
+
end
|
70
|
+
|
71
|
+
#pass in name if you want to create a rails app
|
72
|
+
#pass in file_name if you want to create a template
|
73
|
+
def run_template(name, recipes, file_name=nil)
|
65
74
|
puts
|
66
75
|
puts
|
67
|
-
puts "#{bold}Generating and Running Template..."
|
76
|
+
puts "#{bold}Generating#{name ? " and Running" : ''} Template..."
|
68
77
|
puts
|
69
|
-
|
78
|
+
if file_name
|
79
|
+
file = File.new(file_name,'w')
|
80
|
+
else
|
81
|
+
file = Tempfile.new('template')
|
82
|
+
end
|
70
83
|
template = RailsWizard::Template.new(recipes)
|
71
84
|
file.write template.compile
|
72
85
|
file.close
|
73
|
-
|
86
|
+
if name
|
87
|
+
system "rails new #{name} -m #{file.path} #{template.args.join(' ')}"
|
88
|
+
else
|
89
|
+
puts "install with the command:"
|
90
|
+
puts
|
91
|
+
puts "rails new <APP_NAME> -m #{file.path} #{template.args.join(' ')}"
|
92
|
+
end
|
74
93
|
ensure
|
75
|
-
file.unlink
|
94
|
+
file.unlink unless file_name
|
76
95
|
end
|
77
96
|
end
|
78
97
|
end
|
data/recipes/add_user.rb
CHANGED
@@ -51,6 +51,12 @@ RUBY
|
|
51
51
|
if recipes.include? 'devise-confirmable'
|
52
52
|
gsub_file 'app/models/user.rb', /:registerable,/, ":registerable, :confirmable,"
|
53
53
|
gsub_file 'app/models/user.rb', /:remember_me/, ':remember_me, :confirmed_at'
|
54
|
+
if recipes.include? 'mongoid'
|
55
|
+
gsub_file 'app/models/user.rb', /# field :confirmation_token/, "field :confirmation_token"
|
56
|
+
gsub_file 'app/models/user.rb', /# field :confirmed_at/, "field :confirmed_at"
|
57
|
+
gsub_file 'app/models/user.rb', /# field :confirmation_sent_at/, "field :confirmation_sent_at"
|
58
|
+
gsub_file 'app/models/user.rb', /# field :unconfirmed_email/, "field :unconfirmed_email"
|
59
|
+
end
|
54
60
|
end
|
55
61
|
|
56
62
|
unless recipes.include? 'haml'
|
data/recipes/airbrake.rb
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
|
2
|
+
gem 'airbrake'
|
3
|
+
|
4
|
+
if config['use_heroku']
|
5
|
+
after_everything do
|
6
|
+
say_wizard "Adding airbrake:developer Heroku addon (you can always upgrade later)"
|
7
|
+
run "heroku addons:add airbrake:developer"
|
8
|
+
generate "airbrake --heroku"
|
9
|
+
end
|
10
|
+
else
|
11
|
+
after_bundler do
|
12
|
+
generate "airbrake --api-key #{config['api_key']}"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
|
16
|
+
__END__
|
17
|
+
|
18
|
+
name: Airbrake
|
19
|
+
description: Add Airbrake exception reporting to your application.
|
20
|
+
|
21
|
+
category: services
|
22
|
+
exclusive: exception_notification
|
23
|
+
tags: [exception_notification]
|
24
|
+
run_after: [heroku]
|
25
|
+
|
26
|
+
config:
|
27
|
+
- use_heroku:
|
28
|
+
type: boolean
|
29
|
+
prompt: "Use the Airbrake Heroku addon?"
|
30
|
+
if_recipe: heroku
|
31
|
+
- api_key:
|
32
|
+
prompt: "Enter Airbrake API Key:"
|
33
|
+
type: string
|
34
|
+
unless: use_heroku
|
data/recipes/backbone.rb
CHANGED
data/recipes/cucumber.rb
CHANGED
@@ -4,8 +4,8 @@
|
|
4
4
|
if config['cucumber']
|
5
5
|
gem 'cucumber-rails', '>= 1.3.0', :group => :test
|
6
6
|
gem 'capybara', '>= 1.1.2', :group => :test
|
7
|
-
gem 'database_cleaner', '>= 0.7.
|
8
|
-
gem 'launchy', '>= 2.0
|
7
|
+
gem 'database_cleaner', '>= 0.7.2', :group => :test
|
8
|
+
gem 'launchy', '>= 2.1.0', :group => :test
|
9
9
|
else
|
10
10
|
recipes.delete('cucumber')
|
11
11
|
end
|
@@ -0,0 +1,111 @@
|
|
1
|
+
# Application template recipe for the rails_apps_composer. Check for a newer version here:
|
2
|
+
# https://github.com/RailsApps/rails_apps_composer/blob/master/recipes/datamapper.rb
|
3
|
+
RAILS_VERSION='~> 3.1.0'
|
4
|
+
DM_VERSION='~> 1.2.0'
|
5
|
+
|
6
|
+
if config['datamapper']
|
7
|
+
abort "DataMapper #{DM_VERSION} is only compatible with Rails #{RAILS_VERSION}" unless ::Rails::VERSION::MAJOR == 3 and ::Rails::VERSION::MINOR < 2
|
8
|
+
else
|
9
|
+
recipes.delete('datamapper')
|
10
|
+
end
|
11
|
+
|
12
|
+
if config['datamapper']
|
13
|
+
say_wizard "REMINDER: When creating a Rails app using DataMapper,"
|
14
|
+
say_wizard "you must add the '-O' flag to 'rails new'"
|
15
|
+
gem 'dm-rails', DM_VERSION
|
16
|
+
gem "dm-#{config['database']}-adapter", DM_VERSION
|
17
|
+
gem 'dm-migrations', DM_VERSION
|
18
|
+
gem 'dm-types', DM_VERSION
|
19
|
+
gem 'dm-constraints', DM_VERSION
|
20
|
+
gem 'dm-transactions', DM_VERSION
|
21
|
+
gem 'dm-aggregates', DM_VERSION
|
22
|
+
gem 'dm-timestamps', DM_VERSION
|
23
|
+
gem 'dm-observer', DM_VERSION
|
24
|
+
gem 'dm-validations', DM_VERSION if config['validations'] == 'dm-validations'
|
25
|
+
gem 'dm-devise', '>= 2.0.1' if recipes.include? 'devise'
|
26
|
+
|
27
|
+
inject_into_file 'config/application.rb', "require 'dm-rails/railtie'\n", :after => "require 'action_controller/railtie'\n"
|
28
|
+
prepend_file 'app/controllers/application_controller.rb', "require 'dm-rails/middleware/identity_map'\n"
|
29
|
+
inject_into_class 'app/controllers/application_controller.rb', 'ApplicationController', " use Rails::DataMapper::Middleware::IdentityMap\n"
|
30
|
+
create_file 'config/database.yml' do <<-YAML
|
31
|
+
defaults: &defaults
|
32
|
+
adapter: #{config['database']}
|
33
|
+
|
34
|
+
production:
|
35
|
+
<<: *defaults
|
36
|
+
|
37
|
+
development:
|
38
|
+
<<: *defaults
|
39
|
+
|
40
|
+
test:
|
41
|
+
<<: *defaults
|
42
|
+
YAML
|
43
|
+
end
|
44
|
+
case config['database']
|
45
|
+
when "mysql", "postgres", "oracle", "sqlserver"
|
46
|
+
sane_app_name = app_name.gsub(/[^a-zA-Z0-9_]/, '_')
|
47
|
+
dbname = ask_wizard "Database name \033[33m[#{sane_app_name}]\033[0m"
|
48
|
+
dbname = sane_app_name if dbname.empty?
|
49
|
+
dbhost = ask_wizard "Database host \033[33m[localhost]\033[0m"
|
50
|
+
dbhost = 'localhost' if dbhost.empty?
|
51
|
+
dbuser = ask_wizard "Database username \033[33m[root]\033[0m"
|
52
|
+
dbuser = 'root' if dbuser.empty?
|
53
|
+
dbpass = ask_wizard "Database password \033[33m[]\033[0m"
|
54
|
+
inject_into_file 'config/database.yml', " password: '#{dbpass}'\n", :after => " adapter: #{config['database']}\n"
|
55
|
+
inject_into_file 'config/database.yml', " username: #{dbuser}\n", :after => " adapter: #{config['database']}\n"
|
56
|
+
inject_into_file 'config/database.yml', " host: #{dbhost}\n", :after => " adapter: #{config['database']}\n"
|
57
|
+
inject_into_file 'config/database.yml', " database: #{dbname}\n", :before => "\ndevelopment:"
|
58
|
+
inject_into_file 'config/database.yml', " database: #{dbname}_development\n", :before => "\ntest:"
|
59
|
+
append_file 'config/database.yml', " database: #{dbname}_test"
|
60
|
+
when "sqlite"
|
61
|
+
inject_into_file 'config/database.yml', " database: db/production.db\n", :before => "\ndevelopment:"
|
62
|
+
inject_into_file 'config/database.yml', " database: db/development.db\n", :before => "\ntest:"
|
63
|
+
append_file 'config/database.yml', " database: db/test.db\n"
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
if config['datamapper']
|
68
|
+
after_bundler do
|
69
|
+
say_wizard "DataMapper recipe running 'after bundler'"
|
70
|
+
if recipes.include? 'devise'
|
71
|
+
generate 'data_mapper:devise_install'
|
72
|
+
gsub_file 'config/initializers/devise.rb', /# config.data_mapper_validation_lib = nil/, "config.data_mapper_validation_lib = '#{config['validations']}'"
|
73
|
+
end
|
74
|
+
rake "db:create:all" if config['auto_create']
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
__END__
|
79
|
+
|
80
|
+
name: DataMapper
|
81
|
+
description: "Use DataMapper to connect to a data store (requires Rails ~> 3.1.0)."
|
82
|
+
author: Peter Fern
|
83
|
+
|
84
|
+
category: persistence
|
85
|
+
exclusive: orm
|
86
|
+
tags: [orm, datamapper, sql]
|
87
|
+
|
88
|
+
args: ["-O"]
|
89
|
+
|
90
|
+
config:
|
91
|
+
- datamapper:
|
92
|
+
type: boolean
|
93
|
+
prompt: Would you like to use DataMapper to connect to a data store (requires Rails ~> 3.1.0)?
|
94
|
+
- database:
|
95
|
+
type: multiple_choice
|
96
|
+
prompt: "Which backend are you using?"
|
97
|
+
choices:
|
98
|
+
- ["SQLite", sqlite]
|
99
|
+
- ["MySQL", mysql]
|
100
|
+
- ["PostgreSQL", postgres]
|
101
|
+
- ["Oracle", oracle]
|
102
|
+
- ["MSSQL", sqlserver]
|
103
|
+
- validations:
|
104
|
+
type: multiple_choice
|
105
|
+
prompt: "Which validation method do you prefer?"
|
106
|
+
choices:
|
107
|
+
- ["DataMapper Validations", dm-validations]
|
108
|
+
- ["ActiveModel Validations", active_model]
|
109
|
+
- auto_create:
|
110
|
+
type: boolean
|
111
|
+
prompt: "Automatically create database with default configuration?"
|
data/recipes/devise.rb
CHANGED
@@ -11,7 +11,7 @@ case config['devise']
|
|
11
11
|
gem 'devise', '>= 2.1.0.rc'
|
12
12
|
recipes << 'devise-confirmable'
|
13
13
|
when 'invitable'
|
14
|
-
gem 'devise', '>= 2.
|
14
|
+
gem 'devise', '>= 2.0.4'
|
15
15
|
gem 'devise_invitable', '>= 1.0.0'
|
16
16
|
recipes << 'devise-confirmable'
|
17
17
|
recipes << 'devise-invitable'
|
@@ -26,7 +26,7 @@ if recipes.include? 'devise'
|
|
26
26
|
say_wizard "Devise recipe running 'after bundler'"
|
27
27
|
|
28
28
|
# Run the Devise generator
|
29
|
-
generate 'devise:install'
|
29
|
+
generate 'devise:install' unless recipes.include? 'datamapper'
|
30
30
|
generate 'devise_invitable:install' if recipes.include? 'devise-invitable'
|
31
31
|
|
32
32
|
if recipes.include? 'mongo_mapper'
|
data/recipes/extras.rb
CHANGED
@@ -4,6 +4,9 @@
|
|
4
4
|
if config['footnotes']
|
5
5
|
say_wizard "Extras recipe running 'after bundler'"
|
6
6
|
gem 'rails-footnotes', '>= 3.7', :group => :development
|
7
|
+
after_bundler do
|
8
|
+
generate 'rails_footnotes:install'
|
9
|
+
end
|
7
10
|
else
|
8
11
|
recipes.delete('footnotes')
|
9
12
|
end
|
@@ -34,4 +37,4 @@ config:
|
|
34
37
|
prompt: Would you like to use 'rails-footnotes' (it's SLOW!)?
|
35
38
|
- ban_spiders:
|
36
39
|
type: boolean
|
37
|
-
prompt: Would you like to set a robots.txt file to ban spiders?
|
40
|
+
prompt: Would you like to set a robots.txt file to ban spiders?
|
data/recipes/mongoid.rb
CHANGED
@@ -5,7 +5,7 @@ if config['mongoid']
|
|
5
5
|
say_wizard "REMINDER: When creating a Rails app using Mongoid..."
|
6
6
|
say_wizard "you should add the '-O' flag to 'rails new'"
|
7
7
|
gem 'bson_ext', '>= 1.6.1'
|
8
|
-
gem 'mongoid', '>= 2.4.
|
8
|
+
gem 'mongoid', '>= 2.4.7'
|
9
9
|
else
|
10
10
|
recipes.delete('mongoid')
|
11
11
|
end
|
data/recipes/rspec.rb
CHANGED
@@ -5,7 +5,7 @@ if config['rspec']
|
|
5
5
|
gem 'rspec-rails', '>= 2.9.0.rc2', :group => [:development, :test]
|
6
6
|
if recipes.include? 'mongoid'
|
7
7
|
# use the database_cleaner gem to reset the test database
|
8
|
-
gem 'database_cleaner', '>= 0.7.
|
8
|
+
gem 'database_cleaner', '>= 0.7.2', :group => :test
|
9
9
|
# include RSpec matchers from the mongoid-rspec gem
|
10
10
|
gem 'mongoid-rspec', '>= 1.4.4', :group => :test
|
11
11
|
end
|
@@ -13,7 +13,7 @@ if config['rspec']
|
|
13
13
|
gem 'machinist', :group => :test
|
14
14
|
end
|
15
15
|
if config['factory_girl']
|
16
|
-
gem 'factory_girl_rails', '>=
|
16
|
+
gem 'factory_girl_rails', '>= 3.0.0', :group => [:development, :test]
|
17
17
|
end
|
18
18
|
# add a collection of RSpec matchers and Cucumber steps to make testing email easy
|
19
19
|
gem 'email_spec', '>= 1.2.1', :group => :test
|
data/recipes/seed_database.rb
CHANGED
@@ -30,7 +30,7 @@ FILE
|
|
30
30
|
if recipes.include? 'devise-confirmable'
|
31
31
|
append_file 'db/seeds.rb' do <<-FILE
|
32
32
|
puts 'SETTING UP DEFAULT USER LOGIN'
|
33
|
-
user = User.create! :name => 'First User', :email => 'user@example.com', :password => 'please', :password_confirmation => 'please', :confirmed_at =>
|
33
|
+
user = User.create! :name => 'First User', :email => 'user@example.com', :password => 'please', :password_confirmation => 'please', :confirmed_at => Time.now.utc
|
34
34
|
puts 'New user created: ' << user.name
|
35
35
|
FILE
|
36
36
|
end
|
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: 1.
|
4
|
+
version: 1.4.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-04-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: i18n
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirement: &2152681380 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,15 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ! '>='
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: '0'
|
24
|
+
version_requirements: *2152681380
|
30
25
|
- !ruby/object:Gem::Dependency
|
31
26
|
name: activesupport
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
27
|
+
requirement: &2152680860 !ruby/object:Gem::Requirement
|
33
28
|
none: false
|
34
29
|
requirements:
|
35
30
|
- - ! '>='
|
@@ -37,15 +32,10 @@ dependencies:
|
|
37
32
|
version: 3.0.0
|
38
33
|
type: :runtime
|
39
34
|
prerelease: false
|
40
|
-
version_requirements:
|
41
|
-
none: false
|
42
|
-
requirements:
|
43
|
-
- - ! '>='
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: 3.0.0
|
35
|
+
version_requirements: *2152680860
|
46
36
|
- !ruby/object:Gem::Dependency
|
47
37
|
name: thor
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
38
|
+
requirement: &2152680420 !ruby/object:Gem::Requirement
|
49
39
|
none: false
|
50
40
|
requirements:
|
51
41
|
- - ! '>='
|
@@ -53,15 +43,10 @@ dependencies:
|
|
53
43
|
version: '0'
|
54
44
|
type: :runtime
|
55
45
|
prerelease: false
|
56
|
-
version_requirements:
|
57
|
-
none: false
|
58
|
-
requirements:
|
59
|
-
- - ! '>='
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
46
|
+
version_requirements: *2152680420
|
62
47
|
- !ruby/object:Gem::Dependency
|
63
48
|
name: rake
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
+
requirement: &2152679960 !ruby/object:Gem::Requirement
|
65
50
|
none: false
|
66
51
|
requirements:
|
67
52
|
- - ! '>='
|
@@ -69,15 +54,10 @@ dependencies:
|
|
69
54
|
version: '0'
|
70
55
|
type: :runtime
|
71
56
|
prerelease: false
|
72
|
-
version_requirements:
|
73
|
-
none: false
|
74
|
-
requirements:
|
75
|
-
- - ! '>='
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
version: '0'
|
57
|
+
version_requirements: *2152679960
|
78
58
|
- !ruby/object:Gem::Dependency
|
79
59
|
name: rspec
|
80
|
-
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirement: &2152679380 !ruby/object:Gem::Requirement
|
81
61
|
none: false
|
82
62
|
requirements:
|
83
63
|
- - ! '>='
|
@@ -85,15 +65,10 @@ dependencies:
|
|
85
65
|
version: 2.5.0
|
86
66
|
type: :development
|
87
67
|
prerelease: false
|
88
|
-
version_requirements:
|
89
|
-
none: false
|
90
|
-
requirements:
|
91
|
-
- - ! '>='
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: 2.5.0
|
68
|
+
version_requirements: *2152679380
|
94
69
|
- !ruby/object:Gem::Dependency
|
95
70
|
name: mg
|
96
|
-
requirement: !ruby/object:Gem::Requirement
|
71
|
+
requirement: &2152672460 !ruby/object:Gem::Requirement
|
97
72
|
none: false
|
98
73
|
requirements:
|
99
74
|
- - ! '>='
|
@@ -101,15 +76,10 @@ dependencies:
|
|
101
76
|
version: '0'
|
102
77
|
type: :development
|
103
78
|
prerelease: false
|
104
|
-
version_requirements:
|
105
|
-
none: false
|
106
|
-
requirements:
|
107
|
-
- - ! '>='
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: '0'
|
79
|
+
version_requirements: *2152672460
|
110
80
|
- !ruby/object:Gem::Dependency
|
111
81
|
name: activesupport
|
112
|
-
requirement: !ruby/object:Gem::Requirement
|
82
|
+
requirement: &2152671880 !ruby/object:Gem::Requirement
|
113
83
|
none: false
|
114
84
|
requirements:
|
115
85
|
- - ! '>='
|
@@ -117,15 +87,10 @@ dependencies:
|
|
117
87
|
version: 3.0.0
|
118
88
|
type: :development
|
119
89
|
prerelease: false
|
120
|
-
version_requirements:
|
121
|
-
none: false
|
122
|
-
requirements:
|
123
|
-
- - ! '>='
|
124
|
-
- !ruby/object:Gem::Version
|
125
|
-
version: 3.0.0
|
90
|
+
version_requirements: *2152671880
|
126
91
|
- !ruby/object:Gem::Dependency
|
127
92
|
name: i18n
|
128
|
-
requirement: !ruby/object:Gem::Requirement
|
93
|
+
requirement: &2152671440 !ruby/object:Gem::Requirement
|
129
94
|
none: false
|
130
95
|
requirements:
|
131
96
|
- - ! '>='
|
@@ -133,12 +98,7 @@ dependencies:
|
|
133
98
|
version: '0'
|
134
99
|
type: :development
|
135
100
|
prerelease: false
|
136
|
-
version_requirements:
|
137
|
-
none: false
|
138
|
-
requirements:
|
139
|
-
- - ! '>='
|
140
|
-
- !ruby/object:Gem::Version
|
141
|
-
version: '0'
|
101
|
+
version_requirements: *2152671440
|
142
102
|
description: A gem with recipes to create Rails application templates you can use
|
143
103
|
to generate Rails starter apps.
|
144
104
|
email:
|
@@ -158,11 +118,13 @@ files:
|
|
158
118
|
- recipes/active_admin.rb
|
159
119
|
- recipes/activerecord.rb
|
160
120
|
- recipes/add_user.rb
|
121
|
+
- recipes/airbrake.rb
|
161
122
|
- recipes/backbone.rb
|
162
123
|
- recipes/capybara.rb
|
163
124
|
- recipes/cleanup.rb
|
164
125
|
- recipes/compass.rb
|
165
126
|
- recipes/cucumber.rb
|
127
|
+
- recipes/datamapper.rb
|
166
128
|
- recipes/devise.rb
|
167
129
|
- recipes/extras.rb
|
168
130
|
- recipes/git.rb
|
@@ -171,7 +133,6 @@ files:
|
|
171
133
|
- recipes/heroku.rb
|
172
134
|
- recipes/home_page.rb
|
173
135
|
- recipes/home_page_users.rb
|
174
|
-
- recipes/hoptoad.rb
|
175
136
|
- recipes/html5.rb
|
176
137
|
- recipes/inherited_resources.rb
|
177
138
|
- recipes/less.rb
|
@@ -203,8 +164,7 @@ files:
|
|
203
164
|
- spec/spec_helper.rb
|
204
165
|
- spec/support/rails_directory.rb
|
205
166
|
- spec/support/template_runner.rb
|
206
|
-
-
|
207
|
-
YmluL3JhaWxzX2FwcHNfY29tcG9zZXI=
|
167
|
+
- bin/rails_apps_composer
|
208
168
|
homepage: http://github.com/RailsApps/rails_apps_composer
|
209
169
|
licenses: []
|
210
170
|
post_install_message:
|
@@ -219,7 +179,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
219
179
|
version: '0'
|
220
180
|
segments:
|
221
181
|
- 0
|
222
|
-
hash:
|
182
|
+
hash: -1364919396315836606
|
223
183
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
224
184
|
none: false
|
225
185
|
requirements:
|
@@ -228,10 +188,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
228
188
|
version: '0'
|
229
189
|
segments:
|
230
190
|
- 0
|
231
|
-
hash:
|
191
|
+
hash: -1364919396315836606
|
232
192
|
requirements: []
|
233
193
|
rubyforge_project: rails_apps_composer
|
234
|
-
rubygems_version: 1.8.
|
194
|
+
rubygems_version: 1.8.16
|
235
195
|
signing_key:
|
236
196
|
specification_version: 3
|
237
197
|
summary: A version of the RailsWizard gem with custom recipes for Rails starter apps.
|
data/recipes/hoptoad.rb
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
|
2
|
-
gem 'hoptoad_notifier'
|
3
|
-
|
4
|
-
if config['use_heroku']
|
5
|
-
after_everything do
|
6
|
-
say_wizard "Adding hoptoad:basic Heroku addon (you can always upgrade later)"
|
7
|
-
run "heroku addons:add hoptoad:basic"
|
8
|
-
generate "hoptoad --heroku"
|
9
|
-
end
|
10
|
-
else
|
11
|
-
after_bundler do
|
12
|
-
generate "hoptoad --api-key #{config['api_key']}"
|
13
|
-
end
|
14
|
-
end
|
15
|
-
|
16
|
-
__END__
|
17
|
-
|
18
|
-
name: Hoptoad
|
19
|
-
description: Add Hoptoad exception reporting to your application.
|
20
|
-
|
21
|
-
category: services
|
22
|
-
exclusive: exception_notification
|
23
|
-
tags: [exception_notification]
|
24
|
-
run_after: [heroku]
|
25
|
-
|
26
|
-
config:
|
27
|
-
- use_heroku:
|
28
|
-
type: boolean
|
29
|
-
prompt: "Use the Hoptoad Heroku addon?"
|
30
|
-
if_recipe: heroku
|
31
|
-
- api_key:
|
32
|
-
prompt: "Enter Hoptoad API Key:"
|
33
|
-
type: string
|
34
|
-
unless: use_heroku
|