Merge "Moved smoke test repository and changed input arguments."
authorDan Radez <dradez@redhat.com>
Tue, 18 Oct 2016 19:40:50 +0000 (19:40 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Tue, 18 Oct 2016 19:40:50 +0000 (19:40 +0000)
22 files changed:
build/Makefile
build/c7-opnfv-x86_64-comps.xml
build/overcloud-full.sh
build/overcloud-onos.sh
build/overcloud-opendaylight-sfc.sh [deleted file]
build/puppet-neutron/lib/puppet/provider/neutron_agent_vpp/ini_setting.rb [new file with mode: 0644]
build/puppet-neutron/lib/puppet/type/neutron_agent_vpp.rb [new file with mode: 0644]
build/puppet-neutron/manifests/agents/ml2/networking-vpp.pp
build/puppet-neutron/manifests/plugins/ml2/networking-vpp.pp
build/rpm_specs/networking-vpp.spec [new file with mode: 0644]
build/rpm_specs/opnfv-apex-opendaylight-sfc.spec [deleted file]
build/variables.sh
ci/PR_revision.log
ci/build.sh
ci/clean.sh
ci/deploy.sh
docs/installationprocedure/baremetal.rst
docs/releasenotes/release-notes.rst
lib/installer/onos/onos_gw_mac_update.sh
lib/overcloud-deploy-functions.sh
lib/python/apex/network_settings.py
lib/undercloud-functions.sh

index b002ed6..9c66c82 100644 (file)
@@ -17,7 +17,6 @@ export RPMCOM = $(shell pwd)/noarch/opnfv-apex-common-$(RPMVERS)-$(shell echo ${
 export RPMUDR = $(shell pwd)/noarch/opnfv-apex-undercloud-$(RPMVERS)-$(shell echo ${RELEASE} | tr -d '_-').noarch.rpm
 export RPMODL = $(shell pwd)/noarch/opnfv-apex-$(RPMVERS)-$(shell echo ${RELEASE} | tr -d '_-').noarch.rpm
 export RPMONO = $(shell pwd)/noarch/opnfv-apex-onos-$(RPMVERS)-$(shell echo ${RELEASE} | tr -d '_-').noarch.rpm
-export RPMSFC = $(shell pwd)/noarch/opnfv-apex-opendaylight-sfc-$(RPMVERS)-$(shell echo ${RELEASE} | tr -d '_-').noarch.rpm
 
 
 .PHONY: all
@@ -27,20 +26,20 @@ all: iso
 clean: images-clean rpms-clean iso-clean tacker-clean congress-clean vpp-clean
 
 .PHONY: images
-images: undercloud overcloud-full overcloud-opendaylight overcloud-onos overcloud-opendaylight-sfc
+images: undercloud overcloud-full overcloud-opendaylight overcloud-onos
 
 .PHONY: images-clean
-images-clean: undercloud-clean overcloud-full-clean overcloud-opendaylight-clean overcloud-onos-clean overcloud-opendaylight-sfc-clean
+images-clean: undercloud-clean overcloud-full-clean overcloud-opendaylight-clean overcloud-onos-clean
        @rm -rf images/
 
 .PHONY: rpms
-rpms: common-rpm undercloud-rpm opendaylight-rpm onos-rpm opendaylight-sfc-rpm
+rpms: common-rpm undercloud-rpm opendaylight-rpm onos-rpm
 
 .PHONY: rpms-check
-rpms-check: common-rpm-check undercloud-rpm-check opendaylight-rpm-check onos-rpm-check opendaylight-sfc-rpm-check
+rpms-check: common-rpm-check undercloud-rpm-check opendaylight-rpm-check onos-rpm-check
 
 .PHONY: rpms-clean
-rpms-clean: common-rpm-clean undercloud-rpm-clean opendaylight-rpm-clean onos-rpm-clean opendaylight-sfc-rpm-clean
+rpms-clean: common-rpm-clean undercloud-rpm-clean opendaylight-rpm-clean onos-rpm-clean
 
 opnfv-apex-common.tar.gz:
        pushd ../ && git archive --format=tar.gz --prefix=opnfv-apex-common-$(RPMVERS)/ HEAD > build/opnfv-apex-common.tar.gz
@@ -197,11 +196,11 @@ $(MAVEN_FILE):
 networking-vpp-rpm: networking-vpp.noarch.rpm
 
 networking-vpp.noarch.rpm: networking-vpp
-       pushd networking-vpp && python setup.py bdist_rpm --binary-only
-       mv networking-vpp/dist/*.rpm networking-vpp.noarch.rpm
+       pushd networking-vpp && rpmbuild --clean -bb ../rpm_specs/networking-vpp.spec
+       mv networking-vpp/build/rpm/noarch/*.rpm networking-vpp.noarch.rpm
 
 networking-vpp:
-       git clone -b stable_vlan_rewrite https://github.com/fepan/networking-vpp.git
+       git clone https://git.openstack.org/openstack/networking-vpp
 
 ###############
 #  UNDERCLOUD #
@@ -318,35 +317,6 @@ $(RPMONO):
        # build the overcloud RPM
        rpmbuild --clean -ba rpm_specs/opnfv-apex-onos.spec -D '_topdir %(echo `pwd`)' -D '_builddir %(echo `pwd`)' -D '_sourcedir %(echo `pwd`)' -D '_rpmdir %(echo `pwd`)' -D '_specdir %(echo `pwd`)' -D '_srcrpmdir %(echo `pwd`)' -D "release $(shell echo $(RELEASE) | tr -d '_-')"
 
-###############
-#   ODL-SFC   #
-###############
-
-.PHONY: overcloud-opendaylight-sfc-clean
-overcloud-opendaylight-sfc-clean:
-       @rm -f images/overcloud-full-opendaylight-sfc.qcow2
-
-.PHONY: overcloud-opendaylight-sfc
-overcloud-opendaylight-sfc: images/overcloud-full-opendaylight-sfc.qcow2
-
-images/overcloud-full-opendaylight-sfc.qcow2: images/overcloud-full-opendaylight.qcow2
-       @echo "Building the Apex OpenDaylight Overcloud Image"
-       @./overcloud-opendaylight-sfc.sh
-
-opnfv-apex-opendaylight-sfc.tar.gz: images/overcloud-full-opendaylight-sfc.qcow2
-       tar -czf opnfv-apex-opendaylight-sfc.tar.gz --xform="s:images/overcloud-full-opendaylight-sfc.qcow2:opnfv-apex-opendaylight-sfc-$(RPMVERS)/build/images/overcloud-full-opendaylight-sfc.qcow2:" images/overcloud-full-opendaylight-sfc.qcow2
-
-.PHONY: opendaylight-sfc-rpm-check
-opendaylight-sfc-rpm-check: opnfv-apex-opendaylight-sfc.tar.gz
-       rpmbuild --clean -bi -bl rpm_specs/opnfv-apex-opendaylight-sfc.spec -D '_topdir %(echo `pwd`)' -D '_builddir %(echo `pwd`)' -D '_sourcedir %(echo `pwd`)' -D '_rpmdir %(echo `pwd`)' -D '_specdir %(echo `pwd`)' -D '_srcrpmdir %(echo `pwd`)' -D "release $(shell echo $(RELEASE) | tr -d '_-')"
-
-.PHONY: opendaylight-sfc-rpm
-opendaylight-sfc-rpm: opnfv-apex-opendaylight-sfc.tar.gz $(RPMSFC)
-
-$(RPMSFC):
-       @echo "Building the Apex OpenDaylight SFC RPM"
-       rpmbuild --clean -ba rpm_specs/opnfv-apex-opendaylight-sfc.spec -D '_topdir %(echo `pwd`)' -D '_builddir %(echo `pwd`)' -D '_sourcedir %(echo `pwd`)' -D '_rpmdir %(echo `pwd`)' -D '_specdir %(echo `pwd`)' -D '_srcrpmdir %(echo `pwd`)' -D "release $(shell echo $(RELEASE) | tr -d '_-')"
-
 ###############
 #    ISO      #
 ###############
@@ -385,7 +355,6 @@ iso:        iso-clean images rpms $(CENTISO)
        @ln $(RPMUDR) centos/Packages
        @ln $(RPMODL) centos/Packages
        @ln $(RPMONO) centos/Packages
-       @ln $(RPMSFC) centos/Packages
        # add packages to the centos packages
        cd centos/Packages && yumdownloader openvswitch
        cd centos/Packages && yumdownloader openstack-tripleo
index a9b0af0..67a0e51 100644 (file)
@@ -3,7 +3,7 @@
 <comps>
   <group>
     <id>apex-opendaylight</id>
-    <name>OPNFV Apex OpenDaylight (non-sfc) Support</name>
+    <name>OPNFV Apex OpenDaylight Support</name>
     <description>Disk images and configuration files used to launch an Apex OpenDaylight deployment.</description>
     <default>false</default>
     <uservisible>false</uservisible>
@@ -15,7 +15,7 @@
   </group>
   <group>
     <id>apex-onos</id>
-    <name>OPNFV Apex ONOS (non-sfc) Support</name>
+    <name>OPNFV Apex ONOS Support</name>
     <description>Disk images and configuration files used to launch an Apex ONOS deployment.</description>
     <default>false</default>
     <uservisible>false</uservisible>
       <packagereq type="mandatory">opnfv-undercloud</packagereq>
     </packagelist>
   </group>
-  <group>
-    <id>apex-opendaylight-sfc</id>
-    <name>OPNFV Apex OpenDaylight SFC Support</name>
-    <description>Disk images and configuration files used to launch an Apex ODL SFC deployment.</description>
-    <default>false</default>
-    <uservisible>false</uservisible>
-    <packagelist>
-      <packagereq type="mandatory">opnfv-apex-opendaylight-sfc</packagereq>
-      <packagereq type="mandatory">opnfv-common</packagereq>
-      <packagereq type="mandatory">opnfv-undercloud</packagereq>
-    </packagelist>
-  </group>
   <group>
     <id>additional-devel</id>
     <name>Additional Development</name>
       <groupid>virtualization-tools</groupid>
       <groupid>apex-opendaylight</groupid>
       <groupid>apex-onos</groupid>
-      <groupid>apex-opendaylight-sfc</groupid>
     </grouplist>
     <optionlist>
       <groupid>virtualization-platform</groupid>
       <groupid>virtualization-tools</groupid>
       <groupid>apex-opendaylight</groupid>
       <groupid>apex-onos</groupid>
-      <groupid>apex-opendaylight-sfc</groupid>
     </grouplist>
     <optionlist>
       <groupid>kde-desktop</groupid>
index 8ea5221..4fd3f1e 100755 (executable)
@@ -105,6 +105,7 @@ popd > /dev/null
 # upload the tacker puppet module and untar it
 LIBGUESTFS_BACKEND=direct virt-customize \
     --upload ../opnfv-puppet-tripleo.tar.gz:/etc/puppet/modules \
+    --run-command "yum update -y python-ipaddress rabbitmq-server erlang*" \
     --run-command "if ! rpm -qa | grep python-redis; then yum install -y python-redis; fi" \
     --run-command "sed -i 's/^#UseDNS.*$/UseDNS no/' /etc/ssh/sshd_config" \
     --run-command "sed -i 's/^GSSAPIAuthentication.*$/GSSAPIAuthentication no/' /etc/ssh/sshd_config" \
@@ -118,13 +119,15 @@ LIBGUESTFS_BACKEND=direct virt-customize \
     --run-command "pip install distro flask_restful" \
     --run-command "yum install -y etcd" \
     --run-command "pip install python-etcd" \
+    --run-command "puppet module install cristifalcas/etcd" \
+    --run-command "yum update -y puppet" \
     --install "centos-release-qemu-ev" \
-    --run-command "yum update -y" \
+    --run-command "yum update -y qemu-kvm-ev" \
     --run-command "yum remove -y qemu-system-x86" \
     --upload ../os-net-config.tar.gz:/usr/lib/python2.7/site-packages \
     --run-command "cd /usr/lib/python2.7/site-packages/ && rm -rf os_net_config && tar xzf os-net-config.tar.gz" \
-    --upload ../noarch/openstack-congress-2016.1-1.el7.centos.noarch.rpm:/root/ \
-    --install /root/openstack-congress-2016.1-1.el7.centos.noarch.rpm \
+    --upload ../noarch/$openstack_congress_pkg:/root/ \
+    --install /root/$openstack_congress_pkg \
     --install "python2-congressclient" \
     --upload puppet-congress.tar.gz:/etc/puppet/modules/ \
     --run-command "cd /etc/puppet/modules/ && tar xzf puppet-congress.tar.gz" \
@@ -132,7 +135,6 @@ LIBGUESTFS_BACKEND=direct virt-customize \
     --run-command "sed -i \"s/'--detailed-exitcodes',/'--detailed-exitcodes','-l','syslog','-l','console',/g\" /var/lib/heat-config/hooks/puppet" \
     --run-command "yum install -y /root/fdio/*.rpm" \
     --run-command "rm -f /etc/sysctl.d/80-vpp.conf" \
-    --run-command "tar zxvf /root/fdio/vpp_papi*.tar.gz -C /" \
     --install unzip \
     --upload puppet-fdio.tar.gz:/etc/puppet/modules \
     --run-command "cd /etc/puppet/modules && tar xzf puppet-fdio.tar.gz" \
@@ -151,6 +153,9 @@ LIBGUESTFS_BACKEND=direct virt-customize \
     --upload ../neutron/agent/l3/router_info.py:/root/fdio_neutron_l3/ \
     --upload ../puppet-neutron/manifests/agents/ml2/networking-vpp.pp:/etc/puppet/modules/neutron/manifests/agents/ml2/ \
     --upload ../puppet-neutron/manifests/plugins/ml2/networking-vpp.pp:/etc/puppet/modules/neutron/manifests/plugins/ml2/ \
+    --upload ../puppet-neutron/lib/puppet/type/neutron_agent_vpp.rb:/etc/puppet/modules/neutron/lib/puppet/type/ \
+    --mkdir /etc/puppet/modules/neutron/lib/puppet/provider/neutron_agent_vpp \
+    --upload ../puppet-neutron/lib/puppet/provider/neutron_agent_vpp/ini_setting.rb:/etc/puppet/modules/neutron/lib/puppet/provider/neutron_agent_vpp/ \
     -a overcloud-full_build.qcow2
 
 rm -rf ovs_nsh_patches
index b695983..2b3e522 100755 (executable)
@@ -18,12 +18,6 @@ cp -f overcloud-full.qcow2 overcloud-full-onos_build.qcow2
 #####    Adding ONOS to overcloud #####
 #######################################
 
-# upgrade ovs into ovs 2.5.90 with NSH function
-LIBGUESTFS_BACKEND=direct virt-customize --run-command "yum install -y /root/ovs/rpm/rpmbuild/RPMS/x86_64/${ovs_kmod_rpm_name}" \
-                                         --run-command "yum upgrade -y /root/ovs/rpm/rpmbuild/RPMS/x86_64/${ovs_rpm_name}" \
-                                         -a overcloud-full-onos_build.qcow2
-
-
 # get the onos files
 rm -rf puppet-onos
 populate_cache "$onos_release_uri/$onos_release_file"
diff --git a/build/overcloud-opendaylight-sfc.sh b/build/overcloud-opendaylight-sfc.sh
deleted file mode 100755 (executable)
index 444d284..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/bin/sh
-##############################################################################
-# Copyright (c) 2015 Tim Rozet (Red Hat), Dan Radez (Red Hat) and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-set -e
-source ./variables.sh
-pushd images > /dev/null
-
-################################################
-#####    Adding SFC+OpenDaylight overcloud #####
-################################################
-
-#copy opendaylight overcloud full to odl-sfc
-cp -f overcloud-full-opendaylight.qcow2 overcloud-full-opendaylight-sfc_build.qcow2
-
-# upgrade ovs into ovs 2.5.90 with NSH function
-LIBGUESTFS_BACKEND=direct virt-customize --run-command "yum install -y /root/ovs/rpm/rpmbuild/RPMS/x86_64/${ovs_kmod_rpm_name}" \
-                                         --run-command "yum upgrade -y /root/ovs/rpm/rpmbuild/RPMS/x86_64/${ovs_rpm_name}" \
-                                         -a overcloud-full-opendaylight-sfc_build.qcow2
-
-mv overcloud-full-opendaylight-sfc_build.qcow2 overcloud-full-opendaylight-sfc.qcow2
-popd > /dev/null
diff --git a/build/puppet-neutron/lib/puppet/provider/neutron_agent_vpp/ini_setting.rb b/build/puppet-neutron/lib/puppet/provider/neutron_agent_vpp/ini_setting.rb
new file mode 100644 (file)
index 0000000..595904c
--- /dev/null
@@ -0,0 +1,15 @@
+Puppet::Type.type(:neutron_agent_vpp).provide(
+  :ini_setting,
+  :parent => Puppet::Type.type(:openstack_config).provider(:ini_setting)
+) do
+
+  def self.file_path
+    '/etc/neutron/plugins/ml2/vpp_agent.ini'
+  end
+
+  # added for backwards compatibility with older versions of inifile
+  def file_path
+    self.class.file_path
+  end
+
+end
\ No newline at end of file
diff --git a/build/puppet-neutron/lib/puppet/type/neutron_agent_vpp.rb b/build/puppet-neutron/lib/puppet/type/neutron_agent_vpp.rb
new file mode 100644 (file)
index 0000000..f43a8b4
--- /dev/null
@@ -0,0 +1,28 @@
+Puppet::Type.newtype(:neutron_agent_vpp) do
+
+  ensurable
+
+  newparam(:name, :namevar => true) do
+    desc 'Section/setting name to manage from vpp agent config.'
+    newvalues(/\S+\/\S+/)
+  end
+
+  newproperty(:value) do
+    desc 'The value of the setting to be defined.'
+    munge do |value|
+      value = value.to_s.strip
+      value.capitalize! if value =~ /^(true|false)$/i
+      value
+    end
+  end
+
+  newparam(:ensure_absent_val) do
+    desc 'A value that is specified as the value property will behave as if ensure => absent was specified'
+    defaultto('<SERVICE DEFAULT>')
+  end
+
+  autorequire(:package) do
+    'networking-vpp'
+  end
+
+end
\ No newline at end of file
index c25c281..6184e00 100644 (file)
 #   tuples mapping physical network names to agent's node-specific physical
 #   network interfaces. Defaults to empty list.
 #
-# [*flat_network_if*]
-#   VPP interface used for flat network
-#   Defaults to ''.
+# [*etcd_host*]
+#   etcd server host name/ip
+#   Defaults to 127.0.0.1.
+#
+# [*etcd_port*]
+#   etcd server listening port.
+#   Defaults to 4001.
 #
 class neutron::agents::ml2::networking-vpp (
   $package_ensure   = 'present',
   $enabled          = true,
   $manage_service   = true,
   $physnets         = '',
-  $flat_network_if  = '',
+  $etcd_host        = '127.0.0.1',
+  $etcd_port        = 4001,
 ) {
 
   include ::neutron::params
 
+  Neutron_agent_vpp<||> ~> Service['networking-vpp-agent']
+
+  neutron_agent_vpp {
+    'ml2_vpp/physnets': value => $physnets;
+    'ml2_vpp/etcd_host': value => $etcd_host;
+    'ml2_vpp/etcd_port': value => $etcd_port;
+    'DEFAULT/host': value => $::fqdn;
+  }
+
   if $manage_service {
     if $enabled {
       $service_ensure = 'running'
@@ -43,14 +57,9 @@ class neutron::agents::ml2::networking-vpp (
     }
   }
 
-  neutron_plugin_ml2 {
-    'ml2_vpp/physnets': value => $physnets;
-    'ml2_vpp/flat_network_if': value => $flat_network_if;
-  }->
   service { 'networking-vpp-agent':
-    ensure    => $service_ensure,
-    name      => 'networking-vpp-agent',
-    enable    => $enabled,
-    tag       => 'neutron-service',
+    ensure => $service_ensure,
+    name   => 'networking-vpp-agent',
+    enable => $enabled,
   }
 }
\ No newline at end of file
index 26548d3..cf8fe17 100644 (file)
 # property for a package resource type.
 # Defaults to 'present'
 #
-# [*agents*]
-# Networking-vpp agents's addresses
-# Defaults to $::os_service_default
+# [*etcd_host*]
+# (required) etcd server host name or IP.
+# Defaults to '127.0.0.1'
+#
+# [*etcd_port*]
+# (optional) etcd server listening port.
+# Defaults to 4001.
+#
+# [*etcd_user*]
+# (optional) User name for etcd authentication
+# Defaults to ''.
+#
+# [*etcd_pass*]
+# (optional) Password for etcd authentication
+# Defaults to ''.
 #
 class neutron::plugins::ml2::networking-vpp (
   $package_ensure  = 'present',
-  $agents          = $::os_service_default,
+  $etcd_host       = '127.0.0.1',
+  $etcd_port       = 4001,
+  $etcd_user       = '',
+  $etcd_pass       = '',
 ) {
   require ::neutron::plugins::ml2
 
@@ -28,6 +43,9 @@ class neutron::plugins::ml2::networking-vpp (
   )
 
   neutron_plugin_ml2 {
-    'ml2_vpp/agents': value => $agents;
+    'ml2_vpp/etcd_host': value => $etcd_host;
+    'ml2_vpp/etcd_port': value => $etcd_port;
+    'ml2_vpp/etcd_user': value => $etcd_user;
+    'ml2_vpp/etcd_pass': value => $etcd_pass;
   }
 }
diff --git a/build/rpm_specs/networking-vpp.spec b/build/rpm_specs/networking-vpp.spec
new file mode 100644 (file)
index 0000000..2fd4e04
--- /dev/null
@@ -0,0 +1,50 @@
+%define name networking-vpp
+%define version %(python setup.py --version)
+%define release 1
+%define _topdir %(pwd)/build/rpm
+%define _builddir %(pwd)
+%define _rpmdir %(pwd)/build/rpm
+
+Summary: OpenStack Networking for VPP
+Name: %{name}
+Version: %{version}
+Release: %{release}
+License: Apache 2.0
+Group: Development/Libraries
+BuildArch: noarch
+Requires: vpp
+Vendor: OpenStack <openstack-dev@lists.openstack.org>
+Packager: Feng Pan <fpan@redhat.com>
+Url: http://www.openstack.org/
+
+%description
+ML2 Mechanism driver and small control plane for OpenVPP forwarder
+
+%prep
+cat << EOF > %{_builddir}/networking-vpp-agent.service
+[Unit]
+Description=Networking VPP ML2 Agent
+
+[Service]
+ExecStartPre=/usr/bin/systemctl is-active vpp
+ExecStart=/usr/bin/vpp-agent --config-file /etc/neutron/plugins/ml2/vpp_agent.ini
+Type=simple
+Restart=on-failure
+RestartSec=5s
+
+[Install]
+WantedBy=multi-user.target
+
+EOF
+
+%install
+/usr/bin/python setup.py install -O1 --root=$RPM_BUILD_ROOT --record=INSTALLED_FILES
+mkdir -p %{buildroot}/usr/lib/systemd/system
+install %{_builddir}/networking-vpp-agent.service %{buildroot}/usr/lib/systemd/system
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files -f INSTALLED_FILES
+%defattr(-,root,root)
+%attr(644,root,root) /usr/lib/systemd/system/networking-vpp-agent.service
diff --git a/build/rpm_specs/opnfv-apex-opendaylight-sfc.spec b/build/rpm_specs/opnfv-apex-opendaylight-sfc.spec
deleted file mode 100644 (file)
index a63ec7c..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-Name:          opnfv-apex-opendaylight-sfc
-Version:       3.0
-Release:       %{release}
-Summary:       Overcloud Disk images for OPNFV Apex OpenDaylight with SFC deployment
-
-Group:         System Environment
-License:       Apache 2.0
-URL:           https://gerrit.opnfv.org/gerrit/apex.git
-Source0:       opnfv-apex-opendaylight-sfc.tar.gz
-
-Provides:       opnfv-apex-sdn
-BuildArch:     noarch
-Requires:      opnfv-apex-common opnfv-apex-undercloud
-
-%description
-Overcloud Disk images for OPNFV Apex OpenDaylight with SFC deployment
-https://wiki.opnfv.org/apex
-
-%prep
-%setup -q
-
-%install
-mkdir -p %{buildroot}%{_var}/opt/opnfv/images/
-install build/images/overcloud-full-opendaylight-sfc.qcow2 %{buildroot}%{_var}/opt/opnfv/images/
-
-%files
-%defattr(644, root, root, -)
-%{_var}/opt/opnfv/images/overcloud-full-opendaylight-sfc.qcow2
-
-%changelog
-* Mon Apr 04 2016 Dan Radez <dradez@redhat.com> - 3.0-0
-- Version update for Colorado
-* Tue Jan 19 2016 Dan Radez <dradez@redhat.com> - 2.1-1
-- Initial Packaging
index 0308580..6d65718 100644 (file)
@@ -14,6 +14,7 @@ onos_release_file=onos-1.6.0-rc2.tar.gz
 onos_jdk_uri=http://artifacts.opnfv.org/apex/colorado
 onos_ovs_uri=http://artifacts.opnfv.org/apex/colorado
 onos_ovs_pkg=package_ovs_rpm3.tar.gz
+openstack_congress_pkg="openstack-congress-2016.1-1$(rpm -E '%dist').noarch.rpm"
 doctor_driver=https://raw.githubusercontent.com/openstack/congress/master/congress/datasources/doctor_driver.py
 if [ -z ${GS_PATHNAME+x} ]; then
     GS_PATHNAME=/colorado
@@ -29,16 +30,12 @@ dpdk_rpms=(
 
 fdio_uri_base=http://artifacts.opnfv.org/apex/colorado
 fdio_pkgs=(
-'vpp-16.09-rc1~7_gea60221~b1030.x86_64.rpm'
-'vpp-devel-16.09-rc1~7_gea60221~b1030.x86_64.rpm'
-'vpp-lib-16.09-rc1~7_gea60221~b1030.x86_64.rpm'
-'vpp_papi-1.0.linux-x86_64.tar.gz'
+'vpp-16.09-release.x86_64.rpm'
+'vpp-devel-16.09-release.x86_64.rpm'
+'vpp-lib-16.09-release.x86_64.rpm'
+'vpp-python-api-16.09-release.x86_64.rpm'
 )
-honeycomb_pkg='honeycomb-1.0.0-1609.noarch.rpm'
-
-
-ovs_rpm_name=openvswitch-2.5.90-1.el7.centos.x86_64.rpm
-ovs_kmod_rpm_name=openvswitch-kmod-2.5.90-1.el7.centos.x86_64.rpm
+honeycomb_pkg='honeycomb-1.16.9-FINAL.noarch.rpm'
 
 virt_uri_base=https://people.redhat.com/~rjones/libguestfs-RHEL-7.3-preview
 libguestfs_pkg='libguestfs-1.32.7-3.el7.x86_64.rpm'
index f7b832e..16cf08f 100644 (file)
@@ -42,3 +42,6 @@
 80,Change TenantNIC and PublicNIC to be role specific
 81,Fix duplicate NeutronServicePlugins
 82,Fixes neutron sdnvpn config resource
+86,Moves sdnvpn config to env file
+87,Pass vlan flag to fdio module when vlan is used for tenant network
+88,Default tenant_nic to its physical name
index f3ab497..f1333ce 100755 (executable)
@@ -132,9 +132,6 @@ if [[ "$MAKE_TARGETS" == "images" ]]; then
         if [[ $commit_file_list == *build/rpm_specs/opnfv-apex-onos.spec* ]]; then
             MAKE_TARGETS+=" onos-rpm-check"
         fi
-        if [[ $commit_file_list == *build/rpm_specs/opnfv-apex-opendaylight-sfc.spec* ]]; then
-            MAKE_TARGETS+=" opendaylight-sfc-rpm-check"
-        fi
     fi
 fi
 
index c00a4df..1e5e320 100755 (executable)
@@ -30,8 +30,8 @@ for lib in common-functions parse-functions; do
 done
 
 vm_index=4
-ovs_bridges="br-admin br-tenant br-public br-storage"
-ovs_bridges+=" br-private br-external" # Legecy names, remove in E river
+ovs_bridges="br-admin br-tenant br-external br-storage"
+ovs_bridges+=" br-private br-public" # Legacy names, remove in E river
 
 #OPNFV_NETWORK_TYPES=$(python3 -c 'from apex.common.constants import OPNFV_NETWORK_TYPES; print(" ".join(OPNFV_NETWORK_TYPES))')
 OPNFV_NETWORK_TYPES+=" admin tenant external storage api"
index edc6062..9affa80 100755 (executable)
@@ -28,6 +28,9 @@ ntp_server="pool.ntp.org"
 post_config="TRUE"
 debug="FALSE"
 
+ovs_rpm_name=openvswitch-2.5.90-1.el7.centos.x86_64.rpm
+ovs_kmod_rpm_name=openvswitch-kmod-2.5.90-1.el7.centos.x86_64.rpm
+
 declare -i CNT
 declare UNDERCLOUD
 declare -A deploy_options_array
index 2de6e8a..3224dd9 100644 (file)
@@ -119,7 +119,6 @@ Install Bare Metal Jumphost
 
     - opnfv-apex                  - OpenDaylight L2 / L3 and ONOS support *
     - opnfv-apex-onos             - ONOS support *
-    - opnfv-apex-opendaylight-sfc - OpenDaylight SFC support *
     - opnfv-apex-undercloud       - (reqed) Undercloud Image
     - opnfv-apex-common           - (reqed) Supporting config files and scripts
     - python34-markupsafe         - (reqed) Dependency of opnfv-apex-common **
@@ -127,9 +126,9 @@ Install Bare Metal Jumphost
     - python3-ipmi                - (reqed) Dependency of opnfv-apex-common **
 
     \* One or more of these RPMs is required
-    Only one of opnfv-apex, opnfv-apex-onos and opnfv-apex-opendaylight-sfc is
-    required. It is safe to leave the unneeded SDN controller's RPMs
-    uninstalled if you do not intend to use them.
+    Only one of opnfv-apex or opnfv-apex-onos is required. It is safe to leave
+    the unneeded SDN controller's RPMs uninstalled if you do not intend to use
+    them.
 
     ** These RPMs are not yet distributed by CentOS or EPEL.
     Apex has built these for distribution with Apex while CentOS and EPEL do
index 52b676e..927c07c 100644 (file)
@@ -224,7 +224,6 @@ Software Deliverables
 - Apex .iso file
 - Apex overcloud .rpm (opnfv-apex) - For nosdn and OpenDaylight Scenarios
 - Apex overcloud onos .rpm (opnfv-apex-onos) - ONOS Scenarios
-- Apex overcloud ODL SFC .rpm (opnfv-apex-opendaylight-sfc) - ODL SFC Scenario
 - Apex undercloud .rpm (opnfv-apex-undercloud)
 - Apex common .rpm (opnfv-apex-common)
 - build.sh - Builds the above artifacts
index 93e63c8..3b3b072 100644 (file)
@@ -38,7 +38,7 @@ EOI
   fi
 
   # get gateway mac
-  GW_MAC=$(arping ${GW_IP} -c 1 -I br-public | grep -Eo '([0-9a-fA-F]{2})(([/\s:-][0-9a-fA-F]{2}){5})')
+  GW_MAC=$(arping ${GW_IP} -c 1 -I br-external | grep -Eo '([0-9a-fA-F]{2})(([/\s:-][0-9a-fA-F]{2}){5})')
 
   if [ -z "$GW_MAC" ]; then
     echo "ERROR: Failed to find gateway mac for ${GW_IP}"
index 2066f15..18d1ec4 100755 (executable)
@@ -29,14 +29,6 @@ function overcloud_deploy {
       DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/opendaylight.yaml"
     fi
     SDN_IMAGE=opendaylight
-    if [ "${deploy_options_array['sfc']}" == 'True' ]; then
-      SDN_IMAGE+=-sfc
-      if [ ! -f $RESOURCES/overcloud-full-${SDN_IMAGE}.qcow2 ]; then
-          echo "${red} $RESOURCES/overcloud-full-${SDN_IMAGE}.qcow2 is required to execute an SFC deployment."
-          echo "Please install the opnfv-apex-opendaylight-sfc package to provide this overcloud image for deployment.${reset}"
-          exit 1
-      fi
-    fi
   elif [ "${deploy_options_array['sdn_controller']}" == 'opendaylight-external' ]; then
     DEPLOY_OPTIONS+=" -e /usr/share/openstack-tripleo-heat-templates/environments/opendaylight-external.yaml"
     SDN_IMAGE=opendaylight
@@ -67,7 +59,6 @@ function overcloud_deploy {
   # Make sure the correct overcloud image is available
   if [ ! -f $RESOURCES/overcloud-full-${SDN_IMAGE}.qcow2 ]; then
       echo "${red} $RESOURCES/overcloud-full-${SDN_IMAGE}.qcow2 is required to execute your deployment."
-      echo "Both ONOS and OpenDaylight are currently deployed from this image."
       echo "Please install the opnfv-apex package to provide this overcloud image for deployment.${reset}"
       exit 1
   fi
@@ -117,6 +108,13 @@ EOF
                                                  --run-command "sed -i 's/\\(^\\s\\+\\)\\(start_daemon "$OVS_VSWITCHD_PRIORITY"\\)/\\1umask 0002 \\&\\& \\2/' /usr/share/openvswitch/scripts/ovs-ctl" \
                                                  -a overcloud-full.qcow2
       fi
+
+      if [ "${deploy_options_array['sfc']}" == 'True' ]; then
+          # upgrade ovs into ovs 2.5.90 with NSH function
+          LIBGUESTFS_BACKEND=direct virt-customize --run-command "yum install -y /root/ovs/rpm/rpmbuild/RPMS/x86_64/${ovs_kmod_rpm_name}" \
+                                                   --run-command "yum upgrade -y /root/ovs/rpm/rpmbuild/RPMS/x86_64/${ovs_rpm_name}" \
+                                                   -a overcloud-full.qcow2
+      fi
 EOI
 
   elif [ "${deploy_options_array['dataplane']}" != 'ovs' ]; then
index 006d18c..ca40ba9 100644 (file)
@@ -112,7 +112,7 @@ class NetworkSettings(dict):
 
         if 'dns-domain' not in self:
             self['domain_name'] = DOMAIN_NAME
-        self['dns_servers'] = self.get('dns_servers', DNS_SERVERS)
+        self['dns_servers'] = self.get('dns_nameservers', DNS_SERVERS)
 
     def _validate_overcloud_nic_order(self, network):
         """
index 98552f2..6ba9a54 100755 (executable)
@@ -62,6 +62,7 @@ function setup_undercloud_vm {
         --run-command "cp /root/.ssh/authorized_keys /home/stack/.ssh/" \
         --run-command "chown stack:stack /home/stack/.ssh/authorized_keys && chmod 600 /home/stack/.ssh/authorized_keys"
     virsh start undercloud
+    virsh autostart undercloud
   fi
 
   sleep 10 # let undercloud get started up