{ssl, [{versions, [<%= @ssl_versions.sort.map { |v| "'#{v}'" }.join(', ') %>]}]},
<%- end -%>
{rabbit, [
-<% if @ldap_auth -%>
+<%- if @heartbeat -%>
+ {heartbeat, <%=@heartbeat%>},
+<% end -%>
+<% if @auth_backends -%>
+ {auth_backends, [<%= @auth_backends.map { |v| "#{v}" }.join(', ') %>]},
+<% elsif @ldap_auth -%>
{auth_backends, [rabbit_auth_backend_internal, rabbit_auth_backend_ldap]},
<% end -%>
<% if @config_cluster -%>
{cluster_nodes, {[<%= @cluster_nodes.map { |n| "\'rabbit@#{n}\'" }.join(', ') %>], <%= @cluster_node_type %>}},
{cluster_partition_handling, <%= @cluster_partition_handling %>},
<% end -%>
-<%- if @tcp_keepalive -%>
- {tcp_listen_options, [{keepalive, true}]},
+ {tcp_listen_options, [
+ <%- unless @config_ranch -%>
+ binary,
+ {packet, raw},
+ {reuseaddr, true},
+ <%- end -%>
+ <%- if @tcp_keepalive -%>
+ {keepalive, true},
+ <%- end -%>
+ <%- if @tcp_backlog -%>
+ {backlog, <%= @tcp_backlog %>},
+ <%- end -%>
+ <%- if @tcp_sndbuf -%>
+ {sndbuf, <%= @tcp_sndbuf %>},
+ <%- end -%>
+ <%- if @tcp_recbuf -%>
+ {recbuf, <%= @tcp_recbuf %>},
+ <%- end -%>
+ {nodelay, true},
+ {linger, {true, 0}},
+ {exit_on_close, false}
+ ]},
+<%- if @collect_statistics_interval -%>
+ {collect_statistics_interval, <%= @collect_statistics_interval %>},
<%- end -%>
<%- if @ssl_only -%>
{tcp_listeners, []},
-<%- elsif @interface != 'UNSET' -%>
+<%- elsif @interface -%>
{tcp_listeners, [{"<%= @interface%>", <%= @port %>}]},
<%- end -%>
<%- if @ssl -%>
- <%- if @ssl_interface != 'UNSET' -%>
+ <%- if @ssl_interface -%>
{ssl_listeners, [{"<%= @ssl_interface%>", <%= @ssl_port %>}]},
<%- else -%>
{ssl_listeners, [<%= @ssl_port %>]},
<%- end -%>
{ssl_options, [
- <%- if @ssl_cacert != 'UNSET' -%>
+ <%- if @ssl_cacert -%>
{cacertfile,"<%= @ssl_cacert %>"},
<%- end -%>
{certfile,"<%= @ssl_cert %>"},
{keyfile,"<%= @ssl_key %>"},
+ <%- if @ssl_cert_password -%>
+ {password, "<%= @ssl_cert_password %>"},
+ <%- end -%>
+ <%- if @ssl_depth -%>
+ {depth,<%= @ssl_depth %>},
+ <%- end -%>
+ <%- if @ssl_dhfile -%>
+ {dhfile, "<%= @ssl_dhfile %>"},
+ <%- end -%>
+ {secure_renegotiate,<%= @ssl_secure_renegotiate %>},
+ {reuse_sessions,<%= @ssl_reuse_sessions %>},
+ {honor_cipher_order,<%= @ssl_honor_cipher_order %>},
{verify,<%= @ssl_verify %>},
{fail_if_no_peer_cert,<%= @ssl_fail_if_no_peer_cert %>}
<%- if @ssl_versions -%>
<%- end -%>
]},
<%- end -%>
-<% if @config_variables -%>
-<%- @config_variables.keys.sort.each do |key| -%>
- {<%= key %>, <%= @config_variables[key] %>},
+<% if scope['rabbitmq::config_variables'] -%>
+<%- scope['rabbitmq::config_variables'].keys.sort.each do |key| -%>
+ {<%= key %>, <%= scope['rabbitmq::config_variables'][key] %>},
<%- end -%>
<%- end -%>
{default_user, <<"<%= @default_user %>">>},
<%= @config_kernel_variables.sort.map{|k,v| "{#{k}, #{v}}"}.join(",\n ") %>
]}
<%- end -%>
-<%- if @admin_enable -%>,
+<%- if @admin_enable or !@config_management_variables.empty? -%>,
{rabbitmq_management, [
+ <%- if !@config_management_variables.empty? -%>
+ <%= @config_management_variables.sort.map{|k,v| "{#{k}, #{v}}"}.join(",\n ") %>
+ <%- end -%>
+<%- if @admin_enable -%>
+<%- if !@config_management_variables.empty? -%>,<%-end-%>
{listener, [
-<%- if @ssl -%>
+<%- if @ssl && @management_ssl -%>
+ <%- if @management_ip_address -%>
+ {ip, "<%= @management_ip_address %>"},
+ <%- end -%>
{port, <%= @ssl_management_port %>},
{ssl, true},
- {ssl_opts, [<%- if @ssl_cacert != 'UNSET' -%>{cacertfile, "<%= @ssl_cacert %>"},<%- end -%>
-
+ {ssl_opts, [<%- if @ssl_cacert %>
+ {cacertfile, "<%= @ssl_cacert %>"},
+ <%- end -%>
{certfile, "<%= @ssl_cert %>"},
- {keyfile, "<%= @ssl_key %>"}
+ {keyfile, "<%= @ssl_key %>"},
+ {verify,<%= @ssl_management_verify %>},
+ {fail_if_no_peer_cert,<%= @ssl_management_fail_if_no_peer_cert %>}
<%- if @ssl_versions -%>
,{versions, [<%= @ssl_versions.sort.map { |v| "'#{v}'" }.join(', ') %>]}
<%- end -%>
<%- end -%>
]}
<%- else -%>
+ <%- if @management_ip_address -%>
+ {ip, "<%= @management_ip_address %>"},
+ <%- end -%>
{port, <%= @management_port %>}
<%- end -%>
]}
+<%- end -%>
]}
<%- end -%>
<% if @config_stomp -%>,
% Configure the Stomp Plugin listening port
{rabbitmq_stomp, [
+ <%- if @stomp_ssl_only -%>
+ {tcp_listeners, []}
+ <%- else -%>
{tcp_listeners, [<%= @stomp_port %>]}
- <%- if @ssl && @ssl_stomp_port -%>,
+ <%- end -%>
+ <%- if @ssl && @ssl_stomp_port -%>
+ ,
{ssl_listeners, [<%= @ssl_stomp_port %>]}
<%- end -%>
]}
{rabbitmq_auth_backend_ldap, [
{other_bind, <%= @ldap_other_bind %>},
{servers, ["<%= @ldap_server %>"]},
+<% if @ldap_user_dn_pattern -%>
{user_dn_pattern, "<%= @ldap_user_dn_pattern %>"},
+<%- end -%>
{use_ssl, <%= @ldap_use_ssl %>},
{port, <%= @ldap_port %>},
<% if @ldap_config_variables -%>
{log, <%= @ldap_log %>}
]}
<%- end -%>
+<%- if @config_shovel and not @config_shovel_statics.empty? -%>,
+ {rabbitmq_shovel,
+ [{shovels,[
+ <%= @config_shovel_statics.sort.map{|k,v| "{#{k},[#{v}]}"}.join(",\n ") %>
+ ]}]}
+<%- end -%>
+<%- if @config_additional_variables and not @config_additional_variables.empty? -%>,
+% Additional config
+<%- @config_additional_variables.keys.sort.each do |key| -%>
+ {<%= key %>, <%= @config_additional_variables[key] %>}<%- if key != @config_additional_variables.keys.sort.last %>,<% end %>
+<%- end -%>
+<%- end -%>
].
% EOF