Ruby Capistrano 3:从角色获取服务器信息

Ruby Capistrano 3:从角色获取服务器信息,ruby,rake,capistrano,capistrano3,Ruby,Rake,Capistrano,Capistrano3,是否可以访问角色的主机名和用户,而无需在上使用,这样我就不必将任务嵌套在下面了 task :foo do on roles(:web) do |host| run_locally do execute :rsync, '-avzr', "/foobar", "#{host.user}@#{host.hostname}:/foobar" end end end 使用Uri Agassi建议使用每个解决: task :foo

是否可以访问角色的
主机名
用户
,而无需在上使用
,这样我就不必将任务嵌套在下面了

task :foo do
    on roles(:web) do |host|
        run_locally do
            execute :rsync, '-avzr', "/foobar", "#{host.user}@#{host.hostname}:/foobar"
        end
    end
end

使用Uri Agassi建议使用
每个
解决:

task :foo do
    run_locally do
        roles(:web).each do |host|
            execute :rsync, '-avzr', "/foobar", "#{host.user}@#{host.hostname}:/foobar"
        end
    end
end

使用Uri Agassi建议使用
每个
解决:

task :foo do
    run_locally do
        roles(:web).each do |host|
            execute :rsync, '-avzr', "/foobar", "#{host.user}@#{host.hostname}:/foobar"
        end
    end
end

你有没有试过简单地调用
角色(:web)。每个|主机|
?我是Ruby的新手,你能给我举个例子吗?
角色(:web)。每个do |主机| exectue:rsync…
谢谢,工作得很好!你有没有试过简单地调用
角色(:web)。每个|主机|
?我是Ruby的新手,你能给我举个例子吗?
角色(:web)。每个do |主机| exectue:rsync…
谢谢,工作得很好!