diff --git a/README.rst b/README.rst
index 8986c63..eb45711 100644
--- a/README.rst
+++ b/README.rst
@@ -1638,6 +1638,46 @@
           workers: 64
           logto: /var/log/neutron/neutron-server.log
 
+Setup hardcoded configuration values
+------------------------------------
+
+.. code-block:: yaml
+
+    neutron:
+      server:
+        configmap:
+          neutron_server:
+            DEFAULT:
+              max_subnet_host_routes: 30
+              max_routes: 60
+              debug_iptables_rules: True
+            quotas:
+              quota_network: 20
+              quota_subnet: 10
+              quota_port: 100
+            matchmaker_redis:
+              host: 127.0.0.1
+              port: 6379
+              password: pswd
+      gateway:
+        configmap:
+          metadata_agent:
+            DEFAULT:
+              metadata_workers: 10
+              debug: True
+            agent:
+              report_interval: 30
+          l3_agent:
+            DEFAULT:
+              agent_mode : dvr
+            agent:
+              report_interval: 40
+          dhcp_agent:
+            DEFAULT:
+              ovs_vsctl_timeout: 12
+              resync_interval: 60
+            agent:
+              report_interval: 60
 
 Upgrades
 ========
diff --git a/neutron/files/ocata/dhcp_agent.ini b/neutron/files/ocata/dhcp_agent.ini
index d327e64..4105700 100644
--- a/neutron/files/ocata/dhcp_agent.ini
+++ b/neutron/files/ocata/dhcp_agent.ini
@@ -1,3 +1,8 @@
+{%- if pillar.neutron.gateway is defined %}
+{%- from "neutron/map.jinja" import gateway as neutron with context %}
+{%- else %}
+{%- from "neutron/map.jinja" import compute as neutron with context %}
+{%- endif %}
 [DEFAULT]
 
 #
@@ -198,3 +203,7 @@
 # ovsdb_interface is enabled (string value)
 #ovsdb_connection = tcp:127.0.0.1:6640
 
