mina-stack 0.0.2
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 +7 -0
- data/.gitignore +17 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +62 -0
- data/Rakefile +1 -0
- data/lib/generators/mina/stack/install_generator.rb +43 -0
- data/lib/generators/mina/templates/deploy.rb +74 -0
- data/lib/generators/mina/templates/production.rb +13 -0
- data/lib/mina-stack/base.rb +30 -0
- data/lib/mina-stack/defaults.rb +108 -0
- data/lib/mina-stack/setup.rb +50 -0
- data/lib/mina-stack/version.rb +5 -0
- data/lib/mina-stack.rb +9 -0
- data/lib/recipes/bower.rb +43 -0
- data/lib/recipes/elastic_search.rb +31 -0
- data/lib/recipes/imagemagick.rb +11 -0
- data/lib/recipes/libs.rb +14 -0
- data/lib/recipes/memcached.rb +21 -0
- data/lib/recipes/monit.rb +54 -0
- data/lib/recipes/nginx.rb +49 -0
- data/lib/recipes/node.rb +12 -0
- data/lib/recipes/postgresql.rb +58 -0
- data/lib/recipes/private_pub.rb +35 -0
- data/lib/recipes/puma.rb +31 -0
- data/lib/recipes/rails.rb +22 -0
- data/lib/recipes/rbenv.rb +28 -0
- data/lib/recipes/redis.rb +23 -0
- data/lib/recipes/sidekiq.rb +42 -0
- data/lib/recipes/unicorn.rb +21 -0
- data/lib/templates/application.yml.erb +4 -0
- data/lib/templates/database.yml.erb +8 -0
- data/lib/templates/memcached.conf.erb +16 -0
- data/lib/templates/monit/memcached.erb +8 -0
- data/lib/templates/monit/monitrc.erb +21 -0
- data/lib/templates/monit/nginx.erb +5 -0
- data/lib/templates/monit/postgresql.erb +5 -0
- data/lib/templates/monit/private_pub.erb +6 -0
- data/lib/templates/monit/puma.erb +7 -0
- data/lib/templates/monit/redis.erb +4 -0
- data/lib/templates/monit/sidekiq.erb +6 -0
- data/lib/templates/monit/unicorn.erb +14 -0
- data/lib/templates/nginx.conf.erb +43 -0
- data/lib/templates/private_pub.yml.erb +4 -0
- data/lib/templates/puma.rb.erb +17 -0
- data/lib/templates/sidekiq.yml.erb +9 -0
- data/lib/templates/unicorn.rb.erb +41 -0
- data/lib/templates/unicorn_init.erb +86 -0
- data/lib/templates/upstart/puma.conf.erb +46 -0
- data/lib/templates/upstart/sidekiq.conf.erb +44 -0
- data/mina-stack.gemspec +25 -0
- data/mina-stack.rb +7 -0
- metadata +151 -0
@@ -0,0 +1,46 @@
|
|
1
|
+
# /etc/init/puma.conf - Puma config
|
2
|
+
|
3
|
+
# This example config should work with Ubuntu 12.04+. It
|
4
|
+
# allows you to manage multiple Puma instances with
|
5
|
+
# Upstart, Ubuntu's native service management tool.
|
6
|
+
|
7
|
+
description "Puma Background Worker"
|
8
|
+
|
9
|
+
# no "start on", we don't want to automatically start
|
10
|
+
|
11
|
+
|
12
|
+
setuid <%= user %>
|
13
|
+
setgid <%= user %>
|
14
|
+
|
15
|
+
respawn
|
16
|
+
respawn limit 3 30
|
17
|
+
|
18
|
+
script
|
19
|
+
# this script runs in /bin/sh by default
|
20
|
+
# respawn as bash so we can source in rbenv/rvm
|
21
|
+
exec /bin/bash <<'EOT'
|
22
|
+
# set HOME to the setuid user's home, there doesn't seem to be a better, portable way
|
23
|
+
export HOME="$(eval echo ~$(id -un))"
|
24
|
+
|
25
|
+
cd <%= "#{deploy_to!}/#{current_path!}" %>
|
26
|
+
|
27
|
+
if [ -d "$HOME/.rbenv/bin" ]; then
|
28
|
+
export PATH="$HOME/.rbenv/bin:$HOME/.rbenv/shims:$PATH"
|
29
|
+
elif [ -f /etc/profile.d/rvm.sh ]; then
|
30
|
+
source /etc/profile.d/rvm.sh
|
31
|
+
elif [ -f /usr/local/rvm/scripts/rvm ]; then
|
32
|
+
source /etc/profile.d/rvm.sh
|
33
|
+
elif [ -f "$HOME/.rvm/scripts/rvm" ]; then
|
34
|
+
source "$HOME/.rvm/scripts/rvm"
|
35
|
+
elif [ -f /usr/local/share/chruby/chruby.sh ]; then
|
36
|
+
source /usr/local/share/chruby/chruby.sh
|
37
|
+
if [ -f /usr/local/share/chruby/auto.sh ]; then
|
38
|
+
source /usr/local/share/chruby/auto.sh
|
39
|
+
fi
|
40
|
+
# if you aren't using auto, set your version here
|
41
|
+
# chruby 2.0.0
|
42
|
+
fi
|
43
|
+
|
44
|
+
<%= puma_cmd %> -C <%= puma_config %>
|
45
|
+
EOT
|
46
|
+
end script
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# /etc/init/sidekiq.conf - Sidekiq config
|
2
|
+
|
3
|
+
# This example config should work with Ubuntu 12.04+. It
|
4
|
+
# allows you to manage multiple Sidekiq instances with
|
5
|
+
# Upstart, Ubuntu's native service management tool.
|
6
|
+
|
7
|
+
description "Sidekiq Background Worker"
|
8
|
+
|
9
|
+
# no "start on", we don't want to automatically start
|
10
|
+
#stop on (stopping workers or runlevel [06])
|
11
|
+
|
12
|
+
setuid <%= user %>
|
13
|
+
setgid <%= user %>
|
14
|
+
|
15
|
+
respawn
|
16
|
+
respawn limit 3 30
|
17
|
+
|
18
|
+
script
|
19
|
+
# this script runs in /bin/sh by default
|
20
|
+
# respawn as bash so we can source in rbenv
|
21
|
+
exec /bin/bash <<'EOT'
|
22
|
+
# set HOME to the setuid user's home, there doesn't seem to be a better, portable way
|
23
|
+
export HOME="$(eval echo ~$(id -un))"
|
24
|
+
|
25
|
+
if [ -d "$HOME/.rbenv/bin" ]; then
|
26
|
+
export PATH="$HOME/.rbenv/bin:$HOME/.rbenv/shims:$PATH"
|
27
|
+
elif [ -f /etc/profile.d/rvm.sh ]; then
|
28
|
+
source /etc/profile.d/rvm.sh
|
29
|
+
elif [ -f /usr/local/rvm/scripts/rvm ]; then
|
30
|
+
source /etc/profile.d/rvm.sh
|
31
|
+
elif [ -f "$HOME/.rvm/scripts/rvm" ]; then
|
32
|
+
source "$HOME/.rvm/scripts/rvm"
|
33
|
+
elif [ -f /usr/local/share/chruby/chruby.sh ]; then
|
34
|
+
source /usr/local/share/chruby/chruby.sh
|
35
|
+
if [ -f /usr/local/share/chruby/auto.sh ]; then
|
36
|
+
source /usr/local/share/chruby/auto.sh
|
37
|
+
fi
|
38
|
+
# if you aren't using auto, set your version here
|
39
|
+
# chruby 2.0.0
|
40
|
+
fi
|
41
|
+
cd <%= "#{deploy_to!}/#{current_path!}" %>
|
42
|
+
<%= sidekiq_start %>
|
43
|
+
EOT
|
44
|
+
end script
|
data/mina-stack.gemspec
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'mina-stack/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "mina-stack"
|
8
|
+
spec.version = Mina::Stack::VERSION
|
9
|
+
spec.authors = ["Igor Davydov"]
|
10
|
+
spec.email = ["iskiche@gmail.com"]
|
11
|
+
spec.description = %q{Easy deploy of rails app stack with mina on ubuntu servers}
|
12
|
+
spec.summary = %q{Mina + stack}
|
13
|
+
spec.homepage = ""
|
14
|
+
spec.license = "MIT"
|
15
|
+
|
16
|
+
spec.files = `git ls-files`.split($/)
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
spec.add_dependency "rake"
|
22
|
+
spec.add_dependency "mina", '<= 0.3.0'
|
23
|
+
spec.add_dependency "highline"
|
24
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
25
|
+
end
|
data/mina-stack.rb
ADDED
metadata
ADDED
@@ -0,0 +1,151 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: mina-stack
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.2
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Igor Davydov
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-11-14 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rake
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: mina
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "<="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 0.3.0
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "<="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 0.3.0
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: highline
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: bundler
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '1.3'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '1.3'
|
69
|
+
description: Easy deploy of rails app stack with mina on ubuntu servers
|
70
|
+
email:
|
71
|
+
- iskiche@gmail.com
|
72
|
+
executables: []
|
73
|
+
extensions: []
|
74
|
+
extra_rdoc_files: []
|
75
|
+
files:
|
76
|
+
- ".gitignore"
|
77
|
+
- Gemfile
|
78
|
+
- LICENSE.txt
|
79
|
+
- README.md
|
80
|
+
- Rakefile
|
81
|
+
- lib/generators/mina/stack/install_generator.rb
|
82
|
+
- lib/generators/mina/templates/deploy.rb
|
83
|
+
- lib/generators/mina/templates/production.rb
|
84
|
+
- lib/mina-stack.rb
|
85
|
+
- lib/mina-stack/base.rb
|
86
|
+
- lib/mina-stack/defaults.rb
|
87
|
+
- lib/mina-stack/setup.rb
|
88
|
+
- lib/mina-stack/version.rb
|
89
|
+
- lib/recipes/bower.rb
|
90
|
+
- lib/recipes/elastic_search.rb
|
91
|
+
- lib/recipes/imagemagick.rb
|
92
|
+
- lib/recipes/libs.rb
|
93
|
+
- lib/recipes/memcached.rb
|
94
|
+
- lib/recipes/monit.rb
|
95
|
+
- lib/recipes/nginx.rb
|
96
|
+
- lib/recipes/node.rb
|
97
|
+
- lib/recipes/postgresql.rb
|
98
|
+
- lib/recipes/private_pub.rb
|
99
|
+
- lib/recipes/puma.rb
|
100
|
+
- lib/recipes/rails.rb
|
101
|
+
- lib/recipes/rbenv.rb
|
102
|
+
- lib/recipes/redis.rb
|
103
|
+
- lib/recipes/sidekiq.rb
|
104
|
+
- lib/recipes/unicorn.rb
|
105
|
+
- lib/templates/application.yml.erb
|
106
|
+
- lib/templates/database.yml.erb
|
107
|
+
- lib/templates/memcached.conf.erb
|
108
|
+
- lib/templates/monit/memcached.erb
|
109
|
+
- lib/templates/monit/monitrc.erb
|
110
|
+
- lib/templates/monit/nginx.erb
|
111
|
+
- lib/templates/monit/postgresql.erb
|
112
|
+
- lib/templates/monit/private_pub.erb
|
113
|
+
- lib/templates/monit/puma.erb
|
114
|
+
- lib/templates/monit/redis.erb
|
115
|
+
- lib/templates/monit/sidekiq.erb
|
116
|
+
- lib/templates/monit/unicorn.erb
|
117
|
+
- lib/templates/nginx.conf.erb
|
118
|
+
- lib/templates/private_pub.yml.erb
|
119
|
+
- lib/templates/puma.rb.erb
|
120
|
+
- lib/templates/sidekiq.yml.erb
|
121
|
+
- lib/templates/unicorn.rb.erb
|
122
|
+
- lib/templates/unicorn_init.erb
|
123
|
+
- lib/templates/upstart/puma.conf.erb
|
124
|
+
- lib/templates/upstart/sidekiq.conf.erb
|
125
|
+
- mina-stack.gemspec
|
126
|
+
- mina-stack.rb
|
127
|
+
homepage: ''
|
128
|
+
licenses:
|
129
|
+
- MIT
|
130
|
+
metadata: {}
|
131
|
+
post_install_message:
|
132
|
+
rdoc_options: []
|
133
|
+
require_paths:
|
134
|
+
- lib
|
135
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
136
|
+
requirements:
|
137
|
+
- - ">="
|
138
|
+
- !ruby/object:Gem::Version
|
139
|
+
version: '0'
|
140
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
141
|
+
requirements:
|
142
|
+
- - ">="
|
143
|
+
- !ruby/object:Gem::Version
|
144
|
+
version: '0'
|
145
|
+
requirements: []
|
146
|
+
rubyforge_project:
|
147
|
+
rubygems_version: 2.2.2
|
148
|
+
signing_key:
|
149
|
+
specification_version: 4
|
150
|
+
summary: Mina + stack
|
151
|
+
test_files: []
|