目前,我们的应用程序运行有时会失败,因为我们的gitserver是非常不负责任的。
begin
repository = Git.clone(remote_repo,deploy_script_root, { })
...
rescue Exception => e
log.error e
raise "Could not export deploy scripts: #{e.message}"
end
错误:无法连接到gitserver:80;访问http://gitserver时正在进行操作
我想知道如何让ruby多次重试这个命令以避免中断我们的运行。
最佳答案
使用retry
begin
retries ||= 0
repository = Git.clone(remote_repo,deploy_script_root, { })
...
rescue Exception => e
log.error e
retries += 1
retry if (retries <= 5)
raise "Could not export deploy scripts: #{e.message}"
end