capistrano_multiconfig_parallel 2.0.0.beta1 → 2.0.0.beta2

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: 90465ac1914f4d1a52d75ea58d467fd3a9de07d0
4
- data.tar.gz: c742e9d38e06da28fba7cff73425a135c9d3cfa9
3
+ metadata.gz: c04e56d6d029d5babb6f06674b3c9fcfd91501ee
4
+ data.tar.gz: 16fad70a3ab6d90fab9ed087bd37c7d178304629
5
5
  SHA512:
6
- metadata.gz: 51b96d92426e0c983a9cecf6db95be7c305cf45fd090d41f9e3535dd245ffc0074a49d7359fe9eb4a0c21c1e78ae90f3785d172d8f0a115881b61ac7e387f092
7
- data.tar.gz: 8c115ff9f2ec2baf17333191e08bb451e3980a732c3c85b94dfc66cc5b8d4a344fdbf3acd5c543921e98cabdd77a45d8acd8e3ccc98f80307bbe803311195e06
6
+ metadata.gz: 63c3cc0eefeb79386904d68d0c265385b772178cb0be0a4590518e69f4358fd75e06c8037bd2fea296b6dd3a6b4f5990be42c21a9c0c3863f87166f9fff8b312
7
+ data.tar.gz: f3dd4b27a7be10068b1a15b770fb37b17c44995d72ffd1ce143828586c2e857369206c1fabb7e136f3351753221fbfde533e7566cbdca7d1ccf3a95ebbd4de13
data/README.md CHANGED
@@ -76,7 +76,7 @@ Add the following to your Capfile after requiring **capistrano** and **capistran
76
76
  Install locally on your system the capistrano_multiconfig_parallel gem using this command :
77
77
 
78
78
  ```ruby
79
- gem install capistrano_multiconfig_parallel -v 2.0.0.beta
79
+ gem install capistrano_multiconfig_parallel -v 2.0.0.beta1
80
80
  ```
81
81
 
82
82
  Please read [Release Details](https://github.com/bogdanRada/capistrano_multiconfig_parallel/releases) if you are upgrading. We break backward compatibility between large ticks but you can expect it to be specified at release notes.
@@ -29,7 +29,7 @@ Gem::Specification.new do |s|
29
29
  s.add_runtime_dependency 'configliere', '~> 0.4', '>=0.4'
30
30
  s.add_runtime_dependency 'inquirer', '~> 0.2', '>= 0.2'
31
31
  s.add_runtime_dependency 'devnull','~> 0.1', '>= 0.1'
32
- s.add_runtime_dependency 'capistrano_sentinel', '>= 0.0', '>= 0.0.14'
32
+ s.add_runtime_dependency 'capistrano_sentinel', '>= 0.0', '>= 0.0.16'
33
33
 
34
34
  s.add_development_dependency 'rake', '>= 10.4', '>= 10.4'
35
35
  s.add_development_dependency 'rspec', '~> 3.4', '>= 3.4'
@@ -220,6 +220,10 @@ module CapistranoMulticonfigParallel
220
220
  path: options.fetch('path', nil)
221
221
 
222
222
  ))
223
+
224
+ unless job.capistrano_sentinel_needs_updating?
225
+ raise "Please consider upgrading the gem #{job.capistrano_sentinel_name} to version #{job.loaded_capistrano_sentinel_version} from #{job.job_capistrano_sentinel_version} in #{job.job_path} "
226
+ end
223
227
  @jobs << job unless job_can_tag_staging?(job)
224
228
  end
225
229
 
@@ -8,16 +8,6 @@ module CapistranoMulticonfigParallel
8
8
  attr_reader :options, :application, :manager, :bundler_status
9
9
  attr_writer :status, :exit_status, :bundler_status
10
10
 
11
- delegate :job_stage,
12
- :capistrano_action,
13
- :execute_standard_deploy,
14
- :setup_command_line,
15
- :job_capistrano_version,
16
- :gem_specs,
17
- :job_stage_for_terminal,
18
- :rollback_changes_to_application,
19
- to: :command
20
-
21
11
  delegate :stderr_buffer,
22
12
  to: :manager
23
13
 
@@ -164,5 +154,14 @@ module CapistranoMulticonfigParallel
164
154
  end
165
155
  hash
166
156
  end
157
+
158
+ def method_missing(sym, *args, &block)
159
+ command.public_send(sym, *args, &block)
160
+ end
161
+
162
+ def respond_to_missing?(method_name, include_private = false)
163
+ command.public_methods.include?(method_name) || super
164
+ end
165
+
167
166
  end
168
167
  end
