Ruby on rails 卡皮斯特拉诺+;无论何时+;未找到db database.yml
我正在尝试使用0.8.4和Ruby 2.0.0运行Capistrano 2.15.5 我补充说Ruby on rails 卡皮斯特拉诺+;无论何时+;未找到db database.yml,ruby-on-rails,ruby,deployment,capistrano,whenever,Ruby On Rails,Ruby,Deployment,Capistrano,Whenever,我正在尝试使用0.8.4和Ruby 2.0.0运行Capistrano 2.15.5 我补充说 set :whenever_command, "bundle exec whenever" require "whenever/capistrano" 在我的部署.rb文件的末尾,它始终运行: /releases/20150910075216 && bundle exec whenever --update-crontab app_name --set environment=pr
set :whenever_command, "bundle exec whenever"
require "whenever/capistrano"
在我的部署.rb文件的末尾,它始终运行:
/releases/20150910075216 && bundle exec whenever --update-crontab
app_name --set environment=production --roles db
而且失败了
No such file or directory -
/releases/20150910075216/config/database.yml
因为database.yml在文件夹/shared/中,所以我不需要数据库-
如何摆脱capistrano命令中的角色db?
我有
server("my_server", :app, :web, :db, :primary => true)
因为对于其他脚本,我需要:db
谢谢你的帮助
David您应该在
capistrano 3
的deploy.rb
中设置linked\u文件Symlink链接文件database.yml
set :linked_files, fetch(:linked_files, []).push('config/database.yml')
或者,对于旧版本,您可以手动执行符号链接
desc "Make symlink for database yml"
task :symlink do
run "ln -nfs #{shared_path}/config/database.yml #{release_path}/config/database.yml"
end
您应该在deploy.rb
中为capistrano 3
设置symlinked filesdatabase.yml
set :linked_files, fetch(:linked_files, []).push('config/database.yml')
或者,对于旧版本,您可以手动执行符号链接
desc "Make symlink for database yml"
task :symlink do
run "ln -nfs #{shared_path}/config/database.yml #{release_path}/config/database.yml"
end
你好@David为你添加自定义任务,你可以试试这个。您可以在部署后在处使用此功能。您好@David为您添加自定义任务,您可以尝试此功能。您可以在部署后在处使用此钩子。