我有多级多服务器设置,在我的任务我需要使用服务器
名称
例如在stagin.rb我有:
- set :stage,:staging
- # Define servers
- server 'xxx.xx.xx.xxx',user: 'deploy',roles: %w{app},name: 'app1'
- server 'xxx.xx.xx.yyy',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
如果要访问自定义属性,例如:在这种特殊情况下的名称,它们存储在服务器配置对象的属性哈希中:只需使用server.properties.name而不是server.hostname.