pixelforce_recipes 0.6 → 0.7

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: e644e32bf30015c715d53e04d83ae83def506c40
4
- data.tar.gz: 311ca0fcf19df44ef84b1372695708c84c7bfa44
3
+ metadata.gz: 23b5a059ff6c01a74cb2a9129e32722e1d351989
4
+ data.tar.gz: 0129c285267bc58f381f6bbbcd99000f826a706b
5
5
  SHA512:
6
- metadata.gz: 79fea96ec854664a3b031395afb45fca7ad34618971175fb67afc105448e1d25addb83bb87a644bd0fb4b078a1f0592bb977ad5d43e1385f39caac01292c2450
7
- data.tar.gz: 4460a3740121d362d9d0f3ad7151cec5cc12640b47a3ea073774323a29afb5f09240c4f83f20859bf6f4718f44bdc5ea21c81695530c33eb38b3fee04809cbab
6
+ metadata.gz: b4243926b04d5cb89aa2bf2fce1852c3657f4a73b51e9be20e563c2a181b6100bf83794f2328cf3f3ad2d92293bdad5329210ee129b0f01d28831db5d920c369
7
+ data.tar.gz: c3186189eaf6ee671175b6df92eb3a3b5a8abe53ba971228d7a3beb3503437e2691b0ba49eaf0eb8ef24071a1ab885522a2a5a47287b83cbc2447606f3586a68
@@ -3,4 +3,5 @@ require "capistrano"
3
3
 
4
4
  require File.expand_path("#{File.dirname(__FILE__)}/pixelforce_recipes/base")
5
5
  require File.expand_path("#{File.dirname(__FILE__)}/pixelforce_recipes/unicorn")
