summaryrefslogtreecommitdiff
path: root/templates
diff options
context:
space:
mode:
authorEugene Kirpichov <ekirpichov@gmail.com>2012-11-06 19:08:44 +0400
committerEugene Kirpichov <ekirpichov@gmail.com>2012-11-06 19:09:12 +0400
commit3624b0b5f6a18d000ef3b7723f10579d448a4063 (patch)
tree2f1863604dc90c5428d602a83e9400405333b450 /templates
parent161f257017f4bc51e08bcc6fa2f29c0674b5ce0e (diff)
Listen on multiple virtual IP addresses
Diffstat (limited to 'templates')
-rw-r--r--templates/haproxy_listen_block.erb6
1 files changed, 4 insertions, 2 deletions
diff --git a/templates/haproxy_listen_block.erb b/templates/haproxy_listen_block.erb
index 12f55f6..8b3767f 100644
--- a/templates/haproxy_listen_block.erb
+++ b/templates/haproxy_listen_block.erb
@@ -1,5 +1,7 @@
-
-listen <%= name %> <%= ipaddress %>:<%= Array(ports).collect { |x| x.split(',')}.flatten.join(",#{ipaddress}:") %>
+listen <%= name %>
+<% Array(ipaddress).uniq.each do |virtual_ip| (ports.is_a?(Array) ? ports : Array(ports.split(","))).each do |port| %>
+ bind <%= virtual_ip %>:<%= port %>
+<% end end %>
<% options.sort.each do |key, val| -%>
<% if val.is_a?(Array) -%>
<% val.each do |item| -%>