@@ -6,11 +6,12 @@ module CapistranoMulticonfigParallel
6
6
  include FileUtils
7
7
  include CapistranoMulticonfigParallel::ApplicationHelper
8
8
 
9
- attr_reader :job, :job_capistrano_version, :legacy_capistrano, :tempfile
9
+ attr_reader :job, :job_capistrano_version, :legacy_capistrano, :tempfile, :job_final_gemfile
10
10
  delegate :id, :app, :stage, :action, :task_arguments, :env_options, :path, to: :job
11
11
 
12
12
  def initialize(job)
13
13
  @job = job
14
+ @job_final_gemfile = job_gemfile_multi
14
15
  @legacy_capistrano = legacy_capistrano? ? true : false
15
16
  end
16
17
 
@@ -53,15 +54,23 @@ module CapistranoMulticonfigParallel
53
54
  gitflow_version.present? ? true : false
54
55
  end
55
56
 
56
- def request_handler_gem_name
57
+ def capistrano_sentinel_name
57
58
  "capistrano_sentinel"
58
59
  end
59
60
 
60
- def request_handler_gem_available?
61
- gitflow_version = job_gem_version(request_handler_gem_name)
61
+ def capistrano_sentinel_available?
62
+ gitflow_version = job_gem_version(capistrano_sentinel_name)
62
63
  gitflow_version.present? ? true : false
63
64
  end
64
65
 
66
+ def loaded_capistrano_sentinel_version
67
+ find_loaded_gem_property(capistrano_sentinel_name)
68
+ end
69
+
70
+ def job_capistrano_sentinel_version
71
+ job_gem_version(capistrano_sentinel_name)
72
+ end
73
+
65
74
  def job_stage_for_terminal
66
75
  app.present? ? "#{app}:#{stage}" : "#{stage}"
67
76
  end
@@ -106,6 +115,15 @@ module CapistranoMulticonfigParallel
106
115
  verify_gem_version(job_capistrano_version, '3.0', operator: '<')
107
116
  end
108
117
 
118
+ def capistrano_sentinel_needs_updating?
119
+ if capistrano_sentinel_available?
120
+ loaded_capistrano_sentinel_version == job_capistrano_sentinel_version
121
+ else
122
+ # the capistrano_sentinel is not part of the Gemfile so no need checking if needs updating
123
+ true
124
+ end
125
+ end
126
+
109
127
  def job_path
110
128
  path || detect_root
111
129
  end
@@ -158,7 +176,7 @@ module CapistranoMulticonfigParallel
158
176
  def fetch_deploy_command
159
177
  # config_flags = CapistranoMulticonfigParallel.configuration_flags.merge("capistrano_version": job_capistrano_version)
160
178
  environment_options = setup_command_line.join(' ')
161
- command = "#{check_rvm_loaded} && if [ `which bundler |wc -l` = 0 ]; then gem install bundler;fi && (#{bundle_gemfile_env(job_gemfile_multi)} bundle check || #{bundle_gemfile_env(job_gemfile_multi)} bundle install ) && WEBSOCKET_LOGGING=#{debug_websocket?} LOG_FILE=#{websocket_config.fetch('log_file_path', nil)} #{bundle_gemfile_env(job_gemfile_multi)} bundle exec cap #{job_stage} #{capistrano_action} #{environment_options}"
179
+ command = "#{check_rvm_loaded} && if [ `which bundler |wc -l` = 0 ]; then gem install bundler;fi && (#{bundle_gemfile_env(@job_final_gemfile)} bundle check || #{bundle_gemfile_env(@job_final_gemfile)} bundle install ) && WEBSOCKET_LOGGING=#{debug_websocket?} LOG_FILE=#{websocket_config.fetch('log_file_path', nil)} #{bundle_gemfile_env(@job_final_gemfile)} bundle exec cap #{job_stage} #{capistrano_action} #{environment_options}"
162
180
 
163
181
  command = "bash --login -c '#{command}'" if rvm_enabled_for_job?
164
182
  command = command.inspect
@@ -193,22 +211,22 @@ module CapistranoMulticonfigParallel
193
211
  end
194
212
 
195
213
  def prepare_application_for_deployment
196
- check_handler_available
214
+ check_capistrano_sentinel_availability
197
215
  prepare_capfile
198
216
  end
199
217
 
200
- def check_handler_available
201
- # '#{find_loaded_gem_property(request_handler_gem_name)}'
218
+ def check_capistrano_sentinel_availability
219
+ # '#{find_loaded_gem_property(capistrano_sentinel_name)}'
202
220
  # path: '/home/raul/workspace/github/capistrano_sentinel'