6
- require File.expand_path("#{File.dirname(__FILE__)}/pixelforce_recipes/sidekiq")
6
+ require File.expand_path("#{File.dirname(__FILE__)}/pixelforce_recipes/sidekiq")
7
+ require File.expand_path("#{File.dirname(__FILE__)}/pixelforce_recipes/puma")
@@ -0,0 +1,26 @@
1
+ if Capistrano::Configuration.instance(false)
2
+
3
+ Capistrano::Configuration.instance(true).load do |instance|
4
+
5
+ namespace :puma do
6
+
7
+ desc "Setup puma configuration for this application"
8
+ task :setup, roles: :web do
9
+ template "puma_init.erb", "/tmp/puma"
10
+ run "#{sudo} mv /tmp/puma /etc/init.d/#{application}"
11
+ run "#{sudo} chmod +x /etc/init.d/#{application}"
12
+ run "#{sudo} update-rc.d #{application} defaults"
13
+ template "nginx_puma_config.erb", "/tmp/nginx_puma_config"
14
+ run "#{sudo} mv /tmp/nginx_puma_config /etc/nginx/sites-enabled/#{application}"
15
+ end
16
+ # after "deploy:setup", "nginx:setup"
17
+
18
+ %w[start stop restart].each do |command|
19
+ desc "#{command} puma"
20
+ task command, roles: :web do
21
+ run "/etc/init.d/#{application} #{command}"
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,40 @@
1
+ upstream <%= application %> {
2
+ server unix:///home/ubuntu/<%= application %>/shared/sockets/<%= application %>.sock;
3
+ }
4
+
5
+ server {
6
+ listen 80 default_server deferred;
7
+ server_name <%= server_address %>;
8
+
9
+ root /home/ubuntu/<%= application %>/current/public;
10
+ access_log /home/ubuntu/<%= application %>/current/log/nginx.access.log;
11
+ error_log /home/ubuntu/<%= application %>/current/log/nginx.error.log info;
12
+
13
+ location ^~ /assets/ {
14
+ gzip_static on;
15
+ expires max;
16
+ add_header Cache-Control public;
17
+ }
18
+
19
+ try_files $uri $uri @<%= application %>;
20
+ location @<%= application %> {
21
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
22
+ proxy_set_header Host $http_host;
23
+ proxy_redirect off;
24
+ proxy_buffering on;
25
+ proxy_set_header X-Real-IP $remote_addr;
26
+
27
+ proxy_pass http://<%= application %>;
28
+ }
29
+
30
+ location /cable {
31
+ proxy_pass http://<%= application %>;
32
+ proxy_http_version 1.1;
33
+ proxy_set_header Upgrade $http_upgrade;
34
+ proxy_set_header Connection "upgrade";
35
+ }
36
+
37
+ error_page 500 502 503 504 /500.html;
38
+ client_max_body_size 10M;
39
+ keepalive_timeout 10;
40
+ }
@@ -0,0 +1,55 @@
1
+ #!/bin/bash
2
+
3
+ ### BEGIN INIT INFO
4
+ # Provides: puma
5
+ # Required-Start: $local_fs $remote_fs $network $syslog
6
+ # Required-Stop: $local_fs $remote_fs $network $syslog
7
+ # Default-Start: 2 3 4 5
8
+ # Default-Stop: 0 1 6
9
+ # Short-Description: starts the puma web server
10
+ # Description: starts puma
11
+ ### END INIT INFO
12
+
13
+ USER="<%= user %>"
14
+ DAEMON=puma
15
+ PROJECT_PATH="<%= deploy_to %>"
16
+ DAEMON_OPTS="-e <%= rails_env %>"
17
+ NAME=puma
18
+ DESC="puma app for $USER"
19
+ PID="$PROJECT_PATH/shared/pids/puma.pid"
20
+
21
+ case "$1" in
22
+ start)
23
+ CD_TO_APP_DIR="cd $PROJECT_PATH/current"
24
+ START_DAEMON_PROCESS="bundle exec $DAEMON $DAEMON_OPTS"
25
+
26
+ echo -n "Starting $DESC: "
27
+ if [ `whoami` = 'root' ]; then
28
+ su - $USER -c "$CD_TO_APP_DIR > /dev/null 2>&1 && $START_DAEMON_PROCESS"
29
+ else
30
+ $CD_TO_APP_DIR > /dev/null 2>&1 && $START_DAEMON_PROCESS
31
+ fi
32
+ echo "$NAME."
33
+ ;;
34
+ stop)
35
+ echo -n "Stopping $DESC: "
36
+ kill -QUIT `cat $PID`
37
+ echo "$NAME."
38
+ ;;
39
+ restart)
40
+ echo -n "Restarting $DESC: "
41
+ kill -USR2 `cat $PID`
42
+ echo "$NAME."
43
+ ;;
44
+ reload)
45
+ echo -n "Reloading $DESC configuration: "
46
+ kill -HUP `cat $PID`
47
+ echo "$NAME."
48
+ ;;
49
+ *)
50
+ echo "Usage: $NAME {start|stop|restart|reload}" >&2
51
+ exit 1
52
+ ;;
53
+ esac
54
+
55
+ exit 0
@@ -1,3 +1,3 @@
1
1
  module PixelforceRecipes
2
- VERSION = "0.6"
2
+ VERSION = "0.7"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pixelforce_recipes
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.6'
4
+ version: '0.7'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Zhang
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-05-24 00:00:00.000000000 Z
11
+ date: 2017-08-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -84,8 +84,11 @@ files:
84
84
  - bin/setup
85
85
  - lib/pixelforce_recipes.rb
86
86
  - lib/pixelforce_recipes/base.rb
87
+ - lib/pixelforce_recipes/puma.rb
87
88
  - lib/pixelforce_recipes/sidekiq.rb
88
89
  - lib/pixelforce_recipes/templates/nginx_config.erb
90
+ - lib/pixelforce_recipes/templates/nginx_puma_config.erb
91
+ - lib/pixelforce_recipes/templates/puma_init.erb
89
92
  - lib/pixelforce_recipes/templates/sidekiq_init.erb
90
93
  - lib/pixelforce_recipes/templates/unicorn_init.erb
91
94
  - lib/pixelforce_recipes/unicorn.rb