[英]Capistrano 3: use server custom variable in task
我有多階段多服務器設置,在我的任務中我需要使用服務器名稱,例如在stagin.rb我有:
set :stage, :staging
# Define servers
server 'xxx.xx.xx.xxx', user: 'deploy', roles: %w{app}, name: 'app1'
server 'xxx.xx.xx.yyy', user: 'deploy', roles: %w{app}, name: 'app2'
我想在我的任務中使用“name”變量:
task :configure do
on roles(:app), in: :parallel do
# how do I get server name here?
end
end
如果要返回主機名/ IP,那么它將是
task :configure do
on roles(:app), in: :parallel do |server|
p server.hostname # server hostname should be in here
end
end
如果要訪問自定義屬性,例如:name
在此特定情況下的:name
,它們存儲在server
配置對象的properties
哈希中:只使用server.properties.name
而不是server.hostname
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.