onotole 1.1.21 → 1.2.1
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.
- checksums.yaml +4 -4
- data/README.md +17 -1
- data/bin/t +2 -0
- data/lib/onotole/add_user_gems/after_install_patch.rb +36 -0
- data/lib/onotole/add_user_gems/before_bundle_patch.rb +14 -3
- data/lib/onotole/add_user_gems/edit_menu_questions.rb +12 -0
- data/lib/onotole/add_user_gems/user_gems_menu_questions.rb +1 -0
- data/lib/onotole/default_scripts.rb +1 -1
- data/lib/onotole/helpers.rb +4 -0
- data/lib/onotole/version.rb +1 -1
- data/templates/dotenv_production.erb +13 -0
- data/templates/gitignore_file +1 -0
- 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: 8cae16451d3b970f84a1e2b0265234be738d6abf
|
4
|
+
data.tar.gz: c7b5c8e4add3cd7f6d25d84b6679842278f8c82d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 00f7fefe24c0720aef97453a5774eff9d847ce3fc3c7e58c5e22d392db0355239a7e6490ee40db4478aa613da24a07a9d5f64473b24a60cd2256b7be97e4d118
|
7
|
+
data.tar.gz: 54006eabbe106a8cd5f51179ae07ca381c8618ca53decfb80524d2112c2a750d4f1b9be691d4bd991a4ce75a394744a5da8a8f4bf310f075df2ccf2d3e470048
|
data/README.md
CHANGED
@@ -100,6 +100,14 @@ Bootstrap kaminari plugin
|
|
100
100
|
* [tinymce-rails](https://github.com/spohlenz/tinymce-rails) Integration of
|
101
101
|
TinyMCE with the Rails asset pipeline
|
102
102
|
|
103
|
+
#### Memory DB
|
104
|
+
* [redis](https://github.com/redis/redis-rb) A Ruby client library for Redis.
|
105
|
+
* [redis-rails](https://github.com/redis-store/redis-rails) Provides a full set
|
106
|
+
of stores (Cache, Session, HTTP Cache) for Ruby on Rails
|
107
|
+
* [redis-namespace](https://github.com/resque/redis-namespace) Provides an
|
108
|
+
interface to a namespaced subset of your redis keyspace (e.g., keys with a
|
109
|
+
common beginning).
|
110
|
+
|
103
111
|
|
104
112
|
#### Developer tools
|
105
113
|
|
@@ -296,7 +304,15 @@ app on 1 server. Onotole prefix all `env` variables with `#{app_name}` and now
|
|
296
304
|
you will not have any problems with export variables in production. In
|
297
305
|
production environment you can make `.env.production` file and put all consants
|
298
306
|
there. Also with this thick you can easy use ENV export tool or just put ENV
|
299
|
-
variables in `.bashrc` without name space conflicts.
|
307
|
+
variables in `.bashrc` without name space conflicts.
|
308
|
+
|
309
|
+
##NOSQL Memory based db
|
310
|
+
|
311
|
+
Now supported only Redis db, and Onotole do not install or config Redis itself,
|
312
|
+
it just setup support gems. For getting access to Redis you can use `$redis`
|
313
|
+
variable, and `$ns_redis` for namespaced access wich is provided by
|
314
|
+
`redis-namespace` gem. Feel free in changing settings in
|
315
|
+
`config/initializers/redis.rb`
|
300
316
|
|
301
317
|
## Other goodies
|
302
318
|
|
data/bin/t
ADDED
@@ -3,6 +3,9 @@ module Onotole
|
|
3
3
|
module AfterInstallPatch
|
4
4
|
def post_init
|
5
5
|
install_queue = [
|
6
|
+
:redis,
|
7
|
+
:redis_rails,
|
8
|
+
:redis_namespace,
|
6
9
|
:ckeditor,
|
7
10
|
:fotoramajs,
|
8
11
|
:underscore_rails,
|
@@ -312,5 +315,38 @@ DATA
|
|
312
315
|
replace_in_file 'config/initializers/active_admin.rb',
|
313
316
|
'ActiveAdmin.setup do |config|', config
|
314
317
|
end
|
318
|
+
|
319
|
+
def after_install_redis
|
320
|
+
config = %q(
|
321
|
+
config.cache_store = :redis_store, "#{ENV['REDIS_PATH']}/cache", { expires_in: 90.minutes }
|
322
|
+
)
|
323
|
+
File.open('config/initializers/redis.rb', 'w') { |f| f.write "$redis = Redis.new\n" }
|
324
|
+
%w(development production).each do |env|
|
325
|
+
inject_into_file "config/environments/#{env}.rb", config,
|
326
|
+
after: "Rails.application.configure do\n"
|
327
|
+
end
|
328
|
+
append_file '.env', 'REDIS_PATH=redis://localhost:6379/0'
|
329
|
+
append_file '.env.production', 'REDIS_PATH=redis://localhost:6379/0'
|
330
|
+
|
331
|
+
rubocop_todo_conf = <<-DATA
|
332
|
+
Style/GlobalVars:
|
333
|
+
Exclude:
|
334
|
+
- 'config/initializers/redis.rb'
|
335
|
+
DATA
|
336
|
+
File.open('.rubocop_todo.yml', 'a') { |f| f.write rubocop_todo_conf }
|
337
|
+
end
|
338
|
+
|
339
|
+
def after_install_redis_namespace
|
340
|
+
return unless user_choose? :redis
|
341
|
+
append_file 'config/initializers/redis.rb',
|
342
|
+
br("$ns_redis = Redis::Namespace.new(:#{app_name}, redis: $redis)")
|
343
|
+
end
|
344
|
+
|
345
|
+
def after_install_redis_rails
|
346
|
+
return unless user_choose? :redis
|
347
|
+
append_file 'config/initializers/redis.rb', br(app_name.classify.to_s)
|
348
|
+
append_file 'config/initializers/redis.rb',
|
349
|
+
%q(::Application.config.session_store :redis_store, servers: "#{ENV['REDIS_PATH']}/session")
|
350
|
+
end
|
315
351
|
end
|
316
352
|
end
|
@@ -42,11 +42,10 @@ module Onotole
|
|
42
42
|
|
43
43
|
gem 'guard'
|
44
44
|
gem 'guard-livereload', '~> 2.4', require: false
|
45
|
-
gem 'guard-puma'
|
46
|
-
gem 'guard-migrate'
|
45
|
+
gem 'guard-puma', require: false
|
46
|
+
gem 'guard-migrate', require: false
|
47
47
|
gem 'guard-rspec', require: false
|
48
48
|
gem 'guard-bundler', require: false
|
49
|
-
gem 'rb-inotify', github: 'kvokka/rb-inotify'
|
50
49
|
TEXT
|
51
50
|
inject_into_file('Gemfile', t, after: 'group :development do')
|
52
51
|
end
|
@@ -317,5 +316,17 @@ module Onotole
|
|
317
316
|
def add_stackprof_gem
|
318
317
|
inject_into_file('Gemfile', "\ngem 'stackprof'", after: 'group :development do')
|
319
318
|
end
|
319
|
+
|
320
|
+
def add_redis_gem
|
321
|
+
inject_into_file('Gemfile', "\ngem 'redis', '~>3.2'", after: '# user_choice')
|
322
|
+
end
|
323
|
+
|
324
|
+
def add_redis_rails_gem
|
325
|
+
inject_into_file('Gemfile', "\ngem 'redis-rails'", after: '# user_choice')
|
326
|
+
end
|
327
|
+
|
328
|
+
def add_redis_namespace_gem
|
329
|
+
inject_into_file('Gemfile', "\ngem 'redis-namespace'", after: '# user_choice')
|
330
|
+
end
|
320
331
|
end
|
321
332
|
end
|
@@ -129,6 +129,18 @@ module Onotole
|
|
129
129
|
add_to_user_choise :underscore_rails if user_choose?(:gmaps4rails)
|
130
130
|
end
|
131
131
|
|
132
|
+
def choose_cache_storage
|
133
|
+
variants = { none: 'Default',
|
134
|
+
redis: 'Redis db ruby library',
|
135
|
+
redis_rails: 'Provides a full set of stores (Cache, Session, HTTP Cache)',
|
136
|
+
redis_namespace: 'Provides an interface to a namespaced subset of your redis keyspace'
|
137
|
+
}
|
138
|
+
multiple_choice('Select cache storage and plug-ins.', variants).each do |gem|
|
139
|
+
add_to_user_choise gem
|
140
|
+
end
|
141
|
+
add_to_user_choise :redis if user_choose?(:redis_rails) || user_choose?(:redis_namespace)
|
142
|
+
end
|
143
|
+
|
132
144
|
# template for yes/no question
|
133
145
|
#
|
134
146
|
# def supeawesome_gem
|
data/lib/onotole/helpers.rb
CHANGED
data/lib/onotole/version.rb
CHANGED
@@ -0,0 +1,13 @@
|
|
1
|
+
# https://github.com/ddollar/forego
|
2
|
+
<%= "#{app_name.upcase}_ASSET_HOST=fix_env_production_file.org" %>
|
3
|
+
<%= "#{app_name.upcase}_APPLICATION_HOST=fix_env_production_file.org" %>
|
4
|
+
<%= "#{app_name.upcase}_PORT=80" %>
|
5
|
+
<%= "#{app_name.upcase}_SECRET_KEY_BASE=production_secret" %>
|
6
|
+
<%= "#{app_name.upcase}_SMTP_ADDRESS=smtp.example.com" %>
|
7
|
+
<%= "#{app_name.upcase}_SMTP_DOMAIN=example.com" %>
|
8
|
+
<%= "#{app_name.upcase}_SMTP_PORT=587" %>
|
9
|
+
<%= "#{app_name.upcase}_SMTP_PASSWORD=password" %>
|
10
|
+
<%= "#{app_name.upcase}_SMTP_USERNAME=username" %>
|
11
|
+
RACK_ENV=production
|
12
|
+
EXECJS_RUNTIME=Node
|
13
|
+
RAILS_SERVE_STATIC_FILES=true
|
data/templates/gitignore_file
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.1
|
4
|
+
version: 1.2.1
|
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-04-
|
12
|
+
date: 2016-04-17 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -82,6 +82,7 @@ files:
|
|
82
82
|
- bin/rake
|
83
83
|
- bin/rspec
|
84
84
|
- bin/setup
|
85
|
+
- bin/t
|
85
86
|
- goodies/custom_404_and_others_in_1_minute.md
|
86
87
|
- goodies/mailcatcher_loading_patch.md
|
87
88
|
- goodies/tests_speed_up_hack.md
|
@@ -146,6 +147,7 @@ files:
|
|
146
147
|
- templates/devise_rspec.rb
|
147
148
|
- templates/disable_xml_params.rb
|
148
149
|
- templates/dotenv.erb
|
150
|
+
- templates/dotenv_production.erb
|
149
151
|
- templates/dotfiles/.ctags
|
150
152
|
- templates/dotfiles/.pryrc
|
151
153
|
- templates/dotfiles/.rspec
|