summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xbuild/honeycomb-jar-replace.sh19
-rwxr-xr-xbuild/overcloud-full.sh15
-rwxr-xr-xbuild/overcloud-opendaylight.sh4
-rw-r--r--build/variables.sh8
-rwxr-xr-xlib/overcloud-deploy-functions.sh8
5 files changed, 51 insertions, 3 deletions
diff --git a/build/honeycomb-jar-replace.sh b/build/honeycomb-jar-replace.sh
new file mode 100755
index 00000000..f89ddda7
--- /dev/null
+++ b/build/honeycomb-jar-replace.sh
@@ -0,0 +1,19 @@
+#!/usr/bin/env bash
+JARS=$(find /usr/share/java/ -type f -iname 'jvpp-*.jar')
+if [ -z "$JARS" ]; then
+ echo "ERROR: JARS to replace from vpp-api-java are empty!"
+ exit 1
+fi
+
+for JAR in $JARS; do
+ JAR_PREFIX=$(basename $JAR | sed -n 's/-[0-9]\+\.[0-9]\+\.jar$//p')
+ JAR_VERSION=$(basename $JAR | grep -Eo '[0-9]+.[0-9]+')
+ HC_JAR_DIR=/opt/honeycomb/lib/io/fd/vpp/${JAR_PREFIX}/${JAR_VERSION}-SNAPSHOT
+ if [ ! -d "$HC_JAR_DIR" ]; then
+ echo "ERROR: Honeycomb JAR destination directory does not exist!"
+ exit 1
+ else
+ cp -f ${JAR} ${HC_JAR_DIR}/${JAR_PREFIX}-${JAR_VERSION}-SNAPSHOT.jar
+ echo "INFO: VPP API JAR: ${JAR} copied to ${HC_JAR_DIR}"
+ fi
+done
diff --git a/build/overcloud-full.sh b/build/overcloud-full.sh
index b94c0cb0..4222b278 100755
--- a/build/overcloud-full.sh
+++ b/build/overcloud-full.sh
@@ -80,8 +80,15 @@ EOF
# Get Real Time Kernel from kvm4nfv
populate_cache $kvmfornfv_uri_base/$kvmfornfv_kernel_rpm
-# Increase disk size by 500MB to accommodate more packages
-qemu-img resize overcloud-full_build.qcow2 +500MB
+# ODL/FDIO packages frozen for L2 scenarios
+fdio_l2_pkg_str=''
+for package in ${fdio_l2_pkgs[@]}; do
+ wget "$fdio_l2_uri_base/$package"
+ fdio_l2_pkg_str+=" --upload ${BUILD_DIR}/${package}:/root/fdio_l2/"
+done
+
+# Increase disk size by 900MB to accommodate more packages
+qemu-img resize overcloud-full_build.qcow2 +900MB
# expand file system to max disk size
# installing forked opnfv-puppet-tripleo
@@ -105,9 +112,11 @@ LIBGUESTFS_BACKEND=direct virt-customize \
--run-command "mkdir /root/dpdk_rpms" \
--upload ${BUILD_DIR}/fdio.repo:/etc/yum.repos.d/fdio.repo \
$dpdk_pkg_str \
- --run-command "yum install --downloadonly --downloaddir=/root/fdio vpp vpp-devel vpp-lib vpp-api-python vpp-plugins" \
+ --run-command "yum install --downloadonly --downloaddir=/root/fdio vpp vpp-devel vpp-lib vpp-api-python vpp-plugins vpp-api-java" \
--upload ${BUILD_DIR}/noarch/$netvpp_pkg:/root/fdio \
--run-command "yum install -y /root/fdio/*.rpm" \
+ --run-command "mkdir /root/fdio_l2" \
+ $fdio_l2_pkg_str \
--run-command "yum install -y etcd" \
--install python-etcd \
--run-command "puppet module install cristifalcas/etcd" \
diff --git a/build/overcloud-opendaylight.sh b/build/overcloud-opendaylight.sh
index cbb2178e..4a2173d0 100755
--- a/build/overcloud-opendaylight.sh
+++ b/build/overcloud-opendaylight.sh
@@ -88,8 +88,12 @@ LIBGUESTFS_BACKEND=direct virt-customize \
--upload ${BUILD_DIR}/opendaylight_master.repo:/etc/yum.repos.d/opendaylight.repo \
--run-command "yum install --downloadonly --downloaddir=/root/master/ opendaylight" \
--upload ${BUILD_DIR}/opendaylight.repo:/etc/yum.repos.d/opendaylight.repo \
+ --run-command "wget ${fdio_l2_uri_base}/honeycomb-1.17.04-2439.noarch.rpm -O /root/fdio_l2/honeycomb-1.17.04-2439.noarch.rpm" \
+ --run-command "wget ${fdio_l2_uri_base}/opendaylight-6.0.0-0.1.20170228snap4111.el7.noarch.rpm -O /root/fdio_l2/opendaylight-6.0.0-0.1.20170228snap4111.el7.noarch.rpm" \
--install opendaylight,python-networking-odl \
--install honeycomb \
+ --upload ${BUILD_ROOT}/honeycomb-jar-replace.sh:/root/ \
+ --run-command "/root/honeycomb-jar-replace.sh" \
--upload ${BUILD_DIR}/puppet-opendaylight.tar.gz:/etc/puppet/modules/ \
--run-command "cd /etc/puppet/modules/ && tar xzf puppet-opendaylight.tar.gz" \
--upload ${BUILD_DIR}/networking-bgpvpn.tar.gz:/root/ \
diff --git a/build/variables.sh b/build/variables.sh
index 4ba591c4..be610d43 100644
--- a/build/variables.sh
+++ b/build/variables.sh
@@ -57,3 +57,11 @@ netvpp_commit=$(git ls-remote ${netvpp_repo} ${netvpp_branch} | awk '{print subs
netvpp_pkg=python-networking-vpp-0.0.1-1.git${NETVPP_COMMIT}$(rpm -E %dist).noarch.rpm
gluon_rpm=gluon-0.0.1-1_20170216.noarch.rpm
+fdio_l2_uri_base=http://artifacts.opnfv.org/apex/danube/fdio_l2_rpms
+fdio_l2_pkgs=(
+'vpp-17.04-rc0~300_gdef19da~b1923.x86_64.rpm'
+'vpp-api-python-17.04-rc0~300_gdef19da~b1923.x86_64.rpm'
+'vpp-devel-17.04-rc0~300_gdef19da~b1923.x86_64.rpm'
+'vpp-lib-17.04-rc0~300_gdef19da~b1923.x86_64.rpm'
+'vpp-plugins-17.04-rc0~300_gdef19da~b1923.x86_64.rpm'
+)
diff --git a/lib/overcloud-deploy-functions.sh b/lib/overcloud-deploy-functions.sh
index d7e9b7e0..a46c6c6b 100755
--- a/lib/overcloud-deploy-functions.sh
+++ b/lib/overcloud-deploy-functions.sh
@@ -189,6 +189,14 @@ EOI
EOI
fi
+ # Override any previous packages if FDIO and L2
+ if [[ "${deploy_options_array['vpp']}" == 'True' && "${deploy_options_array['sdn_l3']}" == "False" ]]; then
+ ssh -T ${SSH_OPTIONS[@]} "stack@$UNDERCLOUD" <<EOI
+ LIBGUESTFS_BACKEND=direct virt-customize --run-command "yum -y remove opendaylight vpp vpp-devel vpp-api-python vpp-lib vpp-plugins honeycomb" \
+ --run-command "yum -y install /root/fdio_l2/*.rpm" \
+ -a overcloud-full.qcow2
+EOI
+ fi
# check if ceph should be enabled
if [ "${deploy_options_array['ceph']}" == 'True' ]; then