From e00e46d337ba47c7dfd3fcaa6d2486afe8f73de5 Mon Sep 17 00:00:00 2001
From: "Dr. Jens Harbott" <harbott@osism.tech>
Date: Fri, 21 Jan 2022 15:32:07 +0100
Subject: [PATCH] Use subnet_dns_publish_fixed_ip Neutron extension

There are multiple Neutron extensions that can be used for DNS
integration. The "dns" extension has only minimum functionality, for
most deployments either "dns_domain_ports" or
"subnet_dns_publish_fixed_ip" would be used, with the latter being a
superset of the two others [0].

[0] https://docs.openstack.org/neutron/xena/admin/config-dns-int-ext-serv.html#use-case-3-ports-are-published-directly-in-the-external-dns-service

Signed-off-by: Dr. Jens Harbott <harbott@osism.tech>
Change-Id: I1056bddfd49265ffe21b4d000898d72bba3ebfad
---
 ansible/roles/neutron/defaults/main.yml              | 2 +-
 releasenotes/notes/neutron-dns-ce05a8908cad96d5.yaml | 8 ++++++++
 2 files changed, 9 insertions(+), 1 deletion(-)
 create mode 100644 releasenotes/notes/neutron-dns-ce05a8908cad96d5.yaml

diff --git a/ansible/roles/neutron/defaults/main.yml b/ansible/roles/neutron/defaults/main.yml
index 4535ae0f40..dbf640b364 100644
--- a/ansible/roles/neutron/defaults/main.yml
+++ b/ansible/roles/neutron/defaults/main.yml
@@ -598,7 +598,7 @@ extension_drivers:
     enabled: "{{ enable_neutron_qos | bool }}"
   - name: "port_security"
     enabled: true
-  - name: "dns"
+  - name: "subnet_dns_publish_fixed_ip"
     enabled: "{{ enable_designate | bool }}"
   - name: "sfc"
     enabled: "{{ enable_neutron_sfc | bool }}"
diff --git a/releasenotes/notes/neutron-dns-ce05a8908cad96d5.yaml b/releasenotes/notes/neutron-dns-ce05a8908cad96d5.yaml
new file mode 100644
index 0000000000..dc6c262212
--- /dev/null
+++ b/releasenotes/notes/neutron-dns-ce05a8908cad96d5.yaml
@@ -0,0 +1,8 @@
+---
+upgrade:
+  - |
+    If both Designate and Neutron are enabled, Neutron now uses the
+    ``subnet_dns_publish_fixed_ip`` instead of the simpler ``dns``
+    extension in order to support more features in the DNS integration.
+    Override via the ``neutron_extension_drivers`` config option if this
+    is not suitable for your deployment.
-- 
GitLab