summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuraj Linkeš <juraj.linkes@pantheon.tech>2020-07-06 15:59:14 +0200
committerJuraj Linkeš <juraj.linkes@pantheon.tech>2020-07-08 08:09:25 +0000
commit34b30a1717e1e5c65524ce2db234dc1370344c4e (patch)
treed92cd9121b6a2c4dfa09e549dfc7768f542f38e9
parentcea930f9bb0d339019cb84101ee451d63c3c0368 (diff)
Unify arm and x86 vpp jobs
There are two sets of scripts doing basically the same thing, one set for arm and one for x86. Use the same scripts for both x86 and arm jobs, remove the unnecessary ones and update the scripts so that they work on both architectures. Change-Id: Ie9c29578d0f6af41e65c0f4723bc248e664cb8dd Signed-off-by: Juraj Linkeš <juraj.linkes@pantheon.tech>
-rw-r--r--jjb/scripts/setup_vpp_ubuntu_arm_test.sh60
-rw-r--r--jjb/scripts/setup_vpp_ubuntu_docker_test.sh2
-rw-r--r--jjb/scripts/vpp/arm-build-no-test.sh64
-rw-r--r--jjb/scripts/vpp/arm-build.sh78
-rw-r--r--jjb/scripts/vpp/build.sh16
-rw-r--r--jjb/vpp/vpp.yaml15
6 files changed, 25 insertions, 210 deletions
diff --git a/jjb/scripts/setup_vpp_ubuntu_arm_test.sh b/jjb/scripts/setup_vpp_ubuntu_arm_test.sh
deleted file mode 100644
index 45226d3..0000000
--- a/jjb/scripts/setup_vpp_ubuntu_arm_test.sh
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/bin/bash
-##############################################################################
-# Copyright (c) 2018 The Linux Foundation and others.
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.html
-##############################################################################
-set -e -o pipefail
-
-OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
-
-if ! [ -z ${DOCKER_TEST} ] ; then
- mount -o remount /dev/shm -o size=2G || true
- echo "/dev/shm remounted"
-fi
-
-##container server node detection
-grep search /etc/resolv.conf || true
-
-if [ "${OS_ID}" == "ubuntu" ]; then
- dpkg-query -W -f='${binary:Package}\t${Version}\n' || true
- echo "************************************************************************"
- echo "pip list:"
- pip list || true
- echo "************************************************************************"
- echo "Contents of /var/cache/vpp/python/virtualenv/lib/python2.7/site-packages:"
- ls -lth /var/cache/vpp/python/virtualenv/lib/python2.7/site-packages || true
- echo "************************************************************************"
- echo "Contents of br Downloads:"
- ls -lth /w/Downloads || true
- echo "************************************************************************"
- echo "Contents of /w/dpdk for test folks:"
- echo "************************************************************************"
- ls -lth /w/dpdk || true
-elif [ "${OS_ID}" == "centos" ]; then
- yum list installed || true
- pip list || true
-elif [ "${OS_ID}" == "opensuse" ]; then
- yum list installed || true
- pip list || true
-fi
-
-##This will remove any previously installed dpdk for old branch builds
-
-if [ "${GERRIT_BRANCH}" != "master" ]; then
- if [ "${OS_ID}" == "ubuntu" ]; then
- apt-get -y remove vpp-dpdk-dev || true
- apt-get -y remove vpp-dpdk-dkms || true
- apt-get -y remove vpp-ext-deps || true
- elif [ "${OS_ID}" == "centos" ]; then
- yum -y erase vpp-dpdk-devel || true
- yum -y erase vpp-ext-deps || true
- yum clean all || true
- elif [ "${OS_ID}" == "opensuse" ]; then
- yum -y erase vpp-dpdk-devel || true
- yum -y erase vpp-ext-deps || true
- fi
-fi
diff --git a/jjb/scripts/setup_vpp_ubuntu_docker_test.sh b/jjb/scripts/setup_vpp_ubuntu_docker_test.sh
index fe6a0fc..bdc1257 100644
--- a/jjb/scripts/setup_vpp_ubuntu_docker_test.sh
+++ b/jjb/scripts/setup_vpp_ubuntu_docker_test.sh
@@ -16,7 +16,7 @@ if ! [ -z ${DOCKER_TEST} ] ; then
# framework.VppTestCase.MIN_REQ_SHM + (num_cores * framework.VppTestCase.SHM_PER_PROCESS)
# 1073741824 == 1024M (1073741824 >> 20)
MEM=1024M
- if [[ $(uname -m) == 'aarch64' ]]
+ if [[ ${MAKE_PARALLEL_JOBS} == '16' ]]
then
# arm build are running with 16 cores, empirical evidence shows
# that 2048M is enough
diff --git a/jjb/scripts/vpp/arm-build-no-test.sh b/jjb/scripts/vpp/arm-build-no-test.sh
deleted file mode 100644
index ae5aa34..0000000
--- a/jjb/scripts/vpp/arm-build-no-test.sh
+++ /dev/null
@@ -1,64 +0,0 @@
-#!/bin/bash
-
-# This script wants environment variables
-# set by parallel-vars.sh script.
-# Otherwise "make test" is not parallelized,
-# possibly leading to jobs overstepping their time limit.
-
-# basic build script example
-set -xe -o pipefail
-
-OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
-OS_VERSION_ID=$(grep '^VERSION_ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
-
-echo OS_ID: $OS_ID
-echo OS_VERSION_ID: $OS_VERSION_ID
-
-# do nothing but print the current slave hostname
-hostname
-export CCACHE_DIR=/tmp/ccache
-if [ -d $CCACHE_DIR ];then
- echo $CCACHE_DIR exists
- du -sk $CCACHE_DIR
-else
- echo $CCACHE_DIR does not exist. This must be a new slave.
-fi
-
-echo "cat /etc/bootstrap.sha"
-if [ -f /etc/bootstrap.sha ];then
- cat /etc/bootstrap.sha
-else
- echo "Cannot find cat /etc/bootstrap.sha"
-fi
-
-echo "cat /etc/bootstrap-functions.sha"
-if [ -f /etc/bootstrap-functions.sha ];then
- cat /etc/bootstrap-functions.sha
-else
- echo "Cannot find cat /etc/bootstrap-functions.sha"
-fi
-
-echo "sha1sum of this script: ${0}"
-sha1sum $0
-
-echo "CC=${CC}"
-
-make UNATTENDED=yes install-dep
-make UNATTENDED=yes dpdk-install-dev
-make UNATTENDED=yes -C build-root PLATFORM=vpp TAG=vpp wipe-all install-packages
-make UNATTENDED=yes -C build-root PLATFORM=vpp TAG=vpp sample-plugin-install
-make UNATTENDED=yes -C build-root PLATFORM=vpp TAG=vpp libmemif-install
-make UNATTENDED=yes pkg-deb
-
-if [ "x${VPP_REPO}" == "x1" ]; then
- if [ "x${REBASE_NEEDED}" == "x1" ]; then
- echo "This patch to vpp is based on an old point in the tree that is likely"
- echo "to fail verify."
- echo "PLEASE REBASE PATCH ON THE CURRENT HEAD OF THE VPP REPO"
- exit 1
- fi
-fi
-
-echo "*******************************************************************"
-echo "* VPP ARM BUILD SUCCESSFULLY COMPLETED"
-echo "*******************************************************************"
diff --git a/jjb/scripts/vpp/arm-build.sh b/jjb/scripts/vpp/arm-build.sh
deleted file mode 100644
index 798e90e..0000000
--- a/jjb/scripts/vpp/arm-build.sh
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/bin/bash
-
-# This script wants environment variables
-# set by parallel-vars.sh script.
-# Otherwise "make test" is not parallelized,
-# possibly leading to jobs overstepping their time limit.
-
-# basic build script example
-set -xe -o pipefail
-
-OS_ID=$(grep '^ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
-OS_VERSION_ID=$(grep '^VERSION_ID=' /etc/os-release | cut -f2- -d= | sed -e 's/\"//g')
-
-echo OS_ID: $OS_ID
-echo OS_VERSION_ID: $OS_VERSION_ID
-
-# do nothing but print the current slave hostname
-hostname
-export CCACHE_DIR=/tmp/ccache
-if [ -d $CCACHE_DIR ];then
- echo $CCACHE_DIR exists
- du -sk $CCACHE_DIR
-else
- echo $CCACHE_DIR does not exist. This must be a new slave.
-fi
-
-echo "cat /etc/bootstrap.sha"
-if [ -f /etc/bootstrap.sha ];then
- cat /etc/bootstrap.sha
-else
- echo "Cannot find cat /etc/bootstrap.sha"
-fi
-
-echo "cat /etc/bootstrap-functions.sha"
-if [ -f /etc/bootstrap-functions.sha ];then
- cat /etc/bootstrap-functions.sha
-else
- echo "Cannot find cat /etc/bootstrap-functions.sha"
-fi
-
-echo "sha1sum of this script: ${0}"
-sha1sum $0
-
-echo "CC=${CC}"
-echo "IS_CSIT_VPP_JOB=${IS_CSIT_VPP_JOB}"
-# If and only if we are doing verify *after* make verify was made to work
-# and we are not a CSIT job just building packages, then use make verify,
-# else use the old build-root/vagrant/build.sh
-if [ "x${MAKE_PARALLEL_JOBS}" != "x" ]
-then
- echo "Building with MAKE_PARALLEL_JOBS=${MAKE_PARALLEL_JOBS}"
- TEST_JOBS="TEST_JOBS=${MAKE_PARALLEL_JOBS}"
-fi
-
-if (git log --oneline | grep 37682e1 > /dev/null 2>&1) && \
- [ "x${IS_CSIT_VPP_JOB}" != "xTrue" ]
-then
- echo "Building using \"make verify\""
- [ "x${DRYRUN}" == "xTrue" ] || make UNATTENDED=yes SKIP_AARCH64=yes ${TEST_JOBS} verify
-else
- echo "Building using \"make build-root/vagrant/build.sh\""
- [ "x${DRYRUN}" == "xTrue" ] || make UNATTENDED=yes install-dep
- [ "x${DRYRUN}" == "xTrue" ] || make UNATTENDED=yes dpdk-install-dev
- [ "x${DRYRUN}" == "xTrue" ] || build-root/vagrant/build.sh
-fi
-
-if [ "x${VPP_REPO}" == "x1" ]; then
- if [ "x${REBASE_NEEDED}" == "x1" ]; then
- echo "This patch to vpp is based on an old point in the tree that is likely"
- echo "to fail verify."
- echo "PLEASE REBASE PATCH ON THE CURRENT HEAD OF THE VPP REPO"
- exit 1
- fi
-fi
-
-echo "*******************************************************************"
-echo "* VPP ARM BUILD SUCCESSFULLY COMPLETED"
-echo "*******************************************************************"
diff --git a/jjb/scripts/vpp/build.sh b/jjb/scripts/vpp/build.sh
index 9fd989f..c6ab0d6 100644
--- a/jjb/scripts/vpp/build.sh
+++ b/jjb/scripts/vpp/build.sh
@@ -43,13 +43,23 @@ echo "IS_CSIT_VPP_JOB=${IS_CSIT_VPP_JOB}"
if [ "x${MAKE_PARALLEL_JOBS}" != "x" ]
then
echo "Building with MAKE_PARALLEL_JOBS=${MAKE_PARALLEL_JOBS}"
+ export TEST_JOBS="${MAKE_PARALLEL_JOBS}"
+else
+ export TEST_JOBS="auto"
+fi
+
+if [ "x${MAKE_PARALLEL_FLAGS}" != "x" ]
+then
+ echo "Building with MAKE_PARALLEL_FLAGS=${MAKE_PARALLEL_FLAGS}"
fi
+echo "Building with TEST_JOBS=${TEST_JOBS}"
+
if (git log --oneline | grep 37682e1 > /dev/null 2>&1) && \
[ "x${IS_CSIT_VPP_JOB}" != "xTrue" ]
then
echo "Building using \"make verify\""
- [ "x${DRYRUN}" == "xTrue" ] || make UNATTENDED=yes TEST_JOBS=auto verify
+ [ "x${DRYRUN}" == "xTrue" ] || make UNATTENDED=yes verify
else
echo "Building using \"make pkg-verify\""
[ "x${DRYRUN}" == "xTrue" ] || make UNATTENDED=yes pkg-verify
@@ -64,6 +74,8 @@ if [ "x${VPP_REPO}" == "x1" ]; then
fi
fi
+local_arch=$(uname -m)
+
echo "*******************************************************************"
-echo "* VPP BUILD SUCCESSFULLY COMPLETED"
+echo "* VPP ${local_arch^^} BUILD SUCCESSFULLY COMPLETED"
echo "*******************************************************************"
diff --git a/jjb/vpp/vpp.yaml b/jjb/vpp/vpp.yaml
index bfd0ddd..0bad3f1 100644
--- a/jjb/vpp/vpp.yaml
+++ b/jjb/vpp/vpp.yaml
@@ -417,13 +417,13 @@
builders:
- shell:
!include-raw-escape:
- - ../scripts/setup_vpp_ubuntu_arm_test.sh
+ - ../scripts/setup_vpp_ubuntu_docker_test.sh
- shell:
!include-raw-escape:
- ../scripts/setup_vpp_dpdk_dev_env.sh
- shell:
!include-raw-escape:
- - ../scripts/vpp/arm-build.sh
+ - ../scripts/vpp/build.sh
publishers:
- fdio-infra-shiplogs:
@@ -433,7 +433,7 @@
name: 'vpp-arm-merge-{stream}-{os}'
project-type: freestyle
- node: '{os}arm-m'
+ node: '{os}arm-us'
build-discarder:
daysToKeep: '{build-days-to-keep}'
@@ -462,6 +462,7 @@
description: Artifacts to archive to the logs server.
- make-parallel-jobs-parameter:
make-parallel-jobs: '{make-parallel-jobs}'
+ - gerrit-refspec-parameter
scm:
- gerrit-trigger-scm:
@@ -489,13 +490,16 @@
target: '/root'
- shell:
!include-raw-escape:
- - ../scripts/setup_vpp_ubuntu_arm_test.sh
+ - ../scripts/vpp/checkstyle.sh
+ - shell:
+ !include-raw-escape:
+ - ../scripts/setup_vpp_ubuntu_docker_test.sh
- shell:
!include-raw-escape:
- ../scripts/setup_vpp_dpdk_dev_env.sh
- shell:
!include-raw-escape:
- - ../scripts/vpp/arm-build-no-test.sh
+ - ../scripts/vpp/build.sh
- provide-maven-settings:
settings-file: 'vpp-settings'
@@ -934,6 +938,7 @@
description: Artifacts to archive to the logs server.
- make-parallel-jobs-parameter:
make-parallel-jobs: '{make-parallel-jobs}'
+ - gerrit-refspec-parameter
scm:
- gerrit-trigger-scm: