From c27f13fab296765705a4b14c6aa8808cba47a71f Mon Sep 17 00:00:00 2001 From: Gabe Berke-Williams Date: Fri, 7 Oct 2011 13:54:22 -0400 Subject: [PATCH] Print error if something goes wrong in deploy. --- lib/kumade/deployer.rb | 3 ++- spec/kumade/deployer_spec.rb | 14 ++++++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/lib/kumade/deployer.rb b/lib/kumade/deployer.rb index 1d119dd..e7ff24c 100644 --- a/lib/kumade/deployer.rb +++ b/lib/kumade/deployer.rb @@ -18,7 +18,8 @@ def deploy pre_deploy heroku.sync heroku.migrate_database - rescue + rescue => deploying_error + Kumade.outputter.error("#{deploying_error.class}: #{deploying_error.message}") ensure post_deploy end diff --git a/spec/kumade/deployer_spec.rb b/spec/kumade/deployer_spec.rb index 84f8057..055cf29 100644 --- a/spec/kumade/deployer_spec.rb +++ b/spec/kumade/deployer_spec.rb @@ -28,12 +28,18 @@ subject.deploy end - it "calls post_deploy if deploy fails" do - subject.git.stubs(:heroku_remote?).raises(RuntimeError) + context "if deploy fails" do + before { subject.git.stubs(:heroku_remote?).raises(RuntimeError.new("fun times")) } - subject.expects(:post_deploy) + it "calls post_deploy" do + subject.expects(:post_deploy) + subject.deploy + end - subject.deploy + it "prints the error" do + subject.deploy + Kumade.outputter.should have_received(:error).with("RuntimeError: fun times") + end end end