From 9c1fa1dc7e0b68e1be806c1e92c20e419868af0d Mon Sep 17 00:00:00 2001
From: Will Miller <willm@stackhpc.com>
Date: Wed, 18 Jul 2018 16:21:19 +0000
Subject: [PATCH] Add support for the Ironic Neutron agent

Change-Id: Ie697b59b48f2b543b3d3bb65566318f2d9a0f46c
---
 ansible/group_vars/all/kolla                                  | 3 +++
 ansible/roles/kolla-ansible/templates/overcloud-services.j2   | 3 +++
 ansible/roles/kolla-ansible/tests/test-defaults.yml           | 1 +
 ansible/roles/kolla-ansible/tests/test-extras.yml             | 2 ++
 ansible/roles/kolla-ansible/vars/main.yml                     | 1 +
 .../notes/support_ironic_neutron_agent-a41e44ef41f5a96d.yaml  | 4 ++++
 6 files changed, 14 insertions(+)
 create mode 100644 releasenotes/notes/support_ironic_neutron_agent-a41e44ef41f5a96d.yaml

diff --git a/ansible/group_vars/all/kolla b/ansible/group_vars/all/kolla
index 77607b95..52cbcbe5 100644
--- a/ansible/group_vars/all/kolla
+++ b/ansible/group_vars/all/kolla
@@ -146,6 +146,8 @@ overcloud_container_image_regex_map:
     enabled: "{{ kolla_enable_influxdb | bool }}"
   - regex: ironic
     enabled: "{{ kolla_enable_ironic | bool }}"
+  - regex: ironic-neutron-agent
+    enabled: "{{ kolla_enable_ironic_neutron_agent | bool }}"
   - regex: iscsid
     enabled: "{{ kolla_enable_cinder | bool or kolla_enable_ironic | bool }}"
   - regex: kafka
@@ -317,6 +319,7 @@ kolla_enable_horizon: "yes"
 kolla_enable_influxdb: "no"
 kolla_enable_ironic: "yes"
 kolla_enable_ironic_ipxe: "no"
+kolla_enable_ironic_neutron_agent: "{{ 'yes' if kolla_enable_neutron | bool and kolla_enable_ironic | bool else 'no' }}"
 kolla_enable_kafka: "no"
 kolla_enable_kibana: "{{ 'yes' if kolla_enable_central_logging | bool else 'no' }}"
 kolla_enable_magnum: "no"
diff --git a/ansible/roles/kolla-ansible/templates/overcloud-services.j2 b/ansible/roles/kolla-ansible/templates/overcloud-services.j2
index d1d245b4..69d986eb 100644
--- a/ansible/roles/kolla-ansible/templates/overcloud-services.j2
+++ b/ansible/roles/kolla-ansible/templates/overcloud-services.j2
@@ -73,6 +73,9 @@ neutron
 [neutron-bgp-dragent:children]
 neutron
 
+[ironic-neutron-agent:children]
+neutron
+
 # Ceph
 [ceph-mds:children]
 ceph
diff --git a/ansible/roles/kolla-ansible/tests/test-defaults.yml b/ansible/roles/kolla-ansible/tests/test-defaults.yml
index 8a66d484..974a865e 100644
--- a/ansible/roles/kolla-ansible/tests/test-defaults.yml
+++ b/ansible/roles/kolla-ansible/tests/test-defaults.yml
@@ -115,6 +115,7 @@
               - neutron_tenant_network_types
               - enable_glance
               - enable_ironic
+              - enable_ironic_neutron_agent
               - enable_kafka
               - enable_influxdb
               - enable_mariadb
diff --git a/ansible/roles/kolla-ansible/tests/test-extras.yml b/ansible/roles/kolla-ansible/tests/test-extras.yml
index be579663..5aac97cd 100644
--- a/ansible/roles/kolla-ansible/tests/test-extras.yml
+++ b/ansible/roles/kolla-ansible/tests/test-extras.yml
@@ -85,6 +85,7 @@
             kolla_enable_horizon: True
             kolla_enable_influxdb: True
             kolla_enable_ironic: True
+            kolla_enable_ironic_neutron_agent: True
             kolla_enable_kafka: True
             kolla_enable_karbor: True
             kolla_enable_kibana: True
@@ -220,6 +221,7 @@
               #enable_horizon: True
               #enable_influxdb: True
               #enable_ironic: True
+              #enable_ironic_neutron_agent: True
               #enable_kafka: True
               #enable_karbor: True
               #enable_kibana: True
diff --git a/ansible/roles/kolla-ansible/vars/main.yml b/ansible/roles/kolla-ansible/vars/main.yml
index 5ff8610d..7cb1aa10 100644
--- a/ansible/roles/kolla-ansible/vars/main.yml
+++ b/ansible/roles/kolla-ansible/vars/main.yml
@@ -88,6 +88,7 @@ kolla_feature_flags:
   - influxdb
   - ironic
   - ironic_ipxe
+  - ironic_neutron_agent
   - ironic_pxe_uefi
   - kafka
   - karbor
diff --git a/releasenotes/notes/support_ironic_neutron_agent-a41e44ef41f5a96d.yaml b/releasenotes/notes/support_ironic_neutron_agent-a41e44ef41f5a96d.yaml
new file mode 100644
index 00000000..9e1d3c0a
--- /dev/null
+++ b/releasenotes/notes/support_ironic_neutron_agent-a41e44ef41f5a96d.yaml
@@ -0,0 +1,4 @@
+---
+features:
+  - Support configuration of the Ironic Neutron Agent and Neutron ML2 baremetal
+    plugin.
-- 
GitLab