使用capistrano处理共享文件的常用工作流程是什么?

时间:2015-08-11 11:32:19

标签: ruby database capistrano

我的.csv会在每个版本上重新创建,并且据我所知,要在部署之间保持数据不变,我需要将其放在/shared目录中并从deploy.rb simlink链接到它。
这是正确的路线吗? (我有这个问题,因为出于某种原因,我似乎没有找到关于如何对数据库执行此操作的更多信息。/shared目录主要用于.conf文件和回形针类目录。)

1 个答案:

答案 0 :(得分:1)

使用capistrano时,您的应用程序代码将被"上传"到服务器上的某个目录。 Capistrano使用这种结构: / path_to_folder:
  current - 使用当前版本的目录的符号链接
  发布 - 包含所有保留的发布版本   共享 - 应在发布之间保留的文件

所以对于你的问题 - 将.csv文件复制到某个地方" shared"目录然后在config / deploy.rb中添加:

namespace :deploy do
  task :create_symlinks do
    run "ln -s #{shared_path}/something.csv #{latest_release}/db/something.csv"
  end
end

after 'deploy:update_code', 'deploy:create_symlinks'

替换"某事"使用您复制的文件名。您还可以将csv文件放在" shared"下的某个目录中。如果你愿意,我会使用" db"在这种情况下。如果您这样做,请不要忘记更新符号链接中的路径。