+{%- if neutron.get('configmap', {}).dhcp_agent is defined %}
+{%- set _data = neutron.configmap.dhcp_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/ocata/fwaas_driver.ini b/neutron/files/ocata/fwaas_driver.ini
index 40442a4..a19bf81 100644
--- a/neutron/files/ocata/fwaas_driver.ini
+++ b/neutron/files/ocata/fwaas_driver.ini
@@ -23,3 +23,8 @@
 # Name of the FWaaS Conntrack Driver (string value)
 #conntrack_driver = conntrack
 conntrack_driver = {{ fwaas.get('conntrack_driver', 'conntrack') }}
+
+{%- if fwaas.configmap is defined %}
+{%- set _data = fwaas.configmap %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/ocata/l3_agent.ini b/neutron/files/ocata/l3_agent.ini
index 4c3c5cb..ab7d02e 100644
--- a/neutron/files/ocata/l3_agent.ini
+++ b/neutron/files/ocata/l3_agent.ini
@@ -327,3 +327,8 @@
 # when monitoring and used for the all ovsdb commands when native
 # ovsdb_interface is enabled (string value)
 #ovsdb_connection = tcp:127.0.0.1:6640
+
+{%- if neutron.get('configmap', {}).l3_agent is defined %}
+{%- set _data = neutron.configmap.l3_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/ocata/linuxbridge_agent.ini b/neutron/files/ocata/linuxbridge_agent.ini
index 43532f4..45db17e 100644
--- a/neutron/files/ocata/linuxbridge_agent.ini
+++ b/neutron/files/ocata/linuxbridge_agent.ini
@@ -263,3 +263,8 @@
 # Use ipset to speed-up the iptables based security groups. Enabling ipset
 # support requires that ipset is installed on L2 agent node. (boolean value)
 #enable_ipset = true
+
+{%- if neutron.get('configmap', {}).linuxbridge_agent is defined %}
+{%- set _data = neutron.configmap.linuxbridge_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/ocata/metadata_agent.ini b/neutron/files/ocata/metadata_agent.ini
index d846630..71aadb8 100644
--- a/neutron/files/ocata/metadata_agent.ini
+++ b/neutron/files/ocata/metadata_agent.ini
@@ -281,3 +281,8 @@
 # Number of seconds that an operation will wait to get a memcache client
 # connection. (integer value)
 #memcache_pool_connection_get_timeout = 10
+
+{%- if neutron.get('configmap', {}).metadata_agent is defined %}
+{%- set _data = neutron.configmap.metadata_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/ocata/ml2_conf.ini b/neutron/files/ocata/ml2_conf.ini
index ab67788..224637c 100644
--- a/neutron/files/ocata/ml2_conf.ini
+++ b/neutron/files/ocata/ml2_conf.ini
@@ -364,3 +364,8 @@
 ovn_sb_connection = tcp:{{ server.controller_vip }}:6642
 ovn_l3_scheduler = leastloaded
 {%- endif %}
+
+{%- if server.get('configmap', {}).ml2 is defined %}
+{%- set _data = server.configmap.ml2 %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/ocata/neutron-generic.conf b/neutron/files/ocata/neutron-generic.conf
index 403b3ce..48baf54 100644
--- a/neutron/files/ocata/neutron-generic.conf
+++ b/neutron/files/ocata/neutron-generic.conf
@@ -2102,3 +2102,8 @@
 # Sets the list of available ciphers. value should be a string in the OpenSSL
 # cipher list format. (string value)
 #ciphers = <None>
+
+{%- if neutron.get('configmap', {}).neutron_generic is defined %}
+{%- set _data = neutron.configmap.neutron_generic %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/ocata/neutron-server.conf b/neutron/files/ocata/neutron-server.conf
index 56494f5..98b5e2d 100644
--- a/neutron/files/ocata/neutron-server.conf
+++ b/neutron/files/ocata/neutron-server.conf
@@ -2274,3 +2274,8 @@
 password = {{ server.identity.password }}
 auth_url=http://{{ server.identity.host }}:35357
 {%- endif %}
+
+{%- if server.get('configmap', {}).neutron_server is defined %}
+{%- set _data = server.configmap.neutron_server %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/ocata/openvswitch_agent.ini b/neutron/files/ocata/openvswitch_agent.ini
index fa94c21..e72aa41 100644
--- a/neutron/files/ocata/openvswitch_agent.ini
+++ b/neutron/files/ocata/openvswitch_agent.ini
@@ -358,3 +358,8 @@
 
 # Password for connection to XenServer/Xen Cloud Platform. (string value)
 #connection_password = <None>
+
+{%- if neutron.get('configmap', {}).openvswitch_agent is defined %}
+{%- set _data = neutron.configmap.openvswitch_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/ocata/sriov_agent.ini b/neutron/files/ocata/sriov_agent.ini
index 3947dec..98fa4fb 100644
--- a/neutron/files/ocata/sriov_agent.ini
+++ b/neutron/files/ocata/sriov_agent.ini
@@ -158,3 +158,8 @@
 [securitygroup]
 firewall_driver = neutron.agent.firewall.NoopFirewallDriver
 {%- endif %}
+
+{%- if neutron.get('configmap', {}).sriov_agent is defined %}
+{%- set _data = neutron.configmap.sriov_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/bagpipe-bgp.conf b/neutron/files/pike/bagpipe-bgp.conf
index 253191b..1cc3e5c 100644
--- a/neutron/files/pike/bagpipe-bgp.conf
+++ b/neutron/files/pike/bagpipe-bgp.conf
@@ -106,4 +106,9 @@
 # we will use to send)
 # Note: does not need to be specified if different than the BGP local_address
 # dataplane_local_address=eth1
-# dataplane_local_address=1.2.3.4
\ No newline at end of file
+# dataplane_local_address=1.2.3.4
+
+{%- if compute.get('configmap', {}).bagpipe_bgp is defined %}
+{%- set _data = compute.configmap.bagpipe_bgp %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/dhcp_agent.ini b/neutron/files/pike/dhcp_agent.ini
index cbc5b2a..907677b 100644
--- a/neutron/files/pike/dhcp_agent.ini
+++ b/neutron/files/pike/dhcp_agent.ini
@@ -239,3 +239,7 @@
 # ovsdb_interface is enabled (string value)
 #ovsdb_connection = tcp:127.0.0.1:6640
 
+{%- if neutron.get('configmap', {}).dhcp_agent is defined %}
+{%- set _data = neutron.configmap.dhcp_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/fwaas_driver.ini b/neutron/files/pike/fwaas_driver.ini
index 40442a4..a19bf81 100644
--- a/neutron/files/pike/fwaas_driver.ini
+++ b/neutron/files/pike/fwaas_driver.ini
@@ -23,3 +23,8 @@
 # Name of the FWaaS Conntrack Driver (string value)
 #conntrack_driver = conntrack
 conntrack_driver = {{ fwaas.get('conntrack_driver', 'conntrack') }}
+
+{%- if fwaas.configmap is defined %}
+{%- set _data = fwaas.configmap %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/l2gw/l2gateway_agent.ini b/neutron/files/pike/l2gw/l2gateway_agent.ini
index 59a62fb..3d9284c 100644
--- a/neutron/files/pike/l2gw/l2gateway_agent.ini
+++ b/neutron/files/pike/l2gw/l2gateway_agent.ini
@@ -66,3 +66,8 @@
 # safely assume that the connection with the remote OVSDB server is lost.
 socket_timeout = {{ gateway.l2gw.socket_timeout|default('30') }}
 # Example: socket_timeout = 30
+
+{%- if gateway.get('configmap', {}).l2gateway_agent is defined %}
+{%- set _data = gateway.configmap.l2gateway_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/l2gw/l2gw_plugin.ini b/neutron/files/pike/l2gw/l2gw_plugin.ini
index 8ea1bd7..9fe2895 100644
--- a/neutron/files/pike/l2gw/l2gw_plugin.ini
+++ b/neutron/files/pike/l2gw/l2gw_plugin.ini
@@ -24,3 +24,8 @@
 # Combination of <service type> and <name> must be unique; <driver> must also be unique
 # This is multiline option
 service_provider = {{ server.l2gw.service_provider|default('L2GW:l2gw:networking_l2gw.services.l2gateway.service_drivers.rpc_l2gw.L2gwRpcDriver:default') }}
+
+{%- if server.get('configmap', {}).l2gw_plugin is defined %}
+{%- set _data = server.configmap.l2gw_plugin %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/l3_agent.ini b/neutron/files/pike/l3_agent.ini
index a1e58bb..210ba3d 100644
--- a/neutron/files/pike/l3_agent.ini
+++ b/neutron/files/pike/l3_agent.ini
@@ -330,3 +330,8 @@
 # when monitoring and used for the all ovsdb commands when native
 # ovsdb_interface is enabled (string value)
 #ovsdb_connection = tcp:127.0.0.1:6640
+
+{%- if neutron.get('configmap', {}).l3_agent is defined %}
+{%- set _data = neutron.configmap.l3_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/linuxbridge_agent.ini b/neutron/files/pike/linuxbridge_agent.ini
index 43532f4..45db17e 100644
--- a/neutron/files/pike/linuxbridge_agent.ini
+++ b/neutron/files/pike/linuxbridge_agent.ini
@@ -263,3 +263,8 @@
 # Use ipset to speed-up the iptables based security groups. Enabling ipset
 # support requires that ipset is installed on L2 agent node. (boolean value)
 #enable_ipset = true
+
+{%- if neutron.get('configmap', {}).linuxbridge_agent is defined %}
+{%- set _data = neutron.configmap.linuxbridge_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/metadata_agent.ini b/neutron/files/pike/metadata_agent.ini
index d846630..71aadb8 100644
--- a/neutron/files/pike/metadata_agent.ini
+++ b/neutron/files/pike/metadata_agent.ini
@@ -281,3 +281,8 @@
 # Number of seconds that an operation will wait to get a memcache client
 # connection. (integer value)
 #memcache_pool_connection_get_timeout = 10
+
+{%- if neutron.get('configmap', {}).metadata_agent is defined %}
+{%- set _data = neutron.configmap.metadata_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/ml2_conf.ini b/neutron/files/pike/ml2_conf.ini
index 17818ee..b705689 100644
--- a/neutron/files/pike/ml2_conf.ini
+++ b/neutron/files/pike/ml2_conf.ini
@@ -385,3 +385,8 @@
 # Service. (boolean value)
 enable_dhcp_service = {{ server.backend.enable_dhcp_service|default('false') }}
 {%- endif %}
+
+{%- if server.get('configmap', {}).ml2 is defined %}
+{%- set _data = server.configmap.ml2 %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/neutron-generic.conf b/neutron/files/pike/neutron-generic.conf
index 96d66ba..b93d3d4 100644
--- a/neutron/files/pike/neutron-generic.conf
+++ b/neutron/files/pike/neutron-generic.conf
@@ -2132,3 +2132,8 @@
 {%- if neutron.backend.ovsdb_connection is defined %}
 ovsdb_connection = {{ neutron.backend.ovsdb_connection }}
 {%- endif %}
+
+{%- if neutron.get('configmap', {}).neutron_generic is defined %}
+{%- set _data = neutron.configmap.neutron_generic %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/neutron-server.conf b/neutron/files/pike/neutron-server.conf
index 5cccb0f..f926192 100644
--- a/neutron/files/pike/neutron-server.conf
+++ b/neutron/files/pike/neutron-server.conf
@@ -2381,3 +2381,8 @@
 {% if server.n_g_s is defined  -%}
 {%- include "neutron/files/pike/plugins/_n_g_s.conf" %}
 {% endif %}
+
+{%- if server.get('configmap', {}).neutron_server is defined %}
+{%- set _data = server.configmap.neutron_server %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/openvswitch_agent.ini b/neutron/files/pike/openvswitch_agent.ini
index 5c3545c..19ade98 100644
--- a/neutron/files/pike/openvswitch_agent.ini
+++ b/neutron/files/pike/openvswitch_agent.ini
@@ -385,3 +385,8 @@
 
 # Password for connection to XenServer/Xen Cloud Platform. (string value)
 #connection_password = <None>
+
+{%- if neutron.get('configmap', {}).openvswitch_agent is defined %}
+{%- set _data = neutron.configmap.openvswitch_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/pike/sriov_agent.ini b/neutron/files/pike/sriov_agent.ini
index 734c7bd..c0d26c9 100644
--- a/neutron/files/pike/sriov_agent.ini
+++ b/neutron/files/pike/sriov_agent.ini
@@ -163,3 +163,8 @@
 [securitygroup]
 firewall_driver = neutron.agent.firewall.NoopFirewallDriver
 {%- endif %}
+
+{%- if neutron.get('configmap', {}).sriov_agent is defined %}
+{%- set _data = neutron.configmap.sriov_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/bagpipe-bgp.conf b/neutron/files/queens/bagpipe-bgp.conf
index 253191b..1cc3e5c 100644
--- a/neutron/files/queens/bagpipe-bgp.conf
+++ b/neutron/files/queens/bagpipe-bgp.conf
@@ -106,4 +106,9 @@
 # we will use to send)
 # Note: does not need to be specified if different than the BGP local_address
 # dataplane_local_address=eth1
-# dataplane_local_address=1.2.3.4
\ No newline at end of file
+# dataplane_local_address=1.2.3.4
+
+{%- if compute.get('configmap', {}).bagpipe_bgp is defined %}
+{%- set _data = compute.configmap.bagpipe_bgp %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/dhcp_agent.ini b/neutron/files/queens/dhcp_agent.ini
index 1c0ff9a..dab89ad 100644
--- a/neutron/files/queens/dhcp_agent.ini
+++ b/neutron/files/queens/dhcp_agent.ini
@@ -214,3 +214,8 @@
 # will fail with ALARMCLOCK error. (integer value)
 # Deprecated group/name - [DEFAULT]/ovs_vsctl_timeout
 #ovsdb_timeout = 10
+
+{%- if neutron.get('configmap', {}).dhcp_agent is defined %}
+{%- set _data = neutron.configmap.dhcp_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/l2gw/l2gateway_agent.ini b/neutron/files/queens/l2gw/l2gateway_agent.ini
index 59a62fb..3d9284c 100644
--- a/neutron/files/queens/l2gw/l2gateway_agent.ini
+++ b/neutron/files/queens/l2gw/l2gateway_agent.ini
@@ -66,3 +66,8 @@
 # safely assume that the connection with the remote OVSDB server is lost.
 socket_timeout = {{ gateway.l2gw.socket_timeout|default('30') }}
 # Example: socket_timeout = 30
+
+{%- if gateway.get('configmap', {}).l2gateway_agent is defined %}
+{%- set _data = gateway.configmap.l2gateway_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/l2gw/l2gw_plugin.ini b/neutron/files/queens/l2gw/l2gw_plugin.ini
index 8ea1bd7..9fe2895 100644
--- a/neutron/files/queens/l2gw/l2gw_plugin.ini
+++ b/neutron/files/queens/l2gw/l2gw_plugin.ini
@@ -24,3 +24,8 @@
 # Combination of <service type> and <name> must be unique; <driver> must also be unique
 # This is multiline option
 service_provider = {{ server.l2gw.service_provider|default('L2GW:l2gw:networking_l2gw.services.l2gateway.service_drivers.rpc_l2gw.L2gwRpcDriver:default') }}
+
+{%- if server.get('configmap', {}).l2gw_plugin is defined %}
+{%- set _data = server.configmap.l2gw_plugin %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/l3_agent.ini b/neutron/files/queens/l3_agent.ini
index b6f1960..339ab04 100644
--- a/neutron/files/queens/l3_agent.ini
+++ b/neutron/files/queens/l3_agent.ini
@@ -259,3 +259,8 @@
 # will fail with ALARMCLOCK error. (integer value)
 # Deprecated group/name - [DEFAULT]/ovs_vsctl_timeout
 #ovsdb_timeout = 10
+
+{%- if neutron.get('configmap', {}).l3_agent is defined %}
+{%- set _data = neutron.configmap.l3_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/linuxbridge_agent.ini b/neutron/files/queens/linuxbridge_agent.ini
index ceeb868..c0f04d3 100644
--- a/neutron/files/queens/linuxbridge_agent.ini
+++ b/neutron/files/queens/linuxbridge_agent.ini
@@ -290,3 +290,8 @@
 # Use ipset to speed-up the iptables based security groups. Enabling ipset
 # support requires that ipset is installed on L2 agent node. (boolean value)
 #enable_ipset = true
+
+{%- if neutron.get('configmap', {}).linuxbridge_agent is defined %}
+{%- set _data = neutron.configmap.linuxbridge_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/metadata_agent.ini b/neutron/files/queens/metadata_agent.ini
index 20ca19c..fcee7ab 100644
--- a/neutron/files/queens/metadata_agent.ini
+++ b/neutron/files/queens/metadata_agent.ini
@@ -101,3 +101,8 @@
 {%- set _data = neutron.cache %}
 {%- include "oslo_templates/files/queens/oslo/_cache.conf" %}
 {%- endif %}
+
+{%- if neutron.get('configmap', {}).metadata_agent is defined %}
+{%- set _data = neutron.configmap.metadata_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/ml2_conf.ini b/neutron/files/queens/ml2_conf.ini
index bb2f126..bb5b1b3 100644
--- a/neutron/files/queens/ml2_conf.ini
+++ b/neutron/files/queens/ml2_conf.ini
@@ -286,3 +286,8 @@
 # Service. (boolean value)
 enable_dhcp_service = {{ server.backend.enable_dhcp_service|default('false') }}
 {%- endif %}
+
+{%- if server.get('configmap', {}).ml2 is defined %}
+{%- set _data = server.configmap.ml2 %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/neutron-generic.conf b/neutron/files/queens/neutron-generic.conf
index 08b1fff..b1bb084 100644
--- a/neutron/files/queens/neutron-generic.conf
+++ b/neutron/files/queens/neutron-generic.conf
@@ -525,3 +525,8 @@
 {%- if neutron.backend.ovsdb_connection is defined %}
 ovsdb_connection = {{ neutron.backend.ovsdb_connection }}
 {%- endif %}
+
+{%- if neutron.get('configmap', {}).neutron_generic is defined %}
+{%- set _data = neutron.configmap.neutron_generic %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/neutron-server.conf b/neutron/files/queens/neutron-server.conf
index 7aa7e4e..63a9c46 100644
--- a/neutron/files/queens/neutron-server.conf
+++ b/neutron/files/queens/neutron-server.conf
@@ -619,3 +619,8 @@
 {% if server.n_g_s is defined  -%}
 {%- include "neutron/files/queens/plugins/_n_g_s.conf" %}
 {% endif %}
+
+{%- if server.get('configmap', {}).neutron_server is defined %}
+{%- set _data = server.configmap.neutron_server %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/openvswitch_agent.ini b/neutron/files/queens/openvswitch_agent.ini
index 39a07cb..d642dec 100644
--- a/neutron/files/queens/openvswitch_agent.ini
+++ b/neutron/files/queens/openvswitch_agent.ini
@@ -305,3 +305,8 @@
 
 # Password for connection to XenServer/Xen Cloud Platform. (string value)
 #connection_password = <None>
+
+{%- if neutron.get('configmap', {}).openvswitch_agent is defined %}
+{%- set _data = neutron.configmap.openvswitch_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/ovn/metadata-agent.ini b/neutron/files/queens/ovn/metadata-agent.ini
index 8a65292..3a1e3a1 100644
--- a/neutron/files/queens/ovn/metadata-agent.ini
+++ b/neutron/files/queens/ovn/metadata-agent.ini
@@ -95,3 +95,8 @@
 [ovn]
 
 ovn_sb_connection = tcp:{{ compute.controller_vip }}:6642
+
+{%- if compute.get('configmap', {}).get('ovn', {}).metadata_agent is defined %}
+{%- set _data = compute.configmap.ovn.metadata_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/queens/sriov_agent.ini b/neutron/files/queens/sriov_agent.ini
index 734c7bd..c0d26c9 100644
--- a/neutron/files/queens/sriov_agent.ini
+++ b/neutron/files/queens/sriov_agent.ini
@@ -163,3 +163,8 @@
 [securitygroup]
 firewall_driver = neutron.agent.firewall.NoopFirewallDriver
 {%- endif %}
+
+{%- if neutron.get('configmap', {}).sriov_agent is defined %}
+{%- set _data = neutron.configmap.sriov_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/bagpipe-bgp.conf b/neutron/files/rocky/bagpipe-bgp.conf
index d4f8b5c..3338f9b 100644
--- a/neutron/files/rocky/bagpipe-bgp.conf
+++ b/neutron/files/rocky/bagpipe-bgp.conf
@@ -106,4 +106,9 @@
 # we will use to send)
 # Note: does not need to be specified if different than the BGP local_address
 # dataplane_local_address=eth1
-# dataplane_local_address=1.2.3.4
\ No newline at end of file
+# dataplane_local_address=1.2.3.4
+
+{%- if compute.get('configmap', {}).bagpipe_bgp is defined %}
+{%- set _data = compute.configmap.bagpipe_bgp %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/dhcp_agent.ini b/neutron/files/rocky/dhcp_agent.ini
index 9c5a739..c915c23 100644
--- a/neutron/files/rocky/dhcp_agent.ini
+++ b/neutron/files/rocky/dhcp_agent.ini
@@ -214,3 +214,8 @@
 # Neutron OVS agent. Values outside a reasonable range (10 to 1,000,000) might
 # be overridden by Open vSwitch according to the documentation. (integer value)
 #bridge_mac_table_size = 50000
+
+{%- if neutron.get('configmap', {}).dhcp_agent is defined %}
+{%- set _data = neutron.configmap.dhcp_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/l2gw/l2gateway_agent.ini b/neutron/files/rocky/l2gw/l2gateway_agent.ini
index 59a62fb..3d9284c 100644
--- a/neutron/files/rocky/l2gw/l2gateway_agent.ini
+++ b/neutron/files/rocky/l2gw/l2gateway_agent.ini
@@ -66,3 +66,8 @@
 # safely assume that the connection with the remote OVSDB server is lost.
 socket_timeout = {{ gateway.l2gw.socket_timeout|default('30') }}
 # Example: socket_timeout = 30
+
+{%- if gateway.get('configmap', {}).l2gateway_agent is defined %}
+{%- set _data = gateway.configmap.l2gateway_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/l2gw/l2gw_plugin.ini b/neutron/files/rocky/l2gw/l2gw_plugin.ini
index 8ea1bd7..9fe2895 100644
--- a/neutron/files/rocky/l2gw/l2gw_plugin.ini
+++ b/neutron/files/rocky/l2gw/l2gw_plugin.ini
@@ -24,3 +24,8 @@
 # Combination of <service type> and <name> must be unique; <driver> must also be unique
 # This is multiline option
 service_provider = {{ server.l2gw.service_provider|default('L2GW:l2gw:networking_l2gw.services.l2gateway.service_drivers.rpc_l2gw.L2gwRpcDriver:default') }}
+
+{%- if server.get('configmap', {}).l2gw_plugin is defined %}
+{%- set _data = server.configmap.l2gw_plugin %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/l3_agent.ini b/neutron/files/rocky/l3_agent.ini
index 1cb9ad4..9a7b147 100644
--- a/neutron/files/rocky/l3_agent.ini
+++ b/neutron/files/rocky/l3_agent.ini
@@ -258,3 +258,8 @@
 # Neutron OVS agent. Values outside a reasonable range (10 to 1,000,000) might
 # be overridden by Open vSwitch according to the documentation. (integer value)
 #bridge_mac_table_size = 50000
+
+{%- if neutron.get('configmap', {}).l3_agent is defined %}
+{%- set _data = neutron.configmap.l3_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/linuxbridge_agent.ini b/neutron/files/rocky/linuxbridge_agent.ini
index 17f1a15..ad6e34f 100644
--- a/neutron/files/rocky/linuxbridge_agent.ini
+++ b/neutron/files/rocky/linuxbridge_agent.ini
@@ -215,3 +215,8 @@
 # Use ipset to speed-up the iptables based security groups. Enabling ipset
 # support requires that ipset is installed on L2 agent node. (boolean value)
 #enable_ipset = true
+
+{%- if neutron.get('configmap', {}).linuxbridge_agent is defined %}
+{%- set _data = neutron.configmap.linuxbridge_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/metadata_agent.ini b/neutron/files/rocky/metadata_agent.ini
index dadb500..17d1640 100644
--- a/neutron/files/rocky/metadata_agent.ini
+++ b/neutron/files/rocky/metadata_agent.ini
@@ -104,3 +104,8 @@
 {%- set _data = neutron.cache %}
 {%- include "oslo_templates/files/" ~ neutron.version ~ "/oslo/_cache.conf" %}
 {%- endif %}
+
+{%- if neutron.get('configmap', {}).metadata_agent is defined %}
+{%- set _data = neutron.configmap.metadata_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/ml2_conf.ini b/neutron/files/rocky/ml2_conf.ini
index 48ad7df..a9a598f 100644
--- a/neutron/files/rocky/ml2_conf.ini
+++ b/neutron/files/rocky/ml2_conf.ini
@@ -262,3 +262,8 @@
 # Service. (boolean value)
 enable_dhcp_service = {{ server.backend.enable_dhcp_service|default('false') }}
 {%- endif %}
+
+{%- if server.get('configmap', {}).ml2 is defined %}
+{%- set _data = server.configmap.ml2 %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/neutron-generic.conf b/neutron/files/rocky/neutron-generic.conf
index 08fa9b4..35c22d5 100644
--- a/neutron/files/rocky/neutron-generic.conf
+++ b/neutron/files/rocky/neutron-generic.conf
@@ -504,3 +504,8 @@
 {%- if neutron.backend.ovsdb_connection is defined %}
 ovsdb_connection = {{ neutron.backend.ovsdb_connection }}
 {%- endif %}
+
+{%- if neutron.get('configmap', {}).neutron_generic is defined %}
+{%- set _data = neutron.configmap.neutron_generic %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/neutron-server.conf b/neutron/files/rocky/neutron-server.conf
index 97ed365..51b99b7 100644
--- a/neutron/files/rocky/neutron-server.conf
+++ b/neutron/files/rocky/neutron-server.conf
@@ -638,3 +638,8 @@
 {% if server.sfc is defined -%}
 {%- include "neutron/files/" ~ server.version ~ "/plugins/sfc.conf" %}
 {% endif %}
+
+{%- if server.get('configmap', {}).neutron_server is defined %}
+{%- set _data = server.configmap.neutron_server %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/openvswitch_agent.ini b/neutron/files/rocky/openvswitch_agent.ini
index 47a199e..957af4c 100644
--- a/neutron/files/rocky/openvswitch_agent.ini
+++ b/neutron/files/rocky/openvswitch_agent.ini
@@ -307,3 +307,8 @@
 
 # Password for connection to XenServer/Xen Cloud Platform. (string value)
 #connection_password = <None>
+
+{%- if neutron.get('configmap', {}).openvswitch_agent is defined %}
+{%- set _data = neutron.configmap.openvswitch_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/ovn/metadata-agent.ini b/neutron/files/rocky/ovn/metadata-agent.ini
index 8a65292..3a1e3a1 100644
--- a/neutron/files/rocky/ovn/metadata-agent.ini
+++ b/neutron/files/rocky/ovn/metadata-agent.ini
@@ -95,3 +95,8 @@
 [ovn]
 
 ovn_sb_connection = tcp:{{ compute.controller_vip }}:6642
+
+{%- if compute.get('configmap', {}).get('ovn', {}).metadata_agent is defined %}
+{%- set _data = compute.configmap.ovn.metadata_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/neutron/files/rocky/sriov_agent.ini b/neutron/files/rocky/sriov_agent.ini
index 388cec4..6956247 100644
--- a/neutron/files/rocky/sriov_agent.ini
+++ b/neutron/files/rocky/sriov_agent.ini
@@ -57,3 +57,8 @@
 [securitygroup]
 firewall_driver = noop
 {%- endif %}
+
+{%- if neutron.get('configmap', {}).sriov_agent is defined %}
+{%- set _data = neutron.configmap.sriov_agent %}
+{%- include "oslo_templates/files/configmap/configmap.conf" %}
+{%- endif %}
diff --git a/tests/pillar/control_cluster.sls b/tests/pillar/control_cluster.sls
index e8cf760..7e0628d 100644
--- a/tests/pillar/control_cluster.sls
+++ b/tests/pillar/control_cluster.sls
@@ -79,3 +79,17 @@
         enabled: true
         strategy: ENCRYPT
         secret_key: secret
+    configmap:
+      neutron_server:
+        DEFAULT:
+          max_subnet_host_routes: 30
+          max_routes: 60
+          debug_iptables_rules: True
+        quotas:
+          quota_network: 20
+          quota_subnet: 10
+          quota_port: 100
+        matchmaker_redis:
+          host: 127.0.0.1
+          port: 6379
+          password: pswd
diff --git a/tests/pillar/gateway_legacy.sls b/tests/pillar/gateway_legacy.sls
index 5776d69..aa65179 100644
--- a/tests/pillar/gateway_legacy.sls
+++ b/tests/pillar/gateway_legacy.sls
@@ -28,3 +28,21 @@
     agents:
       dhcp:
         ovs_use_veth: True
+    configmap:
+      metadata_agent:
+        DEFAULT:
+          metadata_workers: 10
+          debug: True
+        agent:
+          report_interval: 30
+      l3_agent:
+        DEFAULT:
+          agent_mode : dvr
+        agent:
+          report_interval: 40
+      dhcp_agent:
+        DEFAULT:
+          ovs_vsctl_timeout: 12
+          resync_interval: 60
+        agent:
+          report_interval: 60
