Fix for pike nova placement interface pick.

- Pushing nova to use internal interface for keystone auth.

Prod_related: PROD-30591

Change-Id: I54d0f42a7595f16c754f65095bf73396b09e3db4
diff --git a/README.rst b/README.rst
index 0f6117d..bd4d1b5 100644
--- a/README.rst
+++ b/README.rst
@@ -53,6 +53,9 @@
           user: nova
           password: pwd
           tenant: service
+          interface: internal
+          valid_interfaces:
+          - internal
         message_queue:
           engine: rabbitmq
           host: 127.0.0.1
diff --git a/nova/files/pike/nova-controller.conf.Debian b/nova/files/pike/nova-controller.conf.Debian
index a73630b..79df316 100644
--- a/nova/files/pike/nova-controller.conf.Debian
+++ b/nova/files/pike/nova-controller.conf.Debian
@@ -5794,6 +5794,15 @@
 #reauthenticate=true
 
 
+[keystone]
+interface = controller.identity.get('interface', 'internal')
+{%- if controller.identity.valid_interfaces is defined %}
+{%-   set valid_interfaces = controller.identity.valid_interfaces|join(',') %}
+{%- else %}
+{%-   set valid_interfaces = 'internal' %}
+{%- endif %}
+valid_interfaces = {{ valid_interfaces }}
+
 [keystone_authtoken]
 
 #
diff --git a/nova/files/queens/nova-controller.conf.Debian b/nova/files/queens/nova-controller.conf.Debian
index 6d731fc..3100f7b 100644
--- a/nova/files/queens/nova-controller.conf.Debian
+++ b/nova/files/queens/nova-controller.conf.Debian
@@ -6104,6 +6104,9 @@
 # List of interfaces, in order of preference, for endpoint URL. (list
 # value)
 #valid_interfaces = internal,public
+{%- if controller.identity.valid_interfaces is defined %}
+valid_interfaces = {{ controller.identity.valid_interfaces|join(',') }}
+{%- endif %}
 
 # The default region_name for endpoint URL discovery. (string value)
 #region_name = <None>