我正在使用Capistrano 3。
当部署失败时,我想触发对外部服务的webhook。
这是一个我已经定义的方法的问题,让我们说它被称为mark_failed
。
如何确保在部署失败时始终调用该方法,无论出于何种原因,除非通过CTRL + C中止?
试图摆弄
rescue SystemExit, Interrupt
和rescue StandardError
我不清楚将方法调用放在何处可靠地调用它。
任何线索?
答案 0 :(得分:2)
我建议使用at_exit
。
at_exit do
mark_failed if $!
end
raise "Something is wrong!"