加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails-3 – 使用资产前缀时,由于缺少清单文件,Capistran

发布时间:2020-12-16 19:25:15 所属栏目:百科 来源:网络整理
导读:我刚刚为我们的应用程序设置了Capistrano部署,并且我一直遇到这个错误: * executing ["ls /path/to/app/shared/assets/manifest*"] servers: ["web03"] [web03] executing command[err :: web03] ls: /path/to/app/shared/assets/manifest*[err :: web03] :
我刚刚为我们的应用程序设置了Capistrano部署,并且我一直遇到这个错误:
* executing ["ls /path/to/app/shared/assets/manifest*"]
    servers: ["web03"]
    [web03] executing command
[err :: web03] ls: /path/to/app/shared/assets/manifest*
[err :: web03] : No such file or directory

如果我使用touch /path/to/app/shared/assets/manifest.yml手动创建清单文件,则部署脚本可以正常工作.然而,这感觉各种各样的粗略.

我已经用Google搜索了这一点,我能收集到的最多的是它正在寻找的清单文件是资产管道的产品.我检查过,事实上,我已经启用了管道(config.assets.enabled = true),所以我很茫然.

有人可以帮我理解1)这个清单文件是什么以及它是如何创建的; 2)为什么没有为我的应用程序创建一个?

更新:我想我正在接近答案,我认为这与这一行有关:

config.assets.prefix = "/some_other_path"

我们需要重命名“资产”路径,因为我们的系统中有Asset对象,我猜Cap可能会因此而感到困惑.有什么建议?

解决方法

我的怀疑是正确的:这是重命名的资产目录的问题. Cap不知道要查看public / some_other_path而不是public / assets.

换句话说,因为这行是在我的application.rb中:

config.assets.prefix = "some_other_path"

我不得不将此行添加到我的deploy.rb:

set :assets_prefix,"some_other_path"

然后,Cap知道在哪里查找清单,将其复制到共享/资产中,并正确完成.

使用deploy.rb引用config变量而不必再次对路径进行硬编码是很方便的,但这超出了这个问题的范围.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读