在我的deploy.rb中,我有:
set :default_env, -> { {
PATH: "some/path/to/stuff"
} }
我也有两台服务器:
server 'hostname1', roles: %{web app}, primary: true
server 'hostname2', roles: %{db}, no_release: true
对于在hostname2上运行的命令,我想使用其他default_env
,这可能吗?
task :my_task do
on roles :db do
# do work
end
end
答案 0 :(得分:2)
没有一种直接使用不同的default_env
的方法,但是您可以重写其键值对。
您应该尝试这种方式:
task :my_task do
on roles :db do
with PATH: "/var/www/subdirectory" do
# do work
end
end
end
答案 1 :(得分:0)
您可以创建一个rake以根据环境设置不同的路径,然后使用默认环境作为参数运行rake
任务:setup,:roles =>:db do
运行“ rake developer:setup default_evironment =#{rails_env}”
结束