203
221
  FileUtils.rm_rf(job_gemfile_multi) if File.exists?(job_gemfile_multi)
204
222
  FileUtils.touch(job_gemfile_multi)
205
- if request_handler_gem_available?
206
- FileUtils.copy(File.join(job_path, 'Gemfile'), job_gemfile_multi)
223
+ if capistrano_sentinel_available? && capistrano_sentinel_needs_updating?
224
+ @job_final_gemfile = job_gemfile
207
225
  else
208
226
  File.open(job_gemfile_multi, 'w') do |f|
209
227
  cmd=<<-CMD
210
228
  source "https://rubygems.org" do
211
- gem "#{request_handler_gem_name}", '#{find_loaded_gem_property(request_handler_gem_name)}'
229
+ gem "#{capistrano_sentinel_name}", '#{find_loaded_gem_property(capistrano_sentinel_name)}'
212
230
  end
213
231
  instance_eval(File.read(File.dirname(__FILE__) + "/Gemfile"))
214
232
  CMD
@@ -219,10 +237,10 @@ module CapistranoMulticonfigParallel
219
237
  end
220
238
 
221
239
  def prepare_capfile
222
- return if File.foreach(job_capfile).grep(/#{request_handler_gem_name}/).any?
240
+ return if File.foreach(job_capfile).grep(/#{capistrano_sentinel_name}/).any?
223
241
  File.open(job_capfile, 'a+') do |f|
224
242
  cmd=<<-CMD
225
- require "#{request_handler_gem_name}"
243
+ require "#{capistrano_sentinel_name}"
226
244
  CMD
227
245
  f.write(cmd)
228
246
  end
@@ -232,11 +250,11 @@ module CapistranoMulticonfigParallel
232
250
  def rollback_changes_to_application
233
251
  FileUtils.rm_rf(job_gemfile_multi)
234
252
  FileUtils.rm_rf("#{job_gemfile_multi}.lock")
235
- unless request_handler_gem_available?
253
+ unless capistrano_sentinel_available?
236
254
  File.open(job_capfile, 'r') do |f|
237
255
  File.open("#{job_capfile}.tmp", 'w') do |f2|
238
256
  f.each_line do |line|
239
- f2.write(line) unless line.include?(request_handler_gem_name)
257
+ f2.write(line) unless line.include?(capistrano_sentinel_name)
240
258
  end
241
259
  end
242
260
  end
@@ -5,7 +5,7 @@ module CapistranoMulticonfigParallel
5
5
 
6
6
  def find_loaded_gem(name, property = nil)
7
7
  gem_spec = Gem.loaded_specs.values.find { |repo| repo.name == name }
8
- gem_spec.present? && property.present? ? gem_spec.send(property) : gem_spec
8
+ gem_spec.present? && property.present? ? gem_spec.send(property).to_s : gem_spec
9
9
  end
10
10
 
11
11
  def find_loaded_gem_property(gem_name, property = 'version')
@@ -10,7 +10,7 @@ module CapistranoMulticonfigParallel
10
10
  MAJOR = 2
11
11
  MINOR = 0
12
12
  TINY = 0
13
- PRE = 'beta1'
13
+ PRE = 'beta2'
14
14
 
15
15
  STRING = [MAJOR, MINOR, TINY, PRE].compact.join('.')
16
16
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capistrano_multiconfig_parallel
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0.beta1
4
+ version: 2.0.0.beta2
5
5
  platform: ruby
6
6
  authors:
7
7
  - bogdanRada
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-07-13 00:00:00.000000000 Z
11
+ date: 2016-07-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: celluloid
@@ -247,7 +247,7 @@ dependencies:
247
247
  version: '0.0'
248
248
  - - ">="
249
249
  - !ruby/object:Gem::Version
250
- version: 0.0.14
250
+ version: 0.0.16
251
251
  type: :runtime
252
252
  prerelease: false
253
253
  version_requirements: !ruby/object:Gem::Requirement
@@ -257,7 +257,7 @@ dependencies:
257
257
  version: '0.0'
258
258
  - - ">="
259
259
  - !ruby/object:Gem::Version
260
- version: 0.0.14
260
+ version: 0.0.16
261
261
  - !ruby/object:Gem::Dependency
262
262
  name: rake
263
263
  requirement: !ruby/object:Gem::Requirement
@@ -527,7 +527,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
527
527
  version: 1.3.1
528
528
  requirements: []
529
529
  rubyforge_project:
530
- rubygems_version: 2.4.8
530
+ rubygems_version: 2.5.1
531
531
  signing_key:
532
532
  specification_version: 4
533
533
  summary: CapistranoMulticonfigParallel is a simple ruby implementation that allows