Deploy:capistrano 上的符号链接将“当前”目录指向以前的版本

2023-12-29

我正在使用 capistrano 部署我的 Ruby on Rails 项目。我使用的是 Dreamhost VPS,从几周前开始,在 capistrano 或乘客没有任何变化的情况下,我开始在部署中遇到一个奇怪的问题:

每次 capistrano 部署我的应用程序时,除了部署:符号链接(默认情况下调用)之外,一切都正常,它应该将“当前”目录指向最新版本。尽管新版本已正确部署到“releases”目录,但问题是“当前”符号链接始终设置为先前版本而不是新版本。所以我可以部署应用程序,但我总是必须连续运行部署两次。

您可以在此处查看 capistrano 日志:http://img715.imageshack.us/img715/7803/capistranoproblem.png http://img715.imageshack.us/img715/7803/capistranoproblemb.png

有其他人以前经历过这个问题或者可以帮助我解决这个问题吗?

Thanks!


我通过一个额外的部署任务解决了这个问题,该任务使用不同的内部变量名称和最新版本的正确路径(release_path而不是latest_path或类似的东西)重新创建符号链接。


namespace :deploy do
  desc "Recreate symlink"
  task :resymlink, :roles => :app do
    run "rm -f #{current_path} && ln -s #{release_path} #{current_path}"
  end
end

after "deploy:create_symlink", "deploy:resymlink", "deploy:update_crontab"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Deploy:capistrano 上的符号链接将“当前”目录指向以前的版本 的相关文章

随机推荐

  • webkit translateX 动画正在回滚到初始位置

    我正在尝试为移动 webkit 制作一个图片库 实际上足够快的唯一方法是使用硬件加速的translateX 我的问题是 div 在动画结束时收回其初始位置 我在左侧按钮上添加了 SlideGalLeft 类 到动画 div 您可以在此处的回
  • D3.js 使用嵌套数组从 tsv 迁移到 json

    我正在通过遵循教程并尝试阅读可用的示例来学习 d3 js 感谢迈克 在这个例子中 http bl ocks org mbostock 3884955 http bl ocks org mbostock 3884955 我无法理解如何从 ts
  • RxJava2 发布

    有什么区别 ObservableTransformer Observable merge it ofType x compose transformerherex it ofType y compose transformerherey a
  • FreeMarker 模板错误!在struts2中

    我在类中使用基于 Sturts 2 注释的验证 同时显示操作错误 我收到了这个奇怪的 FreeMarker 模板错误 这是我的实体类 Entity public class User implements Serializable priv
  • 如何使用 QEMU 模拟 vmx 功能?

    我读自here https www kernel org doc Documentation virtual kvm nested vmx txt必须通过向命令提供 vmx 选项来显式启用 QEMU 上的 vmx 功能支持 但问题是它似乎不
  • 使用 AllPermission 启用 Java SecurityManager

    我正在努力让自己熟悉SecurityManager但即使是这个简单的场景也失败了 当我从 IDE 内部或命令行运行以下命令时 我得到以下信息例外 https docs oracle com cd E19226 01 820 7699 abg
  • 无法使用 Python3 模块请求 POST 到 Grafana

    我正在尝试使用 Grafana 的后端 API 创建一个仪表板 我首先测试我的 API 令牌是否是使用 GET 设置的 并成功获得返回码 200 如下所示 然后 我尝试使用 POST 创建一个简单的仪表板 但我不断收到返回码 400 我很确
  • 表行划分

    好吧 我的应用程序有一个包含很多表格行的表格布局 但我如何在它们之间进行划分 例如 一个表格行 之后是一行 之后是另一个表格行 依此类推 有一些财产吗 Android 3 0 及更高版本中有此功能 在你的表格布局上 android divi
  • 单元测试方法中是否需要总结

    既然单元测试方法的命名使其目的更有意义 那么单元测试方法是否有必要添加摘要呢 Example
  • 如何将Python字典对象转换为numpy数组

    我有 python dict 对象 其键作为 datetime date 对象 值作为元组对象 gt gt gt data dict datetime date 2006 1 1 5 3 datetime date 2006 1 2 8 8
  • Slim + Twig - 如何在开发过程中关闭 Twig 缓存?

    这是我将其注入 Slim 容器中的树枝视图 Views and Templates https www slimframework com docs features templates html container view functi
  • PHP:包含和需要文件时抛出错误

    我尝试创建一个引导文件 但是每当我尝试在另一个文件中包含或需要它时 就会不断出现这样的错误 Warning require once folder file php function require once 无法打开流 没有这样的文件或目
  • 快速获取特定路径下的所有文件和目录

    我正在创建一个备份应用程序 其中 c 扫描目录 在我使用类似的方法来获取目录中的所有文件和子文件之前 DirectoryInfo di new DirectoryInfo A var directories di GetFiles Sear
  • 如何通过只输入一个EOF来结束scanf

    我遇到了这个问题 我正在使用 while 循环来扫描数字字符串 需要结束扫描并开始继续程序的其余部分 我只是不知道如何刷新标准输入或做任何事情而不按 Ctrl D 两次 我只需要发送 EOF 一次来告诉我的循环结束 while feof s
  • 仅在弹性项目内阻止元素?

    显然 弹性项目容器内只能有块元素 内联 内联块 浮动没有任何作用 这很奇怪 除非我做得完全错误 否则似乎没什么用 这是笔 http codepen io iaezzy pen GggVxe http codepen io iaezzy pe
  • vim diff 可以使用耐心算法吗?

    有没有办法将vimdiff的diff策略设置为耐心算法 它内置于 git 中 似乎比普通的 diff 好得多 以供参考 如何将耐心设置为默认的 git diff 算法 https stackoverflow com questions 44
  • 转到 Google 表格中的最后一行数据

    我查了一下 发现以下代码将前进到 Google 电子表格中数据的最后一行 至少在我们添加第 297 行之外的更多行之前是这样 function myFunction var ss SpreadsheetApp getActiveSpread
  • 在父元素中使用 jQuery 获取数据属性的值

    我有以下 HTML 代码 其中onclick of spot info我想得到的值data test div class spot div class spot main span Test span a href class spot i
  • 解析 XML HttpResponse

    我正在尝试解析从 HttpPost 到服务器 last fm 的 XML HttpResponse 用于 last fm android 应用程序 如果我简单地将它解析为字符串 我可以看到它是一个普通的 xml 字符串 包含所有所需的信息
  • Deploy:capistrano 上的符号链接将“当前”目录指向以前的版本

    我正在使用 capistrano 部署我的 Ruby on Rails 项目 我使用的是 Dreamhost VPS 从几周前开始 在 capistrano 或乘客没有任何变化的情况下 我开始在部署中遇到一个奇怪的问题 每次 capistr