如何在失败时回滚 capistrano 任务?

发布于 2024-08-25 12:38:00 字数 225 浏览 9 评论 0原文

在我的 Capistrano deploy.rb 中,我有几个守护进程,例如 Delayed_jobs 和 fetcher,根据它们在部署过程中的位置启动和停止。

如果部署失败,此方法会产生问题,因为守护进程无法得到正确管理(即生成两个进程而不是一个,或者进程被关闭而没有重新启动,直到下一次部署为止)。

有没有办法像回滚代码一样防止这种情况发生?通常如何通过 Capistrano 完成守护进程的部署?

In my Capistrano deploy.rb, I have a couple of daemons like delayed_jobs and fetcher, starting and stopping depending on where they are in the deployment process.

This method would create problems if a deployment fails, because the daemons wouldn't be managed properly (ie. two processes spawned instead of one, or processes were shutdown without restarting itself until the next deployment).

Is there anyway to prevent this from happening like a rollback code? How is deployment of daemons normally done over capistrano?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一生独一 2024-09-01 12:38:00

Capistrano allows you to define an on_rollback hook for each task. You can also group tasks in a Transaction to rollback all tasks if one of them fails. See the Capistrano wiki for more details.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文