capistrano-deploy-lock 1.0.3 → 1.0.4

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: 3706dab8d4d86569c3426729f9372d4caed6417b
4
- data.tar.gz: c4b39fb3656b58edaa26fac052cda2348fe78c83
3
+ metadata.gz: c1189621f4a67a143e88e4a95ced9252cc67d68d
4
+ data.tar.gz: 174b3c7ea054f3a7da172bd3aaafa20f5ce3a706
5
5
  SHA512:
6
- metadata.gz: 2a2b5d3173cd4b9a1466d804d8bae8485319f09552fce810bec6f4d8127a3fc168d367c50ee71c404b9e8beef4666241a2fecbb0f33f08175bf027edd809ce51
7
- data.tar.gz: fe16dd12b7e801b64ca1eb11d0199ff4c8c4d84bdf2be21a92b85fb3d6e59f7c9e820639eed2e7221b933b52c6bee6eeb45de81c3d48e3d29026898fdbbb29a0
6
+ metadata.gz: 4ad69733250faae70af2b5247bae86389618ff068fe521da04f9550bab1e221fe0dbcab3eb706a84c163c7f648ccbfc5641ad1faf77e043cf06a4b1b5eb62b14
7
+ data.tar.gz: 5d6917d14bb3150fe60b57479ec8b2e4c27c2b6dfe883320e52c5d11f4f06483bb04ad5bede86f6f2267d1b9399f50ec9339ea8d701fada369db1ccd5bd61caf
data/.gitignore CHANGED
@@ -1 +1,2 @@
1
1
  nbproject/
2
+ .idea/
@@ -3,18 +3,18 @@ lib = File.expand_path('../lib', __FILE__)
3
3
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
- spec.name = "capistrano-deploy-lock"
7
- spec.version = "1.0.3"
8
- spec.author = "Maruf Hasan Bulbul"
9
- spec.email = "mhb.cse@gmail.com"
10
- spec.summary = %q{Deploy lock feature for Capistrano 3.4.x}
11
- spec.description = %q{Lock deploy when deployment is running or custom lock to prevent further deployment for Capistrano 3.}
12
- spec.homepage = "https://github.com/maruf-freelancer/capistrano-deploy-lock"
6
+ spec.name = 'capistrano-deploy-lock'
7
+ spec.version = '1.0.4'
8
+ spec.author = 'Maruf Hasan Bulbul'
9
+ spec.email = 'mhb.cse@gmail.com'
10
+ spec.summary = %q{Deploy lock feature for Capistrano 3.4.x}
11
+ spec.description = %q{Lock deploy when deployment is running or custom lock to prevent further deployment for Capistrano 3.}
12
+ spec.homepage = 'https://github.com/maruf-freelancer/capistrano-deploy-lock'
13
13
 
14
- spec.files = `git ls-files -z`.split("\x0")
15
- spec.require_paths = ["lib"]
14
+ spec.files = `git ls-files -z`.split("\x0")
15
+ spec.require_paths = ['lib']
16
16
 
17
17
  spec.add_dependency 'capistrano', '>= 3.4'
18
- spec.add_development_dependency "rake", ">= 10.0"
18
+ spec.add_development_dependency 'rake', '>= 10.0'
19
19
  spec.required_ruby_version = '>= 1.9.3'
20
20
  end
@@ -1,4 +1,4 @@
1
- set :deploy_lock_file, -> { File.join(shared_path, "deploy-lock.yml") }
1
+ set :deploy_lock_file, -> { File.join(shared_path, 'deploy-lock.yml') }
2
2
  set :deploy_lock_roles, -> { :app }
3
3
  set :default_lock_expiry, (15 * 60)
4
4
  set :deploy_lock, false
@@ -6,27 +6,27 @@ set :lock_message, nil
6
6
  set :lock_expiry, nil
7
7
 
8
8
  namespace :deploy do
9
-
10
- desc "Deploy with a custom deploy lock"
9
+
10
+ desc 'Deploy with a custom deploy lock'
11
11
  task :with_lock do
12
12
  invoke 'deploy:lock'
13
13
  invoke 'deploy'
14
14
  end
15
-
16
- desc "Set deploy lock with a custom lock message and expiry time"
15
+
16
+ desc 'Set deploy lock with a custom lock message and expiry time'
17
17
  task :lock do
18
18
  set :custom_deploy_lock, true
19
19
  set :lock_message, ask('lock message', '', echo: true)
20
20
  puts "Lock message: #{fetch(:lock_message)}"
21
21
 
22
22
  while fetch(:lock_expiry).nil?
23
- set :expire_after, ask('minutes of expiry', 'optional', echo: true)
23
+ set :expire_after, ask('minutes of expiry', 'optional', echo: true)
24
24
  expire_after = fetch(:expire_after)
25
-
26
- if expire_after == "optional"
25
+
26
+ if expire_after == 'optional'
27
27
  # Never expire an explicit lock if no time given
28
28
  set :lock_expiry, false
29
- puts colorize("Lock will never expire automatically.", color: 33)
29
+ puts colorize('Lock will never expire automatically.', color: 33)
30
30
  else
31
31
  unless expire_after.to_i == 0
32
32
  set :lock_expiry, (Time.now + expire_after.to_i * 60).utc
@@ -36,11 +36,11 @@ namespace :deploy do
36
36
  end
37
37
  end
38
38
  end
39
-
39
+
40
40
  invoke 'deploy:create_lock'
41
41
  end
42
-
43
- desc "Creates a lock file, so that futher deploys will be prevented"
42
+
43
+ desc 'Creates a lock file, so that futher deploys will be prevented'
44
44
  task :create_lock do
