summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRicardo Noriega <rnoriega@redhat.com>2018-04-18 09:50:50 -0400
committerRicardo Noriega <rnoriega@redhat.com>2018-04-24 14:32:01 +0200
commitf8fd162ac74c83cd972311ee152b09bad6312999 (patch)
treebd95df492973983e7df74a90301b919e70927b8b
parent870c66456c3e4d600a880df5b3612e5002fd9922 (diff)
Fixing os-odl-sfc scenario
We need to build again OVS2.6 and apply yyang patches. apex-tripleo-heat-templates: I230b31dc9ed0ecc5046064628ba2f2505e589522 apex-puppet-tripleo: Icd433ddc6ae7de19a09f9e33b410a362c317138a Change-Id: Ia61216f6bd23ecaaa87b151452268c8ca04dc193 Signed-off-by: Ricardo Noriega <rnoriega@redhat.com>
-rw-r--r--build/CentOS-Updates.repo2
-rwxr-xr-xbuild/build_ovs_nsh.sh25
-rw-r--r--build/opnfv-environment.yaml2
-rwxr-xr-xbuild/overcloud-full.sh27
4 files changed, 54 insertions, 2 deletions
diff --git a/build/CentOS-Updates.repo b/build/CentOS-Updates.repo
index 8fc45d8..0bf2daa 100644
--- a/build/CentOS-Updates.repo
+++ b/build/CentOS-Updates.repo
@@ -1,5 +1,5 @@
#released updates
[updates-old]
name=CentOS-$releasever - Old Updates
-baseurl=http://mirror.centos.org/centos/7.3.1611/updates/x86_64/
+baseurl=http://mirror.centos.org/centos/7/updates/x86_64/
gpgcheck=0
diff --git a/build/build_ovs_nsh.sh b/build/build_ovs_nsh.sh
new file mode 100755
index 0000000..52d4701
--- /dev/null
+++ b/build/build_ovs_nsh.sh
@@ -0,0 +1,25 @@
+#!/usr/bin/env bash
+##############################################################################
+# Copyright (c) 2016 Tim Rozet (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
+
+yum -y install rpm-build autoconf automake libtool systemd-units openssl openssl-devel python python-twisted-core python-zope-interface python-six desktop-file-utils groff graphviz procps-ng libcap-ng libcap-ng-devel PyQt4 selinux-policy-devel kernel-devel kernel-headers kernel-tools
+./boot.sh
+libtoolize --force
+aclocal
+autoheader
+automake --force-missing --add-missing
+autoconf
+./configure
+yum -y install rpmdevtools
+# hack due to build pulling in kernel vxlan header
+kernel_vxlan="/usr/src/kernels/$(rpm -q kernel-headers | grep -Eo '[0-9].*x86_64')/include/net/vxlan.h"
+sed -i '/struct vxlan_metadata {/a\ u32 gpe;' $kernel_vxlan
+make rpm-fedora RPMBUILD_OPT="\"-D kversion `rpm -q kernel | rpmdev-sort | tail -n -1 | sed 's/^kernel-//'`\" --without check"
+make rpm-fedora-kmod RPMBUILD_OPT="\"-D kversion `rpm -q kernel | rpmdev-sort | tail -n -1 | sed 's/^kernel-//'`\""
diff --git a/build/opnfv-environment.yaml b/build/opnfv-environment.yaml
index 84bd2f7..962d9f3 100644
--- a/build/opnfv-environment.yaml
+++ b/build/opnfv-environment.yaml
@@ -104,7 +104,7 @@ parameter_defaults:
- OS::TripleO::Services::NeutronApi
- OS::TripleO::Services::NeutronCorePlugin
- OS::TripleO::Services::NeutronOvsAgent
-# - OS::TripleO::Services::NeutronSfcApi
+ - OS::TripleO::Services::NeutronSfcApi
- OS::TripleO::Services::RabbitMQ
- OS::TripleO::Services::HAproxy
- OS::TripleO::Services::Keepalived
diff --git a/build/overcloud-full.sh b/build/overcloud-full.sh
index 4740066..d4fef46 100755
--- a/build/overcloud-full.sh
+++ b/build/overcloud-full.sh
@@ -69,6 +69,7 @@ LIBGUESTFS_BACKEND=direct $VIRT_CUSTOMIZE \
--upload ${BUILD_ROOT}/patches/congress-parallel-execution.patch:/usr/lib/python2.7/site-packages/ \
--upload ${BUILD_ROOT}/patches/puppet-neutron-vpp-ml2-type_drivers-setting.patch:/usr/share/openstack-puppet/modules/neutron/ \
--run-command "cd /usr/share/openstack-puppet/modules/neutron && patch -p1 < puppet-neutron-vpp-ml2-type_drivers-setting.patch" \
+ --run-command "cd /usr/share/openstack-puppet/modules/neutron && patch -p1 < puppet-neutron-add-sfc.patch" \
--install openstack-utils \
-a overcloud-full_build.qcow2
# --upload ${BUILD_ROOT}/patches/puppet-neutron-add-external_network_bridge-option.patch:/usr/share/openstack-puppet/modules/neutron/ \
@@ -154,6 +155,32 @@ LIBGUESTFS_BACKEND=direct $VIRT_CUSTOMIZE \
# upload and install barometer packages
barometer_pkgs overcloud-full_build.qcow2
+ # Build OVS with NS
+ rm -rf ovs_nsh_patches
+ rm -rf ovs
+ git clone https://github.com/yyang13/ovs_nsh_patches.git
+ git clone https://github.com/openvswitch/ovs.git
+ pushd ovs > /dev/null
+ git checkout v2.6.1
+ cp ../ovs_nsh_patches/v2.6.1_centos7/*.patch ./
+ # Hack for build servers that have no git config
+ git config user.email "apex@opnfv.com"
+ git config user.name "apex"
+ git am *.patch
+ popd > /dev/null
+ tar czf ovs.tar.gz ovs
+
+LIBGUESTFS_BACKEND=direct $VIRT_CUSTOMIZE \
+ --upload ${BUILD_ROOT}/CentOS-Updates.repo:/etc/yum.repos.d/ \
+ --run-command "yum -y install kernel-devel-\$(rpm -q --queryformat '%{VERSION}-%{RELEASE}' kernel)" \
+ --run-command "yum -y install kernel-headers-\$(rpm -q --queryformat '%{VERSION}-%{RELEASE}' kernel)" \
+ --run-command "yum -y install kernel-tools-\$(rpm -q --queryformat '%{VERSION}-%{RELEASE}' kernel)" \
+ --upload ${BUILD_ROOT}/build_ovs_nsh.sh:/root/ \
+ --upload ovs.tar.gz:/root/ \
+ --run-command "cd /root/ && tar xzf ovs.tar.gz" \
+ --run-command "cd /root/ovs && /root/build_ovs_nsh.sh" \
+ -a overcloud-full_build.qcow2
+
fi # end x86_64 specific items
mv -f overcloud-full_build.qcow2 overcloud-full.qcow2