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