Merge pull request #244 from basecamp/get-lock-status-without-invoke

This commit is contained in:
David Heinemeier Hansson
2023-04-25 18:57:05 +02:00
committed by GitHub
2 changed files with 3 additions and 2 deletions

View File

@@ -105,7 +105,7 @@ module Mrsk::Cli
MRSK.holding_lock = true
rescue SSHKit::Runner::ExecuteError => e
if e.message =~ /cannot create directory/
invoke "mrsk:cli:lock:status", []
on(MRSK.primary_host) { execute *MRSK.lock.status }
raise LockError, "Deploy lock found"
else
raise e

View File

@@ -64,7 +64,8 @@ class CliMainTest < CliTestCase
.with { |*arg| arg[0..1] == [:mkdir, :mrsk_lock] }
.raises(RuntimeError, "mkdir: cannot create directory mrsk_lock: File exists")
Mrsk::Cli::Base.any_instance.expects(:invoke).with("mrsk:cli:lock:status", [])
SSHKit::Backend::Abstract.any_instance.expects(:execute)
.with(:stat, :mrsk_lock, ">", "/dev/null", "&&", :cat, "mrsk_lock/details", "|", :base64, "-d")
assert_raises(Mrsk::Cli::LockError) do
run_command("deploy")