summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--neutron/plugins/ml2/extensions/dns_integration.py2
-rw-r--r--neutron/tests/unit/plugins/ml2/extensions/test_dns_integration.py3
-rw-r--r--releasenotes/notes/fix-port-dns-assignment-9d916d77522abd65.yaml6
3 files changed, 11 insertions, 0 deletions
diff --git a/neutron/plugins/ml2/extensions/dns_integration.py b/neutron/plugins/ml2/extensions/dns_integration.py
index 60d5e06bf1..2bf79f79a5 100644
--- a/neutron/plugins/ml2/extensions/dns_integration.py
+++ b/neutron/plugins/ml2/extensions/dns_integration.py
@@ -288,6 +288,8 @@ class DNSExtensionDriver(api.ExtensionDriver):
if dns_domain and dns_domain != lib_const.DNS_DOMAIN_DEFAULT:
if dns_data_db:
dns_name = dns_data_db.dns_name
+ if dns_data_db.current_dns_domain:
+ dns_domain = dns_data_db.current_dns_domain
return dns_name, dns_domain
def _get_dns_names_for_port(self, ips, dns_data_db):
diff --git a/neutron/tests/unit/plugins/ml2/extensions/test_dns_integration.py b/neutron/tests/unit/plugins/ml2/extensions/test_dns_integration.py
index 959ab0b727..1cb8b750a2 100644
--- a/neutron/tests/unit/plugins/ml2/extensions/test_dns_integration.py
+++ b/neutron/tests/unit/plugins/ml2/extensions/test_dns_integration.py
@@ -164,6 +164,9 @@ class DNSIntegrationTestCase(test_plugin.Ml2PluginV2TestCase):
self.assertEqual(current_dns_name, dns_data_db['current_dns_name'])
self.assertEqual(previous_dns_name,
dns_data_db['previous_dns_name'])
+ curr_dns_domain = dns_data_db['current_dns_domain']
+ for fqdn in port['dns_assignment']:
+ self.assertTrue(fqdn['fqdn'].endswith(curr_dns_domain))
if current_dns_name:
self.assertEqual(current_dns_domain,
dns_data_db['current_dns_domain'])
diff --git a/releasenotes/notes/fix-port-dns-assignment-9d916d77522abd65.yaml b/releasenotes/notes/fix-port-dns-assignment-9d916d77522abd65.yaml
new file mode 100644
index 0000000000..3a45c69e89
--- /dev/null
+++ b/releasenotes/notes/fix-port-dns-assignment-9d916d77522abd65.yaml
@@ -0,0 +1,6 @@
+---
+features:
+ - |
+ The dns-assignment will reflect the dns-domain defined in the network or
+ sent by user when creating the port using --dns-domain rather than just
+ take the dns-domain defined in the neutron configuration