使用 Capistrano 部署 .env 文件
Deploying .env file with Capistrano
我想在使用 Capistrano 部署时将 .env
文件从本地计算机上传到我的远程计算机,但由于我不是 Ruby 专业人士,所以我没有得到我想要的结果。我想要做的是获取我的本地 .env
并使其在 shared_path
中的远程计算机上可用。之后,只需将其与 current_path
进行符号链接即可。
namespace :env do
desc "We take local env and set up on remote"
task :setup do
on roles(:app), in: :sequence, wait: 5 do
puts File.read(".env"), "#{shared_path}/config/.env"
execute "ln -nfs #{shared_path}/config/.env #{current_path}/.env"
end
end
end
现在这段代码将 .env 创建为一个空文件。我做错了什么?或者我应该只执行 rsync
或使用 Capistrano 来实现我想要的东西?
我认为 puts
不会在那里工作。
试试 capistrano 的 upload method。
upload(from, to, options={}, &block)
我想在使用 Capistrano 部署时将 .env
文件从本地计算机上传到我的远程计算机,但由于我不是 Ruby 专业人士,所以我没有得到我想要的结果。我想要做的是获取我的本地 .env
并使其在 shared_path
中的远程计算机上可用。之后,只需将其与 current_path
进行符号链接即可。
namespace :env do
desc "We take local env and set up on remote"
task :setup do
on roles(:app), in: :sequence, wait: 5 do
puts File.read(".env"), "#{shared_path}/config/.env"
execute "ln -nfs #{shared_path}/config/.env #{current_path}/.env"
end
end
end
现在这段代码将 .env 创建为一个空文件。我做错了什么?或者我应该只执行 rsync
或使用 Capistrano 来实现我想要的东西?
我认为 puts
不会在那里工作。
试试 capistrano 的 upload method。
upload(from, to, options={}, &block)