Communicate the readiness delay
This commit is contained in:
@@ -5,6 +5,8 @@ class Mrsk::Cli::App < Mrsk::Cli::Base
|
||||
using_version(options[:version] || most_recent_version_available) do |version|
|
||||
say "Start container with version #{version} (or reboot if already running)...", :magenta
|
||||
|
||||
cli = self
|
||||
|
||||
MRSK.config.roles.each do |role|
|
||||
on(role.hosts) do |host|
|
||||
execute *MRSK.auditor.record("Booted app version #{version}"), verbosity: :debug
|
||||
@@ -12,7 +14,10 @@ class Mrsk::Cli::App < Mrsk::Cli::Base
|
||||
begin
|
||||
old_version = capture_with_info(*MRSK.app.current_running_version).strip
|
||||
execute *MRSK.app.run(role: role.name)
|
||||
|
||||
cli.say "Waiting #{MRSK.config.readiness_delay}s for app to boot...", :magenta
|
||||
sleep MRSK.config.readiness_delay
|
||||
|
||||
execute *MRSK.app.stop(version: old_version), raise_on_non_zero_exit: false if old_version.present?
|
||||
|
||||
rescue SSHKit::Command::Failed => e
|
||||
|
||||
@@ -57,11 +57,16 @@ class Mrsk::Cli::Main < Mrsk::Cli::Base
|
||||
if container_name_available?(MRSK.config.service_with_version)
|
||||
say "Start version #{version}, then stop the old version...", :magenta
|
||||
|
||||
cli = self
|
||||
|
||||
on(MRSK.hosts) do |host|
|
||||
old_version = capture_with_info(*MRSK.app.current_running_version).strip.presence
|
||||
|
||||
execute *MRSK.app.start
|
||||
|
||||
cli.say "Waiting #{MRSK.config.readiness_delay}s for app to start...", :magenta
|
||||
sleep MRSK.config.readiness_delay
|
||||
|
||||
execute *MRSK.app.stop(version: old_version), raise_on_non_zero_exit: false
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user