onotole 1.0.6 → 1.0.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -0
- data/lib/onotole/add_user_gems/before_bundle_patch.rb +5 -0
- data/lib/onotole/add_user_gems/edit_menu_questions.rb +1 -0
- data/lib/onotole/add_user_gems/goodbye_message.rb +28 -0
- data/lib/onotole/app_builder.rb +8 -89
- data/lib/onotole/frontend_default.rb +68 -0
- data/lib/onotole/helpers.rb +2 -1
- data/lib/onotole/mail.rb +5 -0
- data/lib/onotole/tests.rb +1 -1
- data/lib/onotole/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 94dbbef24ca6b52a5608611340f959fa47ac95a9
|
4
|
+
data.tar.gz: b2be95f0998cee6a2162f7c87bbb283f91409a9e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fca27009eb5b768115a7812cd140aa60961a00fba9adf6ab85527c5e9b7ae1e9740aef4d07a470a111b80a5d45231c665f301ead851e8c3392de9f7bff7da09e
|
7
|
+
data.tar.gz: 226325a5bc37b4d5fa76effb22a844bbafaab9b7b0fab760e482f0444a4a760a30dc7d53008deeb15d4fca2f07d5cbe02649dfaeb636081acf9879a9178fdc6e
|
data/README.md
CHANGED
@@ -75,6 +75,7 @@ pack will not be installed with any gem option.
|
|
75
75
|
creating elegant backends for website administration.
|
76
76
|
* `*`[rubycritic](https://github.com/whitesmith/rubycritic) A Ruby code quality
|
77
77
|
reporter
|
78
|
+
* [railroady](https://github.com/preston/railroady) Model and controller UML class diagram generator. Originally based on the "railroad" plugin
|
78
79
|
|
79
80
|
|
80
81
|
Mandatory installation gem list you will find in `Gemfile` section
|
@@ -187,5 +187,10 @@ module Onotole
|
|
187
187
|
inject_into_file('Gemfile', "\n gem 'rubycritic', :require => false",
|
188
188
|
after: 'group :development do')
|
189
189
|
end
|
190
|
+
|
191
|
+
def add_railroady_gem
|
192
|
+
inject_into_file('Gemfile', "\n gem 'railroady', :require => false",
|
193
|
+
after: 'group :development do')
|
194
|
+
end
|
190
195
|
end
|
191
196
|
end
|
@@ -53,6 +53,7 @@ module Onotole
|
|
53
53
|
annotate: 'Annotate Rails classes with schema and routes info',
|
54
54
|
overcommit: 'A fully configurable and extendable Git hook manager',
|
55
55
|
activerecord_import: 'A library for bulk inserting data using ActiveRecord.',
|
56
|
+
railroady: 'Model and controller UML class diagram generator.',
|
56
57
|
meta_request: 'Rails meta panel in chrome console.'\
|
57
58
|
" Very usefull in\n#{' ' * 24}AJAX debugging. Link for chrome"\
|
58
59
|
" add-on in Gemfile.\n#{' ' * 24}Do not delete comments if you need this link"
|
@@ -0,0 +1,28 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module Onotole
|
3
|
+
module Goodbye
|
4
|
+
def show_goodbye_message
|
5
|
+
github_check
|
6
|
+
airbrake_check
|
7
|
+
graphviz_check
|
8
|
+
say_color BOLDGREEN, "Congratulations! Onotole gives you: 'Intellect+= 1'"
|
9
|
+
end
|
10
|
+
|
11
|
+
def github_check
|
12
|
+
return unless user_choose? :create_github_repo
|
13
|
+
say_color BOLDGREEN, "You can 'git push -u origin master' to your new repo
|
14
|
+
#{app_name} or check log for errors"
|
15
|
+
end
|
16
|
+
|
17
|
+
def graphviz_check
|
18
|
+
return unless user_choose?(:railroady)
|
19
|
+
return if system('dot -? > /dev/null && neato -? > /dev/null')
|
20
|
+
say_color YELLOW, 'Install graphviz for Railroady gem'
|
21
|
+
end
|
22
|
+
|
23
|
+
def airbrake_check
|
24
|
+
return unless user_choose? :airbrake
|
25
|
+
say_color YELLOW, "Remember to run 'rails generate airbrake' with your API key."
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
data/lib/onotole/app_builder.rb
CHANGED
@@ -1,13 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
require 'forwardable'
|
3
|
-
require '
|
4
|
-
|
5
|
-
require 'onotole/add_user_gems/before_bundle_patch'
|
6
|
-
require 'onotole/add_user_gems/after_install_patch'
|
7
|
-
require 'onotole/helpers'
|
8
|
-
require 'onotole/git'
|
9
|
-
require 'onotole/tests'
|
10
|
-
require 'onotole/mail'
|
3
|
+
# require 'pry'
|
4
|
+
Dir['lib/onotole/**/*.rb'].each { |file| require file.slice(4..-4) }
|
11
5
|
|
12
6
|
module Onotole
|
13
7
|
class AppBuilder < Rails::AppBuilder
|
@@ -20,6 +14,8 @@ module Onotole
|
|
20
14
|
include Onotole::Git
|
21
15
|
include Onotole::Tests
|
22
16
|
include Onotole::Mail
|
17
|
+
include Onotole::Goodbye
|
18
|
+
include Onotole::FrontendDefault
|
23
19
|
extend Forwardable
|
24
20
|
|
25
21
|
@use_asset_pipelline = true
|
@@ -49,11 +45,6 @@ module Onotole
|
|
49
45
|
template 'README.md.erb', 'README.md'
|
50
46
|
end
|
51
47
|
|
52
|
-
def raise_on_delivery_errors
|
53
|
-
replace_in_file 'config/environments/development.rb',
|
54
|
-
'raise_delivery_errors = false', 'raise_delivery_errors = true'
|
55
|
-
end
|
56
|
-
|
57
48
|
def add_bullet_gem_configuration
|
58
49
|
config = <<-RUBY
|
59
50
|
config.after_initialize do
|
@@ -76,11 +67,6 @@ module Onotole
|
|
76
67
|
inject_into_class 'config/application.rb', 'Application', config
|
77
68
|
end
|
78
69
|
|
79
|
-
def configure_quiet_assets
|
80
|
-
config = "\n config.quiet_assets = true\n"
|
81
|
-
inject_into_class 'config/application.rb', 'Application', config
|
82
|
-
end
|
83
|
-
|
84
70
|
def provide_setup_script
|
85
71
|
template 'bin_setup', 'bin/setup', force: true
|
86
72
|
run 'chmod a+x bin/setup'
|
@@ -130,22 +116,6 @@ module Onotole
|
|
130
116
|
)
|
131
117
|
end
|
132
118
|
|
133
|
-
def setup_asset_host
|
134
|
-
replace_in_file 'config/environments/production.rb',
|
135
|
-
"# config.action_controller.asset_host = 'http://assets.example.com'",
|
136
|
-
'config.action_controller.asset_host = ENV.fetch("ASSET_HOST", ENV.fetch("APPLICATION_HOST"))'
|
137
|
-
|
138
|
-
replace_in_file 'config/initializers/assets.rb',
|
139
|
-
"config.assets.version = '1.0'",
|
140
|
-
'config.assets.version = (ENV["ASSETS_VERSION"] || "1.0")'
|
141
|
-
|
142
|
-
inject_into_file(
|
143
|
-
'config/environments/production.rb',
|
144
|
-
' config.static_cache_control = "public, max-age=#{1.year.to_i}"',
|
145
|
-
after: serve_static_files_line
|
146
|
-
)
|
147
|
-
end
|
148
|
-
|
149
119
|
def setup_staging_environment
|
150
120
|
staging_file = 'config/environments/staging.rb'
|
151
121
|
copy_file 'staging.rb', staging_file
|
@@ -168,25 +138,10 @@ end
|
|
168
138
|
remove_file 'config/initializers/wrap_parameters.rb'
|
169
139
|
end
|
170
140
|
|
171
|
-
def create_partials_directory
|
172
|
-
empty_directory 'app/views/application'
|
173
|
-
end
|
174
|
-
|
175
|
-
def create_shared_flashes
|
176
|
-
copy_file '_flashes.html.erb', 'app/views/application/_flashes.html.erb'
|
177
|
-
copy_file 'flashes_helper.rb', 'app/helpers/flashes_helper.rb'
|
178
|
-
end
|
179
|
-
|
180
141
|
def create_shared_javascripts
|
181
142
|
copy_file '_javascript.html.erb', 'app/views/application/_javascript.html.erb'
|
182
143
|
end
|
183
144
|
|
184
|
-
def create_application_layout
|
185
|
-
template 'onotole_layout.html.erb.erb',
|
186
|
-
'app/views/layouts/application.html.erb',
|
187
|
-
force: true
|
188
|
-
end
|
189
|
-
|
190
145
|
def use_postgres_config_template
|
191
146
|
template 'postgresql_database.yml.erb', 'config/database.yml',
|
192
147
|
force: true
|
@@ -258,22 +213,12 @@ end
|
|
258
213
|
copy_file 'Procfile', 'Procfile'
|
259
214
|
end
|
260
215
|
|
261
|
-
def setup_stylesheets
|
262
|
-
remove_file 'app/assets/stylesheets/application.css'
|
263
|
-
copy_file 'application.scss',
|
264
|
-
'app/assets/stylesheets/application.scss'
|
265
|
-
end
|
266
|
-
|
267
216
|
def install_refills
|
268
217
|
rails_generator 'refills:import flashes'
|
269
218
|
run 'rm app/views/refills/_flashes.html.erb'
|
270
219
|
run 'rmdir app/views/refills'
|
271
220
|
end
|
272
221
|
|
273
|
-
def install_bitters
|
274
|
-
bundle_command 'exec bitters install --path app/assets/stylesheets'
|
275
|
-
end
|
276
|
-
|
277
222
|
def copy_dotfiles
|
278
223
|
directory 'dotfiles', '.', force: true
|
279
224
|
end
|
@@ -313,11 +258,6 @@ you can deploy to staging and production with:
|
|
313
258
|
append_file 'circle.yml', deploy_command
|
314
259
|
end
|
315
260
|
|
316
|
-
def setup_segment
|
317
|
-
copy_file '_analytics.html.erb',
|
318
|
-
'app/views/application/_analytics.html.erb'
|
319
|
-
end
|
320
|
-
|
321
261
|
def setup_spring
|
322
262
|
bundle_command 'exec spring binstub --all'
|
323
263
|
bundle_command 'exec spring stop'
|
@@ -329,19 +269,6 @@ you can deploy to staging and production with:
|
|
329
269
|
copy_file 'json_encoding.rb', 'config/initializers/json_encoding.rb'
|
330
270
|
end
|
331
271
|
|
332
|
-
def customize_error_pages
|
333
|
-
meta_tags = <<-EOS
|
334
|
-
<meta charset="utf-8" />
|
335
|
-
<meta name="ROBOTS" content="NOODP" />
|
336
|
-
<meta name="viewport" content="initial-scale=1" />
|
337
|
-
EOS
|
338
|
-
|
339
|
-
%w(500 404 422).each do |page|
|
340
|
-
inject_into_file "public/#{page}.html", meta_tags, after: "<head>\n"
|
341
|
-
replace_in_file "public/#{page}.html", /<!--.+-->\n/, ''
|
342
|
-
end
|
343
|
-
end
|
344
|
-
|
345
272
|
def remove_config_comment_lines
|
346
273
|
config_files = [
|
347
274
|
'application.rb',
|
@@ -402,19 +329,11 @@ end
|
|
402
329
|
add_user_gems
|
403
330
|
end
|
404
331
|
|
405
|
-
def show_goodbye_message
|
406
|
-
say_color BOLDGREEN, "Congratulations! Onotole gives you: 'Intellect+= 1'"
|
407
|
-
say_color BOLDGREEN, "You can 'git push -u origin master' to your new repo
|
408
|
-
#{app_name} or check log for errors" if user_choose? :create_github_repo
|
409
|
-
say_color YELLOW, "Remember to run 'rails generate airbrake' with your API key." if user_choose? :airbrake
|
410
|
-
end
|
411
|
-
|
412
332
|
def delete_comments
|
413
|
-
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
end
|
333
|
+
return unless options[:clean_comments] || user_choose?(:clean_comments)
|
334
|
+
cleanup_comments 'Gemfile'
|
335
|
+
remove_config_comment_lines
|
336
|
+
remove_routes_comment_lines
|
418
337
|
end
|
419
338
|
|
420
339
|
def prevent_double_usage
|
@@ -0,0 +1,68 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
module Onotole
|
3
|
+
module FrontendDefault
|
4
|
+
def configure_quiet_assets
|
5
|
+
config = "\n config.quiet_assets = true\n"
|
6
|
+
inject_into_class 'config/application.rb', 'Application', config
|
7
|
+
end
|
8
|
+
|
9
|
+
def setup_asset_host
|
10
|
+
replace_in_file 'config/environments/production.rb',
|
11
|
+
"# config.action_controller.asset_host = 'http://assets.example.com'",
|
12
|
+
'config.action_controller.asset_host = ENV.fetch("ASSET_HOST", ENV.fetch("APPLICATION_HOST"))'
|
13
|
+
|
14
|
+
replace_in_file 'config/initializers/assets.rb',
|
15
|
+
"config.assets.version = '1.0'",
|
16
|
+
'config.assets.version = (ENV["ASSETS_VERSION"] || "1.0")'
|
17
|
+
|
18
|
+
inject_into_file(
|
19
|
+
'config/environments/production.rb',
|
20
|
+
' config.static_cache_control = "public, max-age=#{1.year.to_i}"',
|
21
|
+
after: serve_static_files_line
|
22
|
+
)
|
23
|
+
end
|
24
|
+
|
25
|
+
def create_shared_flashes
|
26
|
+
copy_file '_flashes.html.erb', 'app/views/application/_flashes.html.erb'
|
27
|
+
copy_file 'flashes_helper.rb', 'app/helpers/flashes_helper.rb'
|
28
|
+
end
|
29
|
+
|
30
|
+
def create_application_layout
|
31
|
+
template 'onotole_layout.html.erb.erb',
|
32
|
+
'app/views/layouts/application.html.erb',
|
33
|
+
force: true
|
34
|
+
end
|
35
|
+
|
36
|
+
def setup_stylesheets
|
37
|
+
remove_file 'app/assets/stylesheets/application.css'
|
38
|
+
copy_file 'application.scss',
|
39
|
+
'app/assets/stylesheets/application.scss'
|
40
|
+
end
|
41
|
+
|
42
|
+
def install_bitters
|
43
|
+
bundle_command 'exec bitters install --path app/assets/stylesheets'
|
44
|
+
end
|
45
|
+
|
46
|
+
def customize_error_pages
|
47
|
+
meta_tags = <<-EOS
|
48
|
+
<meta charset="utf-8" />
|
49
|
+
<meta name="ROBOTS" content="NOODP" />
|
50
|
+
<meta name="viewport" content="initial-scale=1" />
|
51
|
+
EOS
|
52
|
+
|
53
|
+
%w(500 404 422).each do |page|
|
54
|
+
inject_into_file "public/#{page}.html", meta_tags, after: "<head>\n"
|
55
|
+
replace_in_file "public/#{page}.html", /<!--.+-->\n/, ''
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
def setup_segment
|
60
|
+
copy_file '_analytics.html.erb',
|
61
|
+
'app/views/application/_analytics.html.erb'
|
62
|
+
end
|
63
|
+
|
64
|
+
def create_partials_directory
|
65
|
+
empty_directory 'app/views/application'
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
data/lib/onotole/helpers.rb
CHANGED
data/lib/onotole/mail.rb
CHANGED
@@ -34,5 +34,10 @@ module Onotole
|
|
34
34
|
after: 'config.action_mailer.raise_delivery_errors = true'
|
35
35
|
)
|
36
36
|
end
|
37
|
+
|
38
|
+
def raise_on_delivery_errors
|
39
|
+
replace_in_file 'config/environments/development.rb',
|
40
|
+
'raise_delivery_errors = false', 'raise_delivery_errors = true'
|
41
|
+
end
|
37
42
|
end
|
38
43
|
end
|
data/lib/onotole/tests.rb
CHANGED
data/lib/onotole/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: onotole
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- kvokka
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2016-02-
|
12
|
+
date: 2016-02-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -86,9 +86,11 @@ files:
|
|
86
86
|
- lib/onotole/add_user_gems/after_install_patch.rb
|
87
87
|
- lib/onotole/add_user_gems/before_bundle_patch.rb
|
88
88
|
- lib/onotole/add_user_gems/edit_menu_questions.rb
|
89
|
+
- lib/onotole/add_user_gems/goodbye_message.rb
|
89
90
|
- lib/onotole/add_user_gems/user_gems_menu_questions.rb
|
90
91
|
- lib/onotole/app_builder.rb
|
91
92
|
- lib/onotole/colors.rb
|
93
|
+
- lib/onotole/frontend_default.rb
|
92
94
|
- lib/onotole/generators/app_generator.rb
|
93
95
|
- lib/onotole/git.rb
|
94
96
|
- lib/onotole/helpers.rb
|