gpt4 book ai didi

ruby-on-rails - 如何使用 Capistrano 3 部署而不是符号链接(symbolic link)/重新启动?

转载 作者:行者123 更新时间:2023-12-04 03:10:34 25 4
gpt4 key购买 nike

Capistrano v2 有两个有用的任务:cap deploy:update_code将对新的 releases/ 进行全面部署目录,但不更改 current符号链接(symbolic link)或启动/重新启动服务器(因此服务器继续运行当前版本而不会中断)。和cap deploy:update做了同样的事情加上改变current符号链接(symbolic link),但没有启动/重新启动服务器。这些对于摆脱问题很有用,例如在进行实际部署之前进行 Assets 编译。

这两个“更新”任务在 Capistrano v3 中消失了。有没有一种等效的方法可以在不更改 current 的情况下进行完整部署?符号链接(symbolic link)或重新启动服务器?

最佳答案

一个自定义任务列表应该这样做:

task :deploy_without_symlink do
set(:deploying, true)
%w{ starting started
updating updated }.each do |task|
invoke "deploy:#{task}"
end
end

您可以在这里查看代码: https://github.com/capistrano/capistrano/blob/master/lib/capistrano/tasks/framework.rake#L58查看什么部署触发器。以及根据 https://github.com/capistrano/capistrano/blob/master/lib/capistrano/tasks/deploy.rake#L38 的发布任务是什么改变了符号链接(symbolic link)。因此,通过省略之后的所有内容,您将获得所需的内容。

关于ruby-on-rails - 如何使用 Capistrano 3 部署而不是符号链接(symbolic link)/重新启动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45618294/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com