Add stable/2402 branch and remove stable/2306 branch to docker executor image scripts
[ci-management.git] / docker / scripts / dbld_vpp_install_packages.sh
index e0d1f27..5e1e0f8 100755 (executable)
@@ -18,8 +18,6 @@ set -euxo pipefail
 export CIMAN_DOCKER_SCRIPTS=${CIMAN_DOCKER_SCRIPTS:-"$(dirname $BASH_SOURCE)"}
 . "$CIMAN_DOCKER_SCRIPTS/lib_vpp.sh"
 . "$CIMAN_DOCKER_SCRIPTS/lib_apt.sh"
-. "$CIMAN_DOCKER_SCRIPTS/lib_yum.sh"
-. "$CIMAN_DOCKER_SCRIPTS/lib_dnf.sh"
 
 must_be_run_in_docker_build
 
@@ -37,37 +35,37 @@ for branch in ${VPP_BRANCHES[$OS_NAME]} ; do
 
     # Install OS packages
     make_vpp "install-dep" "$branch"
-    make_vpp "centos-pyyaml" "$branch" # VPP Makefile tests for centos versions
-    if [ "$OS_ID" = "ubuntu" ] ; then
-        # TODO: fix VPP stable/2005 bug in sphinx-make.sh
-        #       which fails on 'yum install python3-venv'
-        #       that does not exist.
-        # 'Make docs jobs are only run on ubuntu executors
-        #  so only run for ubuntu build executors until fixed.
-        make_vpp "docs-venv" "$branch"
-    elif [ "$OS_NAME" = "debian-9" ] ; then
-        apt_override_cmake_install_with_pip3_version
-    fi
 
     # Download, build, and cache external deps packages
     make_vpp "install-ext-deps" "$branch"
-    set +e
     vpp_ext_dir="$DOCKER_VPP_DIR/build/external"
-    [ -d "$vpp_ext_dir/downloads" ] \
-        && rsync -ac "$vpp_ext_dir/downloads/." "$DOCKER_DOWNLOADS_DIR"
-    [ -n "$(ls $vpp_ext_dir/*.deb)" ] \
-        && rsync -ac "$vpp_ext_dir/*.deb" "$DOCKER_DOWNLOADS_DIR"
-    [ -n "$(ls $vpp_ext_dir/*.rpm)" ] \
-        && rsync -ac "$vpp_ext_dir/*.rpm" "$DOCKER_DOWNLOADS_DIR"
-    set -e
+    rsync -ac $vpp_ext_dir/downloads/. $DOCKER_DOWNLOADS_DIR || true
+    if which apt >/dev/null ; then
+        vpp_ext_deps_pkg=$vpp_ext_dir/$(dpkg -l vpp-ext-deps 2>/dev/null | mawk '/vpp-ext-deps/{print $2"_"$3"_"$4".deb"}')
+    else
+        echo "ERROR: Package Manager not installed!"
+        exit 1
+    fi
+    if [ -f "$vpp_ext_deps_pkg" ] ; then
+        cp -f $vpp_ext_deps_pkg $DOCKER_DOWNLOADS_DIR
+    else
+        echo "ERROR: Missing VPP external deps package: '$vpp_ext_deps_pkg'"
+        exit 1
+    fi
+    # TODO: remove this after all supported VPP branches have removed
+    # python3-virtualenv & virtualenv from install-deps which are no longer
+    # used in vpp repo.  These packages can mess up csit virtualenv
+    # installation which uses pip3
+    sudo apt remove -y --purge --autoremove python3-virtualenv virtualenv || true
 
     # Install/cache python packages
+    make_vpp_test "test-dep" "$branch"
     if [ "$OS_ID" = "ubuntu" ] ; then
-        make_vpp_test "test-dep" "$branch"
-        make_vpp_test "doc" "$branch"
         make_vpp test-wipe "$branch"
-        make_vpp "bootstrap-doxygen" "$branch"
     fi
+    # Clean up virtual environment
+    git checkout -q -- .
+    git clean -qfdx
 
     # Dump packages installed
     case "$DOCKERFILE_FROM" in
@@ -75,10 +73,6 @@ for branch in ${VPP_BRANCHES[$OS_NAME]} ; do
             dump_apt_package_list "$branch" ;;
         *debian*)
             dump_apt_package_list "$branch" ;;
-        *centos:7)
-            dump_yum_package_list "$branch" ;;
-        *centos:8)
-            dump_dnf_package_list "$branch" ;;
     esac
 done