rails_apps_composer 3.0.17 → 3.0.18

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 29b273698316da5ea8f633adf38d600ddff8f120
4
- data.tar.gz: 13e024dde62bf0922ac315b27d76dda800677e37
3
+ metadata.gz: 4df1af2afa0029ec54403a46b19ae1ad15fecb44
4
+ data.tar.gz: 61439b4feec799cd43d9fdeef7474bdefae7eeb2
5
5
  SHA512:
6
- metadata.gz: 4b9f484edcc9d2f9f13e60652bb51b7056e2fb03d7f8723b16a7d53325e791f62dc0d881db8bffaece3ac8d1ae91cfd42bdcc980cff8876cb6daf1760d74a2dc
7
- data.tar.gz: 0e68af3c8b34a9ab0482a57ac6c0a93b1ab7b01ef4b1a42ba945a0b9bf06c4daa8e84515728f8480e0d0d0812547e564bedc6f0119640bcf228c787375d9326c
6
+ metadata.gz: 66036729f25cc78711230e547bf07aad188f686822683e8904731c758bb83fcc3f12f41c47b2dea2f452c98d93e33d9ee1c901b434a91a48a7162285ef45613c
7
+ data.tar.gz: 46f97fb1380308756fd0acb0a9b9484a8ad5539b418317f6ae924bf40f85eb5817bd58e6272beaa678d9a6e6f2cee11e7633248b0c38702a3f24639a75abceba
@@ -1,13 +1,84 @@
1
1
  # Application template recipe for the rails_apps_composer. Change the recipe here:
2
2
  # https://github.com/RailsApps/rails_apps_composer/blob/master/recipes/deployment.rb
3
3
 
