capistrano3-pushr 1.0.0
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/lib/capistrano/pushr/version.rb +5 -0
- data/lib/capistrano/pushr.rb +1 -0
- data/lib/capistrano/tasks/pushr.rake +111 -0
- metadata +95 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 321427436b3d2e2bd3edbd7842db5889764a59a6
|
4
|
+
data.tar.gz: 696848033b90b43799f70a44c46aa9e82e7c6e72
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: bba2dbd43f3f260a9a61db9544d4f5fc70200bd05847b856179cf0b578a24eee59f16ac848c634748a8ff562628ad8b7d762610e5ac8d2dbfabddf55443da332
|
7
|
+
data.tar.gz: 395fb13d7f00767e122d73f5200a62b4c2548d14e14c361ca8eabfba55d790c3c017bdcb2184ad26a80aa4e9272d63147a455407d99bff40734037c61e52f7b2
|
@@ -0,0 +1 @@
|
|
1
|
+
load File.expand_path('../tasks/pushr.rake', __FILE__)
|
@@ -0,0 +1,111 @@
|
|
1
|
+
namespace :load do
|
2
|
+
task :defaults do
|
3
|
+
set :pushr_default_hooks, -> { true }
|
4
|
+
|
5
|
+
set :pushr_pid, -> { File.join shared_path, 'tmp', 'pids', 'pushr.pid' }
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
namespace :deploy do
|
10
|
+
before :starting, :check_pushr_hooks do
|
11
|
+
invoke 'pushr:add_default_hooks' if fetch(:pushr_default_hooks)
|
12
|
+
end
|
13
|
+
|
14
|
+
after :publishing, :restart_pushr do
|
15
|
+
invoke 'pushr:restart' if fetch(:pushr_default_hooks)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
namespace :pushr do
|
20
|
+
desc 'Add default Pushr hooks.'
|
21
|
+
task :add_default_hooks do
|
22
|
+
after 'deploy:starting', 'pushr:quiet'
|
23
|
+
after 'deploy:updated', 'pushr:stop'
|
24
|
+
after 'deploy:reverted', 'pushr:stop'
|
25
|
+
after 'deploy:published', 'pushr:start'
|
26
|
+
end
|
27
|
+
|
28
|
+
desc 'Quiet Pushr daemon (stop processing new stuff).'
|
29
|
+
task :quiet do
|
30
|
+
on roles(fetch(:pushr_roles, :all)) do
|
31
|
+
stop_pushr 'USR1'
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
desc 'Stop Pushr daemon.'
|
36
|
+
task :stop do
|
37
|
+
on roles(fetch(:pushr_roles, :all)) do
|
38
|
+
stop_pushr 'TERM'
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
desc 'Start Pushr daemon.'
|
43
|
+
task :start do
|
44
|
+
on roles(fetch(:pushr_roles, :all)) do
|
45
|
+
start_pushr
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
desc 'Restart Pushr daemon.'
|
50
|
+
task :restart do
|
51
|
+
invoke 'pushr:stop'
|
52
|
+
invoke 'pushr:start'
|
53
|
+
end
|
54
|
+
|
55
|
+
desc 'Pushr version.'
|
56
|
+
task :version do
|
57
|
+
on roles(fetch(:pushr_roles, :all)) do
|
58
|
+
print_version
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
desc 'Pushr status.'
|
63
|
+
task :status do
|
64
|
+
on roles(fetch(:pushr_roles, :all)) do
|
65
|
+
status_message = pid_process_exists? ? "running with pid #{pid}" : 'not running'
|
66
|
+
puts "Pushr is #{status_message}!"
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
###
|
71
|
+
|
72
|
+
def pid
|
73
|
+
capture pid_command
|
74
|
+
end
|
75
|
+
|
76
|
+
def pid_command
|
77
|
+
"cat #{fetch(:pushr_pid)}"
|
78
|
+
end
|
79
|
+
|
80
|
+
def pid_file_exists?
|
81
|
+
test(*("[ -f #{fetch(:pushr_pid)} ]").split(' '))
|
82
|
+
end
|
83
|
+
|
84
|
+
def pid_process_exists?
|
85
|
+
pid_file_exists? && test(*("kill -0 `#{pid_command}`").split(' '))
|
86
|
+
end
|
87
|
+
|
88
|
+
def stop_pushr(signal)
|
89
|
+
return unless test("[ -d #{release_path} ]") && pid_process_exists?
|
90
|
+
|
91
|
+
within release_path do
|
92
|
+
puts 'Stopping Pushr...'
|
93
|
+
execute "kill -#{signal} `#{pid_command}`"
|
94
|
+
puts 'done!'
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
98
|
+
def start_pushr
|
99
|
+
within release_path do
|
100
|
+
puts 'Starting Pushr...'
|
101
|
+
execute 'bundle', 'exec', 'pushr', '--pid-file', fetch(:pushr_pid)
|
102
|
+
puts 'done!'
|
103
|
+
end
|
104
|
+
end
|
105
|
+
|
106
|
+
def print_version
|
107
|
+
within release_path do
|
108
|
+
puts capture('bundle', 'exec', 'pushr', '--version')
|
109
|
+
end
|
110
|
+
end
|
111
|
+
end
|
metadata
ADDED
@@ -0,0 +1,95 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: capistrano3-pushr
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Zsofia Balogh
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2016-01-06 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: capistrano
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '3.1'
|
20
|
+
- - ">="
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 3.1.0
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - "~>"
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '3.1'
|
30
|
+
- - ">="
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 3.1.0
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: pushr-core
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - ">="
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: 1.0.2
|
40
|
+
type: :runtime
|
41
|
+
prerelease: false
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: 1.0.2
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: rake
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - ">="
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '0'
|
61
|
+
description: Pushr specific Capistrano tasks
|
62
|
+
email:
|
63
|
+
- zsofia.balogh@supercharge.io
|
64
|
+
executables: []
|
65
|
+
extensions: []
|
66
|
+
extra_rdoc_files: []
|
67
|
+
files:
|
68
|
+
- lib/capistrano/pushr.rb
|
69
|
+
- lib/capistrano/pushr/version.rb
|
70
|
+
- lib/capistrano/tasks/pushr.rake
|
71
|
+
homepage: https://github.com/team-supercharge/capistrano3-pushr
|
72
|
+
licenses:
|
73
|
+
- GPL-3.0
|
74
|
+
metadata: {}
|
75
|
+
post_install_message:
|
76
|
+
rdoc_options: []
|
77
|
+
require_paths:
|
78
|
+
- lib
|
79
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - ">="
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: '0'
|
84
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
85
|
+
requirements:
|
86
|
+
- - ">="
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
version: '0'
|
89
|
+
requirements: []
|
90
|
+
rubyforge_project:
|
91
|
+
rubygems_version: 2.4.8
|
92
|
+
signing_key:
|
93
|
+
specification_version: 4
|
94
|
+
summary: Pushr specific Capistrano tasks
|
95
|
+
test_files: []
|