45
45
  if fetch(:deploy_lock)
46
46
  puts colorize('Deploy lock already created.', color: 33)
@@ -50,7 +50,7 @@ namespace :deploy do
50
50
  if fetch(:lock_message).nil?
51
51
  set :lock_message, "Deploying #{fetch(:branch)} branch in #{fetch(:rails_env)}"
52
52
  end
53
-
53
+
54
54
  if fetch(:lock_expiry).nil?
55
55
  set :lock_expiry, (Time.now + fetch(:default_lock_expiry)).utc
56
56
  end
@@ -62,24 +62,24 @@ namespace :deploy do
62
62
  message: fetch(:lock_message).to_s,
63
63
  custom: !!fetch(:custom_deploy_lock)
64
64
  }
65
-
65
+
66
66
  write_deploy_lock(deploy_lock_data)
67
-
67
+
68
68
  set :deploy_lock, deploy_lock_data
69
69
  end
70
-
71
- desc "Checks for a deploy lock. If present, deploy is aborted and message is displayed. Any expired locks are deleted."
70
+
71
+ desc 'Checks for a deploy lock. If present, deploy is aborted and message is displayed. Any expired locks are deleted.'
72
72
  task :check_lock do
73
73
  # Don't check the lock if we just created it
74
74
  next if fetch(:deploy_lock)
75
75
 
76
76
  fetch_deploy_lock
77
-
77
+
78
78
  # Return if no lock
79
79
  next unless fetch(:deploy_lock)
80
80
 
81
81
  deploy_lock = fetch(:deploy_lock)
82
-
82
+
83
83
  if deploy_lock[:expire_at] && deploy_lock[:expire_at] < Time.now
84
84
  remove_deploy_lock
85
85
  next
@@ -103,37 +103,30 @@ namespace :deploy do
103
103
  exit 1
104
104
  end
105
105
  end
106
-
106
+
107
107
  namespace :unlock do
108
- desc "Unlocks the server for deployment"
108
+ desc 'Unlocks the server for deployment'
109
109
  task :default do
110
110
  # Don't automatically remove custom deploy locks created by deploy:lock task
111
111
  if fetch(:custom_deploy_lock)
112
112
  puts colorize('Not removing custom deploy lock.', color: 33)
113
113
  else
114
114
  remove_deploy_lock
115
- puts colorize("Deploy unlocked.", color: 32)
115
+ puts colorize('Deploy unlocked.', color: 32)
116
116
  end
117
117
  end
118
118
 
119
119
  task :force do
120
120
  remove_deploy_lock
121
- puts colorize("Deploy unlocked.", color: 32)
121
+ puts colorize('Deploy unlocked.', color: 32)
122
122
  end
123
123
  end
124
-
125
- before 'deploy:started', 'check_lock' do
126
- invoke 'deploy:check_lock'
127
- end
128
- before 'deploy:started', 'create_lock' do
129
- invoke 'deploy:create_lock'
130
- end
131
- after 'deploy:published', 'unlock' do
132
- invoke 'deploy:unlock:default'
133
- end
134
- after 'deploy:rollback', 'unlock' do
135
- invoke 'deploy:unlock:default'
136
- end
124
+
125
+ before 'deploy:started', 'check_lock'
126
+ before 'deploy:started', 'create_lock'
127
+ after 'deploy:published', 'unlock:default'
128
+ after 'deploy:rollback', 'unlock:default'
129
+ after 'deploy:failed', 'unlock:default'
137
130
 
138
131
  end
139
132
 
@@ -144,7 +137,7 @@ def fetch_deploy_lock
144
137
 
145
138
  unless fetch(:deploy_lock)
146
139
  # Check all matching servers for a deploy lock.
147
- on roles(fetch(:deploy_lock_roles)).to_a, in: :parallel do |host|
140
+ on roles(fetch(:deploy_lock_roles)), in: :parallel do |host|
148
141
  if test("[ -f #{fetch(:deploy_lock_file)} ]")
149
142
  output = capture "cat #{fetch(:deploy_lock_file)}"
150
143
  set :deploy_lock, YAML.load(output)
@@ -164,7 +157,7 @@ end
164
157
 
165
158
  def remove_deploy_lock
166
159
  on roles(fetch(:deploy_lock_roles)), in: :parallel do |host|
167
- execute :rm, "-f", fetch(:deploy_lock_file)
160
+ execute :rm, '-f', fetch(:deploy_lock_file)
168
161
  end
169
162
  set :deploy_lock, nil
170
163
  set :deploy_lock_removed, true
@@ -180,7 +173,7 @@ def message(application, stage, deploy_lock)
180
173
  else
181
174
  message << "\n\e[0;33mLock must be manually removed with: cap #{stage} deploy:unlock\e[0m"
182
175
  end
183
-
176
+
184
177
  colorize(message)
185
178
  end
186
179
 
@@ -188,4 +181,4 @@ def colorize(text, options = {})
188
181
  attribute = options[:attribute] || 0
189
182
  color = options[:color] || 31
190
183
  "\e[#{attribute};#{color}m" + text.strip + "\e[0m\n"
191
- end
184
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capistrano-deploy-lock
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maruf Hasan Bulbul
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-07 00:00:00.000000000 Z
11
+ date: 2017-02-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capistrano
@@ -73,7 +73,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
73
73
  version: '0'
74
74
  requirements: []
75
75
  rubyforge_project:
76
- rubygems_version: 2.4.8
76
+ rubygems_version: 2.5.1
77
77
  signing_key:
78
78
  specification_version: 4
79
79
  summary: Deploy lock feature for Capistrano 3.4.x