4
- case config['deployment']
5
- when 'capistrano3'
6
- prefs[:deployment] = 'capistrano3'
4
+ prefs[:deployment] = multiple_choice "Prepare for deployment?", [["no", "none"],
5
+ ["Heroku", "heroku"],
6
+ ["Capistrano", "capistrano3"]] unless prefs.has_key? :deployment
7
+
8
+ if prefer :deployment, 'heroku'
9
+ say_wizard "installing gems for Heroku"
10
+ gsub_file 'Gemfile', /.*gem 'sqlite3'\n/, '' if prefer :database, 'sqlite'
11
+ add_gem 'sqlite3', group: [:development, :test] if prefer :database, 'sqlite'
12
+ add_gem 'pg', group: :production
13
+ add_gem 'rails_12factor', group: :production
14
+ stage_three do
15
+ say_wizard "recipe stage three"
16
+ say_wizard "precompiling assets for Heroku"
17
+ run 'RAILS_ENV=production rake assets:precompile'
18
+ say_wizard "creating app.json file for Heroku Button"
19
+ create_file 'app.json' do <<-TEXT
20
+ {
21
+ "name": "#{app_name.humanize.titleize}",
22
+ "description": "Starter application generated by Rails Composer",
23
+ "logo": "https://avatars3.githubusercontent.com/u/788200",
24
+ "keywords": [
25
+ "Ruby #{RUBY_VERSION}",
26
+ "Rails #{Rails::VERSION::STRING}"
27
+ ],
28
+ "scripts": {},
29
+ "env": {
30
+ "RAILS_ENV": "production",
31
+ "ADMIN_EMAIL": {
32
+ "description": "The administrator's email address.",
33
+ "value": "user@example.com",
34
+ "required": true
35
+ },
36
+ "ADMIN_PASSWORD": {
37
+ "description": "The administrator's password.",
38
+ "value": "changeme",
39
+ "required": true
40
+ },
41
+ "GMAIL_USERNAME": {
42
+ "description": "Your Gmail address.",
43
+ "value": "user@example.com",
44
+ "required": false
45
+ },
46
+ "GMAIL_PASSWORD": {
47
+ "description": "Your Gmail password.",
48
+ "value": "changeme",
49
+ "required": false
50
+ },
51
+ "OWNER_EMAIL": {
52
+ "description": "Destination for messages sent from the app's contact form.",
53
+ "value": "user@example.com",
54
+ "required": false
55
+ },
56
+ "DOMAIN_NAME": {
57
+ "description": "Required for sending mail. Use the app name you've given.",
58
+ "value": "myapp.herokuapp.com",
59
+ "required": false
60
+ }
61
+ }
62
+ }
63
+ TEXT
64
+ end
65
+ if File.exists?('db/migrate')
66
+ gsub_file 'app.json', /"scripts": {/,
67
+ "\"scripts\": {\"postdeploy\": \"bundle exec rake db:migrate; bundle exec rake db:seed\""
68
+ end
69
+ gsub_file 'config/database.yml', /production:.*$\n.*$\n.*$/, ""
70
+ append_file 'config/database.yml' do <<-TEXT
71
+ production:
72
+ <<: *default
73
+ adapter: postgresql
74
+ encoding: unicode
75
+ TEXT
76
+ end
77
+ end
7
78
  end
8
79
 
9
80
  if prefer :deployment, 'capistrano3'
10
- say_wizard "recipe adding capistrano gems"
81
+ say_wizard "installing gems for Capistrano"
11
82
  add_gem 'capistrano', '~> 3.0.1', group: :development
12
83
  add_gem 'capistrano-rvm', '~> 0.1.1', group: :development
13
84
  add_gem 'capistrano-bundler', group: :development
@@ -15,24 +86,23 @@ if prefer :deployment, 'capistrano3'
15
86
  add_gem 'capistrano-rails-console', group: :development
16
87
  stage_two do
17
88
  say_wizard "recipe stage two"
18
- say_wizard 'recipe capistrano file'
89
+ say_wizard "installing Capistrano files"
19
90
  run 'bundle exec cap install'
20
91
  end
21
92
  end
22
93
 
94
+ stage_three do
95
+ ### GIT ###
96
+ git :add => '-A' if prefer :git, true
97
+ git :commit => '-qm "rails_apps_composer: prepare for deployment"' if prefer :git, true
98
+ end
99
+
23
100
  __END__
24
101
 
25
102
  name: deployment
26
- description: "Capistrano3-deployment - more options can be added later"
27
- author: zealot128
103
+ description: "Prepare for deployment"
104
+ author: RailsApps
28
105
 
29
- category: development
30
106
  requires: [setup]
31
107
  run_after: [init]
32
- args: -T
33
-
34
- config:
35
- - deployment:
36
- type: multiple_choice
37
- prompt: Add a deployment mechanism?
38
- choices: [["None", "none"], ["Capistrano3", "capistrano3"] ]
108
+ category: development
data/recipes/extras.rb CHANGED
@@ -162,6 +162,8 @@ stage_three do
162
162
  # thanks to https://github.com/perfectline/template-bucket/blob/master/cleanup.rb
163
163
  gsub_file 'Gemfile', /#.*\n/, "\n"
164
164
  gsub_file 'Gemfile', /\n^\s*\n/, "\n"
165
+ remove_file 'Gemfile.lock'
166
+ run 'bundle install --without production'
165
167
  # remove commented lines and multiple blank lines from config/routes.rb
166
168
  gsub_file 'config/routes.rb', / #.*\n/, "\n"
167
169
  gsub_file 'config/routes.rb', /\n^\s*\n/, "\n"
data/recipes/gems.rb CHANGED
@@ -31,8 +31,8 @@ else
31
31
  end
32
32
 
33
33
  ## Database Adapter
34
- unless prefer :database, 'default'
35
- gsub_file 'Gemfile', /gem 'sqlite3'\n/, '' unless prefer :database, 'sqlite'
34
+ unless prefer :database, 'sqlite'
35
+ gsub_file 'Gemfile', /gem 'sqlite3'\n/, ''
36
36
  end
37
37
  gsub_file 'Gemfile', /gem 'pg'.*/, ''
38
38
  add_gem 'pg' if prefer :database, 'postgresql'
@@ -140,7 +140,7 @@ git :commit => '-qm "rails_apps_composer: Gemfile"' if prefer :git, true
140
140
  stage_two do
141
141
  say_wizard "recipe stage two"
142
142
  say_wizard "configuring database"
143
- unless prefer :database, 'default'
143
+ unless prefer :database, 'sqlite'
144
144
  copy_from_repo 'config/database-postgresql.yml', :prefs => 'postgresql'
145
145
  copy_from_repo 'config/database-mysql.yml', :prefs => 'mysql'
146
146
  if prefer :database, 'postgresql'
data/recipes/init.rb CHANGED
@@ -104,7 +104,7 @@ FILE
104
104
  generate 'devise_invitable user'
105
105
  end
106
106
  ### APPLY DATABASE SEED ###
107
- unless prefer :database, 'default'
107
+ if File.exists?('db/migrate')
108
108
  ## ACTIVE_RECORD
109
109
  say_wizard "applying migrations and seeding the database"
110
110
  if prefer :local_env_file, 'foreman'
@@ -9,8 +9,8 @@ if prefer :apps4, 'learn-rails'
9
9
  prefs[:dashboard] = 'none'
10
10
  prefs[:ban_spiders] = false
11
11
  prefs[:better_errors] = true
12
- prefs[:database] = 'default'
13
- prefs[:deployment] = 'none'
12
+ prefs[:database] = 'sqlite'
13
+ prefs[:deployment] = 'heroku'
14
14
  prefs[:devise_modules] = false
15
15
  prefs[:dev_webserver] = 'webrick'
16
16
  prefs[:email] = 'gmail'
@@ -6,8 +6,7 @@ if prefer :apps4, 'rails-bootstrap'
6
6
  prefs[:authorization] = false
7
7
  prefs[:dashboard] = 'none'
8
8
  prefs[:better_errors] = true
9
- prefs[:database] = 'default'
10
- prefs[:deployment] = 'none'
9
+ prefs[:database] = 'sqlite'
11
10
  prefs[:devise_modules] = false
12
11
  prefs[:email] = 'none'
13
12
  prefs[:form_builder] = false
@@ -6,7 +6,6 @@ if prefer :apps4, 'rails-devise'
6
6
  prefs[:authorization] = false
7
7
  prefs[:dashboard] = 'none'
8
8
  prefs[:better_errors] = true
9
- prefs[:deployment] = 'none'
10
9
  prefs[:git] = true
11
10
  prefs[:local_env_file] = false
12
11
  prefs[:pry] = false
@@ -5,7 +5,6 @@ if prefer :apps4, 'rails-devise-pundit'
5
5
  prefs[:authentication] = 'devise'
6
6
  prefs[:authorization] = 'pundit'
7
7
  prefs[:better_errors] = true
8
- prefs[:deployment] = 'none'
9
8
  prefs[:git] = true
10
9
  prefs[:local_env_file] = false
11
10
  prefs[:pry] = false
@@ -5,7 +5,6 @@ if prefer :apps4, 'rails-devise-roles'
5
5
  prefs[:authentication] = 'devise'
6
6
  prefs[:authorization] = 'roles'
7
7
  prefs[:better_errors] = true
8
- prefs[:deployment] = 'none'
9
8
  prefs[:git] = true
10
9
  prefs[:local_env_file] = false
11
10
  prefs[:pry] = false
@@ -6,8 +6,7 @@ if prefer :apps4, 'rails-foundation'
6
6
  prefs[:authorization] = false
7
7
  prefs[:dashboard] = 'none'
8
8
  prefs[:better_errors] = true
9
- prefs[:database] = 'default'
10
- prefs[:deployment] = 'none'
9
+ prefs[:database] = 'sqlite'
11
10
  prefs[:devise_modules] = false
12
11
  prefs[:email] = 'none'
13
12
  prefs[:form_builder] = false
@@ -6,7 +6,6 @@ if prefer :apps4, 'rails-mailinglist-signup'
6
6
  prefs[:authorization] = false
7
7
  prefs[:dashboard] = 'none'
8
8
  prefs[:better_errors] = true
9
- prefs[:deployment] = 'none'
10
9
  prefs[:devise_modules] = false
11
10
  prefs[:form_builder] = 'simple_form'
12
11
  prefs[:git] = true
@@ -6,7 +6,6 @@ if prefer :apps4, 'rails-omniauth'
6
6
  prefs[:authorization] = 'none'
7
7
  prefs[:dashboard] = 'none'
8
8
  prefs[:better_errors] = true
9
- prefs[:deployment] = 'none'
10
9
  prefs[:email] = 'none'
11
10
  prefs[:git] = true
12
11
  prefs[:local_env_file] = false
@@ -5,7 +5,6 @@ if prefer :apps4, 'rails-signup-download'
5
5
  prefs[:authentication] = 'devise'
6
6
  prefs[:authorization] = 'roles'
7
7
  prefs[:better_errors] = true
8
- prefs[:deployment] = 'none'
9
8
  prefs[:devise_modules] = false
10
9
  prefs[:form_builder] = false
11
10
  prefs[:git] = true
data/recipes/readme.rb CHANGED
@@ -104,6 +104,15 @@ TEXT
104
104
  end
105
105
 
106
106
  create_file 'README.md', "#{app_name.humanize.titleize}\n================\n\n"
107
+
108
+ if prefer :deployment, 'heroku'
109
+ append_to_file 'README.md' do <<-TEXT
110
+ [![Deploy to Heroku](https://www.herokucdn.com/deploy/button.png)](https://heroku.com/deploy)
111
+
112
+ TEXT
113
+ end
114
+ end
115
+
107
116
  append_to_file 'README.md' do <<-TEXT
108
117
  This application was generated with the [rails_apps_composer](https://github.com/RailsApps/rails_apps_composer) gem
109
118
  provided by the [RailsApps Project](http://railsapps.github.io/).
data/recipes/setup.rb CHANGED
@@ -34,6 +34,7 @@ if prefs[:prod_webserver] == 'same'
34
34
  end
35
35
 
36
36
  ## Database Adapter
37
+ prefs[:database] = "sqlite" if prefer :database, 'default'
37
38
  prefs[:database] = multiple_choice "Database used in development?", [["SQLite", "sqlite"], ["PostgreSQL", "postgresql"],
38
39
  ["MySQL", "mysql"]] unless prefs.has_key? :database
39
40
 
data/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module RailsWizard
2
- VERSION = "3.0.17"
2
+ VERSION = "3.0.18"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_apps_composer
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.17
4
+ version: 3.0.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Kehoe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-16 00:00:00.000000000 Z
11
+ date: 2014-09-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: i18n