Update rabbitmq module
[mirror/dsa-puppet.git] / 3rdparty / modules / rabbitmq / templates / rabbitmq.config.erb
index 4e2154e..791c919 100644 (file)
@@ -5,33 +5,72 @@
   {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 -%>
@@ -44,9 +83,9 @@
                    <%- 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