From 48cd7b87e201ccdaa73ee82fd591ec447961e7aa Mon Sep 17 00:00:00 2001
From: Tim Rozet <trozet@redhat.com>
Date: Tue, 29 Aug 2017 11:23:39 -0400
Subject: Updates SFC to use nitrogen

Also fixes issue where openvswitch NSH rpm was not getting installed
because we needed to downgrade now that default OVS is 2.7 and NSH OVS
is 2.6.1

Change-Id: I1b639ca80214032e93aacb3332e9588d49e74127
Signed-off-by: Tim Rozet <trozet@redhat.com>
---
 apex/overcloud/config.py           | 3 +++
 apex/overcloud/overcloud_deploy.py | 6 +++---
 build/overcloud-opendaylight.sh    | 3 +++
 config/deploy/os-odl-sfc-ha.yaml   | 2 +-
 config/deploy/os-odl-sfc-noha.yaml | 2 +-
 5 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/apex/overcloud/config.py b/apex/overcloud/config.py
index acec5323..e48b254f 100644
--- a/apex/overcloud/config.py
+++ b/apex/overcloud/config.py
@@ -62,6 +62,9 @@ def create_nic_template(network_settings, deploy_settings, role, template_dir,
         nets['tenant']['nic_mapping'][role]['interface-options'] =\
             ds['performance'][role.title()]['vpp']['interface-options']
 
+    if role == 'controller' and ds.get('sfc', None):
+        ext_net = 'interface'
+
     template_output = template.render(
         nets=nets,
         role=role,
diff --git a/apex/overcloud/overcloud_deploy.py b/apex/overcloud/overcloud_deploy.py
index 60652146..d37d73ca 100644
--- a/apex/overcloud/overcloud_deploy.py
+++ b/apex/overcloud/overcloud_deploy.py
@@ -30,7 +30,7 @@ from cryptography.hazmat.backends import default_backend as \
 
 SDN_FILE_MAP = {
     'opendaylight': {
-        'sfc': 'opendaylight_sfc.yaml',
+        'sfc': 'neutron-sfc-opendaylight.yaml',
         'vpn': 'neutron-bgpvpn-opendaylight.yaml',
         'gluon': 'gluon.yaml',
         'vpp': {
@@ -220,7 +220,7 @@ def prep_image(ds, img, tmp_dir, root_pw=None):
             {con.VIRT_RUN_CMD: "yum -y install "
                                "/root/ovs/rpm/rpmbuild/RPMS/x86_64/"
                                "{}".format(OVS_NSH_KMOD_RPM)},
-            {con.VIRT_RUN_CMD: "yum upgrade -y "
+            {con.VIRT_RUN_CMD: "yum downgrade -y "
                                "/root/ovs/rpm/rpmbuild/RPMS/x86_64/"
                                "{}".format(OVS_NSH_RPM)}
         ])
@@ -236,7 +236,7 @@ def prep_image(ds, img, tmp_dir, root_pw=None):
             virt_cmds.extend([
                 {con.VIRT_RUN_CMD: "yum -y remove opendaylight"},
                 {con.VIRT_RUN_CMD: "yum -y install /root/{}/*".format(
-                    con.DEFAULT_ODL_VERSION)},
+                    ds_opts['odl_version'])},
                 {con.VIRT_RUN_CMD: "rm -rf /etc/puppet/modules/opendaylight"},
                 {con.VIRT_RUN_CMD: "cd /etc/puppet/modules && tar xzf "
                                    "/root/puppet-opendaylight-"
diff --git a/build/overcloud-opendaylight.sh b/build/overcloud-opendaylight.sh
index 96b43d87..c850005e 100755
--- a/build/overcloud-opendaylight.sh
+++ b/build/overcloud-opendaylight.sh
@@ -42,6 +42,8 @@ pushd puppet-opendaylight > /dev/null
 git archive --format=tar.gz --prefix=opendaylight/ HEAD > ${BUILD_DIR}/puppet-opendaylight-carbon.tar.gz
 git checkout master
 git archive --format=tar.gz --prefix=opendaylight/ HEAD > ${BUILD_DIR}/puppet-opendaylight-master.tar.gz
+git checkout stable/nitrogen
+git archive --format=tar.gz --prefix=opendaylight/ HEAD > ${BUILD_DIR}/puppet-opendaylight-nitrogen.tar.gz
 popd > /dev/null
 
 # cache gluon
@@ -71,6 +73,7 @@ LIBGUESTFS_BACKEND=direct virt-customize \
     --upload ${BUILD_DIR}/puppet-opendaylight-carbon.tar.gz:/etc/puppet/modules/ \
     --run-command "cd /etc/puppet/modules/ && tar xzf puppet-opendaylight-carbon.tar.gz" \
     --upload ${BUILD_DIR}/puppet-opendaylight-master.tar.gz:/root/ \
+    --upload ${BUILD_DIR}/puppet-opendaylight-nitrogen.tar.gz:/root/ \
     --upload ${BUILD_DIR}/puppet-gluon.tar.gz:/etc/puppet/modules/ \
     --run-command "cd /etc/puppet/modules/ && tar xzf puppet-gluon.tar.gz" \
     --install python-click \
diff --git a/config/deploy/os-odl-sfc-ha.yaml b/config/deploy/os-odl-sfc-ha.yaml
index 6cb153d3..3a87bfe3 100644
--- a/config/deploy/os-odl-sfc-ha.yaml
+++ b/config/deploy/os-odl-sfc-ha.yaml
@@ -4,7 +4,7 @@ global_params:
 
 deploy_options:
   sdn_controller: opendaylight
-  odl_version: carbon
+  odl_version: nitrogen
   tacker: true
   congress: true
   sfc: true
diff --git a/config/deploy/os-odl-sfc-noha.yaml b/config/deploy/os-odl-sfc-noha.yaml
index c3b3379c..2b08af6c 100644
--- a/config/deploy/os-odl-sfc-noha.yaml
+++ b/config/deploy/os-odl-sfc-noha.yaml
@@ -4,7 +4,7 @@ global_params:
 
 deploy_options:
   sdn_controller: opendaylight
-  odl_version: carbon
+  odl_version: nitrogen
   tacker: true
   congress: true
   sfc: true
-- 
cgit