[rocky] Handle agent's options

* agent_down_time
* dhcp_agents_per_network
* allow_automatic_dhcp_failover
* rpc_conn_pool_size
* rpc_thread_pool_size
* rpc_response_timeout
* report_interval

Change-Id: Ib60c93abe33d57747895713d045759170bb56af6
Related-Prod: PROD-26334
Related-Prod: PROD-26314
diff --git a/neutron/files/rocky/neutron-generic.conf b/neutron/files/rocky/neutron-generic.conf
index 8b6fda7..08fa9b4 100644
--- a/neutron/files/rocky/neutron-generic.conf
+++ b/neutron/files/rocky/neutron-generic.conf
@@ -189,10 +189,6 @@
 # From neutron.db
 #
 
-# Seconds to regard the agent is down; should be at least twice
-# report_interval, to be sure the agent is down for good. (integer value)
-#agent_down_time = 75
-
 # Representing the resource type whose load is being reported by the agent.
 # This can be "networks", "subnets" or "ports". When specified (Default is
 # networks), the server will extract particular load sent as part of its agent
@@ -357,7 +353,7 @@
 # Seconds between nodes reporting state to server; should be less than
 # agent_down_time, best if it is half or less than agent_down_time. (floating
 # point value)
-report_interval = 10
+report_interval = {{ neutron.get('report_interval', 30) }}
 
 # Log agent heartbeats (boolean value)
 #log_agent_heartbeats = false
diff --git a/neutron/files/rocky/neutron-server.conf b/neutron/files/rocky/neutron-server.conf
index d841b74..29899f2 100644
--- a/neutron/files/rocky/neutron-server.conf
+++ b/neutron/files/rocky/neutron-server.conf
@@ -222,7 +222,7 @@
 
 # Seconds to regard the agent is down; should be at least twice
 # report_interval, to be sure the agent is down for good. (integer value)
-#agent_down_time = 75
+agent_down_time = {{ server.get('agent_down_time', 75) }}
 
 # Representing the resource type whose load is being reported by the agent.
 # This can be "networks", "subnets" or "ports". When specified (Default is
@@ -260,12 +260,15 @@
 
 # Automatically remove networks from offline DHCP agents. (boolean value)
 #allow_automatic_dhcp_failover = true
+{%- if server.allow_automatic_dhcp_failover is defined %}
+allow_automatic_dhcp_failover = {{ server.get('allow_automatic_dhcp_failover', 'true') }}
+{%- endif %}
 
 # Number of DHCP agents scheduled to host a tenant network. If this number is
 # greater than 1, the scheduler automatically assigns multiple DHCP agents for
 # a given tenant network, providing high availability for DHCP service.
 # (integer value)
-dhcp_agents_per_network = 2
+dhcp_agents_per_network = {{ server.get('dhcp_agents_per_network', 2) }}
 
 # Enable services on an agent with admin_state_up False. If this option is
 # False, when admin_state_up of an agent is turned False, services on it will
@@ -386,7 +389,7 @@
 # Seconds between nodes reporting state to server; should be less than
 # agent_down_time, best if it is half or less than agent_down_time. (floating
 # point value)
-report_interval = 10
+report_interval = {{ server.get('report_interval', 30) }}
 
 # Log agent heartbeats (boolean value)
 #log_agent_heartbeats = false