【发布时间】:2025-12-26 19:40:07
【问题描述】:
问题是我想从控制台获取我的 Capistrano 食谱的参数,所以在查看 Google 之后,我想出了这个:
task :set_repo do
set :repository, "git@github.com:#{configuration[:repo]}/MyApp.git"
set :scm_user, configuration[:repo]
end
在尝试运行任务时,我遇到了配置散列的“method missing”错误。在谷歌上再次搜索后,我发现我必须从 Capistrano 加载配置,所以我添加了这段代码:
configuration = Capistrano::Configuration.respond_to?(:instance) ?
Capistrano::Configuration.instance(true) :
Capistrano.configuration(:must_exist)
但这会引发 LoadError 并显示消息“请从 Capistrano 配方中获取此文件”。我试过要求 capistrano/configuration 模块,但我一直收到同样的错误。
非常感谢任何帮助。
【问题讨论】: