diff --git a/neutron/agent/dhcp_agent.py b/neutron/agent/dhcp_agent.py index a826d2f312e..e9b972b709a 100644 --- a/neutron/agent/dhcp_agent.py +++ b/neutron/agent/dhcp_agent.py @@ -67,6 +67,10 @@ class DhcpAgent(manager.Manager): "enable_isolated_metadata = True")), cfg.IntOpt('num_sync_threads', default=4, help=_('Number of threads to use during sync process.')), + cfg.StrOpt('metadata_proxy_socket', + default='$state_path/metadata_proxy', + help=_('Location of Metadata Proxy UNIX domain ' + 'socket')), ] def __init__(self, host=None): @@ -345,8 +349,10 @@ class DhcpAgent(manager.Manager): router_ports[0].device_id) def callback(pid_file): + metadata_proxy_socket = cfg.CONF.metadata_proxy_socket proxy_cmd = ['neutron-ns-metadata-proxy', '--pid_file=%s' % pid_file, + '--metadata_proxy_socket=%s' % metadata_proxy_socket, neutron_lookup_param, '--state_path=%s' % self.conf.state_path, '--metadata_port=%d' % METADATA_PORT] diff --git a/neutron/agent/l3_agent.py b/neutron/agent/l3_agent.py index c2eeff6f2e5..c53d930e014 100644 --- a/neutron/agent/l3_agent.py +++ b/neutron/agent/l3_agent.py @@ -181,6 +181,10 @@ class L3NATAgent(firewall_l3_agent.FWaaSL3AgentRpcCallback, manager.Manager): "by the agents.")), cfg.BoolOpt('enable_metadata_proxy', default=True, help=_("Allow running metadata proxy.")), + cfg.StrOpt('metadata_proxy_socket', + default='$state_path/metadata_proxy', + help=_('Location of Metadata Proxy UNIX domain ' + 'socket')), ] def __init__(self, host, conf=None): @@ -304,8 +308,10 @@ class L3NATAgent(firewall_l3_agent.FWaaSL3AgentRpcCallback, manager.Manager): def _spawn_metadata_proxy(self, router_info): def callback(pid_file): + metadata_proxy_socket = cfg.CONF.metadata_proxy_socket proxy_cmd = ['neutron-ns-metadata-proxy', '--pid_file=%s' % pid_file, + '--metadata_proxy_socket=%s' % metadata_proxy_socket, '--router_id=%s' % router_info.router_id, '--state_path=%s' % self.conf.state_path, '--metadata_port=%s' % self.conf.metadata_port] diff --git a/neutron/agent/metadata/namespace_proxy.py b/neutron/agent/metadata/namespace_proxy.py index 06a3a56f982..9b8bcdddbbe 100644 --- a/neutron/agent/metadata/namespace_proxy.py +++ b/neutron/agent/metadata/namespace_proxy.py @@ -31,13 +31,6 @@ from neutron.common import utils from neutron.openstack.common import log as logging from neutron import wsgi -proxy_socket = cfg.StrOpt('metadata_proxy_socket', - default='$state_path/metadata_proxy', - help=_('Location of Metadata Proxy UNIX domain ' - 'socket')) - -cfg.CONF.register_opt(proxy_socket) - LOG = logging.getLogger(__name__) @@ -157,6 +150,10 @@ def main(): default=9697, help=_("TCP Port to listen for metadata server " "requests.")), + cfg.StrOpt('metadata_proxy_socket', + default='$state_path/metadata_proxy', + help=_('Location of Metadata Proxy UNIX domain ' + 'socket')) ] cfg.CONF.register_cli_opts(opts) diff --git a/neutron/tests/unit/test_dhcp_agent.py b/neutron/tests/unit/test_dhcp_agent.py index 56c20be271f..ffa30e52c48 100644 --- a/neutron/tests/unit/test_dhcp_agent.py +++ b/neutron/tests/unit/test_dhcp_agent.py @@ -601,6 +601,7 @@ class TestDhcpAgentEventHandler(base.BaseTestCase): mock.call().netns.execute([ 'neutron-ns-metadata-proxy', mock.ANY, + mock.ANY, '--router_id=forzanapoli', mock.ANY, mock.ANY, diff --git a/neutron/tests/unit/test_l3_agent.py b/neutron/tests/unit/test_l3_agent.py index a18123d8a4d..f04c4efef8d 100644 --- a/neutron/tests/unit/test_l3_agent.py +++ b/neutron/tests/unit/test_l3_agent.py @@ -690,6 +690,7 @@ class TestL3AgentEventHandler(base.BaseTestCase): mock.call().netns.execute([ 'neutron-ns-metadata-proxy', mock.ANY, + mock.ANY, '--router_id=%s' % router_id, mock.ANY, '--metadata_port=%s' % metadata_port,