diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt index 27a5ca7e315..f1e64b5713b 100644 --- a/scripts/CMakeLists.txt +++ b/scripts/CMakeLists.txt @@ -13,15 +13,12 @@ set(shellcheck_skip_list "${OpenVINO_SOURCE_DIR}/src/plugins/intel_cpu/thirdparty" "${OpenVINO_SOURCE_DIR}/src/plugins/intel_gpu/thirdparty" "${OpenVINO_SOURCE_DIR}/src/bindings/python/thirdparty/pybind11" - "${OpenVINO_SOURCE_DIR}/tools/pot/thirdparty" "${TEMP}") # TODO fix and enable back list(APPEND shellcheck_skip_list "${OpenVINO_SOURCE_DIR}/scripts/install_dependencies/install_NEO_OCL_driver.sh" - "${OpenVINO_SOURCE_DIR}/scripts/install_dependencies/install_openvino_dependencies.sh" - "${OpenVINO_SOURCE_DIR}/src/bindings/python/tests/test_onnx/model_zoo_preprocess.sh" - "${OpenVINO_SOURCE_DIR}/src/bindings/python/tests_compatibility/test_onnx/model_zoo_preprocess.sh") + "${OpenVINO_SOURCE_DIR}/scripts/install_dependencies/install_openvino_dependencies.sh") if(shellcheck_VERSION VERSION_GREATER_EQUAL 0.7.0) list(APPEND shellcheck_skip_list diff --git a/scripts/install_dependencies/install_openvino_dependencies.sh b/scripts/install_dependencies/install_openvino_dependencies.sh index 03861d6a81c..d46578850e0 100755 --- a/scripts/install_dependencies/install_openvino_dependencies.sh +++ b/scripts/install_dependencies/install_openvino_dependencies.sh @@ -8,8 +8,8 @@ set -e #=================================================================================================== # Option parsing -default_comp=(core dev python myriad cl_compiler) -all_comp=(${default_comp[@]} opencv_req opencv_opt) +default_comp=(core dev python) +all_comp=("${default_comp[@]}" opencv_req opencv_opt) os=${os:-auto} # public options @@ -30,7 +30,7 @@ while :; do echo " -y non-interactive run (off)" echo " -n dry-run, assume no (off)" echo " -c= install component , can be repeated (${all_comp[*]})" - echo " -e add extra repositories (RHEL 8) (off)" + echo " -e add extra repositories (RHEL 7, 8, 9) (off)" echo " -p print package list and exit (off)" exit ;; @@ -48,26 +48,32 @@ done # No components selected - install default if [ ${#comp[@]} -eq 0 ]; then - comp=(${default_comp[@]}) + comp=("${default_comp[@]}") fi #=================================================================================================== # Selftest if [ -n "$selftest" ] ; then - for image in ubuntu:18.04 ubuntu:20.04 ubuntu:21.10 ubuntu:22.04 redhat/ubi8 ; do + for image in centos7 centos8 rhel8 rhel9.1 \ + almalinux8.7 amzn2 \ + fedora34 fedora35 fedora36 fedora37 fedora38 \ + raspbian9 debian9 ubuntu18.04 \ + raspbian10 debian10 ubuntu20.04 ubuntu20.10 ubuntu21.04 \ + raspbian11 debian11 ubuntu21.10 ubuntu22.04 \ + raspbian12 debian12 ubuntu22.10 ; do for opt in "-h" "-p" "-e -p" "-n" "-n -e" "-y" "-y -e" ; do echo "||" echo "|| Test $image / '$opt'" echo "||" SCRIPT_DIR="$( cd "$( dirname "$(realpath "${BASH_SOURCE[0]}")" )" >/dev/null 2>&1 && pwd )" docker run -it --rm \ - --volume ${SCRIPT_DIR}:/scripts:ro,Z \ + --volume "${SCRIPT_DIR}":/scripts:ro,Z \ --volume yum-cache:/var/cache/yum \ --volume apt-cache:/var/cache/apt/archives \ -e DEBIAN_FRONTEND=noninteractive \ $image \ - bash /scripts/${0##*/} $opt --keepcache + bash "/scripts/${0##*/}" "$opt" --keepcache echo "||" echo "|| Completed: $image / '$opt'" echo "||" @@ -82,6 +88,7 @@ fi # OS detection if [ "$os" == "auto" ] ; then + # shellcheck source=/dev/null os=$( . /etc/os-release ; echo "${ID}${VERSION_ID}" ) if [[ "$os" =~ "rhel8".* ]] ; then os="rhel8" @@ -113,8 +120,6 @@ if [ "$os" == "raspbian9" ] || [ "$os" == "debian9" ] ; then pkgs_core=(libpugixml1v5) pkgs_python=() pkgs_dev=(pkg-config g++ gcc libc6-dev libgflags-dev zlib1g-dev nlohmann-json-dev make curl sudo) - pkgs_myriad=(libusb-1.0-0) - pkgs_cl_compiler=() elif [ "$os" == "ubuntu18.04" ] ; then @@ -122,8 +127,6 @@ elif [ "$os" == "ubuntu18.04" ] ; then pkgs_opencv_req=(libgtk-3-0 libgl1) pkgs_python=(python3.8 libpython3.8 python3.8-venv python3-pip) pkgs_dev=(cmake pkg-config g++ gcc libc6-dev libgflags-dev zlib1g-dev nlohmann-json-dev make curl sudo) - pkgs_myriad=(libusb-1.0-0) - pkgs_cl_compiler=(libtinfo5) pkgs_opencv_opt=( gstreamer1.0-plugins-bad gstreamer1.0-plugins-base @@ -146,8 +149,6 @@ elif [ "$os" == "ubuntu20.04" ] || [ "$os" == "debian10" ] || [ "$os" == "raspbi pkgs_opencv_req=(libgtk-3-0 libgl1) pkgs_python=(python3 python3-venv python3-pip) pkgs_dev=(cmake pkg-config g++ gcc libc6-dev libgflags-dev zlib1g-dev nlohmann-json3-dev make curl sudo) - pkgs_myriad=(libusb-1.0-0) - pkgs_cl_compiler=(libtinfo5) pkgs_opencv_opt=( gstreamer1.0-plugins-bad gstreamer1.0-plugins-base @@ -162,20 +163,20 @@ elif [ "$os" == "ubuntu20.04" ] || [ "$os" == "debian10" ] || [ "$os" == "raspbi ) if [ "$os" == "debian10" ] || [ "$os" == "raspbian10" ] ; then - pkgs_core=(${pkgs_core[@]} libtbb2) - pkgs_python=(${pkgs_python[@]} libpython3.7) + pkgs_core=("${pkgs_core[@]}" libtbb2) + pkgs_python=("${pkgs_python[@]}" libpython3.7) elif [ "$os" == "ubuntu20.04" ] || [ "$os" == "ubuntu20.10" ] || [ "$os" == "ubuntu21.04" ] ; then - pkgs_core=(${pkgs_core[@]} libtbb2) - pkgs_python=(${pkgs_python[@]} libpython3.8) - pkgs_opencv_opt=(${pkgs_opencv_opt[@]} libavresample4) + pkgs_core=("${pkgs_core[@]}" libtbb2) + pkgs_python=("${pkgs_python[@]}" libpython3.8) + pkgs_opencv_opt=("${pkgs_opencv_opt[@]}" libavresample4) elif [ "$os" == "ubuntu21.10" ] || [ "$os" == "debian11" ] || [ "$os" == "raspbian11" ] ; then - pkgs_core=(${pkgs_core[@]} libtbb2) - pkgs_python=(${pkgs_python[@]} libpython3.9) + pkgs_core=("${pkgs_core[@]}" libtbb2) + pkgs_python=("${pkgs_python[@]}" libpython3.9) elif [ "$os" == "ubuntu22.04" ] || [ "$os" == "ubuntu22.10" ] || [ "$os" == "debian12" ] || [ "$os" == "raspbian12" ] ; then - pkgs_core=(${pkgs_core[@]} libtbb12) - pkgs_python=(${pkgs_python[@]} libpython3.10) + pkgs_core=("${pkgs_core[@]}" libtbb12) + pkgs_python=("${pkgs_python[@]}" libpython3.10) fi elif [ "$os" == "centos7" ] || [ "$os" == "centos8" ] || @@ -190,7 +191,7 @@ elif [ "$os" == "centos7" ] || [ "$os" == "centos8" ] || amazon-linux-extras install epel python3.8 fi - pkgs_dev=(gcc gcc-c++ make glibc libstdc++ libgcc cmake3 json-devel.$arch zlib-devel.$arch sudo) + pkgs_dev=(gcc gcc-c++ make glibc libstdc++ libgcc cmake3 "json-devel.$arch" "zlib-devel.$arch" sudo) if [ "$os" == "centos7" ] || [ "$os" == "amzn2" ] ; then pkgs_dev+=(pkgconfig) @@ -206,81 +207,78 @@ elif [ "$os" == "centos7" ] || [ "$os" == "centos8" ] || if [ "$os" == "fedora35" ] || [ "$os" == "fedora35" ] || [ "$os" == "fedora36" ] || [ "$os" == "fedora36" ] || [ "$os" == "fedora38" ] ; then - pkgs_core=(tbb.$arch pugixml.$arch gflags.$arch) + pkgs_core=("tbb.$arch" "pugixml.$arch" "gflags.$arch") pkgs_python=(python3 python3-pip) - pkgs_dev+=(gflags-devel.$arch) - pkgs_myriad=(libusb1.$arch) - else - pkgs_myriad=(libusbx.$arch) + pkgs_dev+=("gflags-devel.$arch") fi if [ "$os" == "centos7" ] || [ "$os" == "amzn2" ] ; then - pkgs_core=(tbb.$arch pugixml.$arch gflags.$arch) - pkgs_dev+=(gflags-devel.$arch) + pkgs_core=("tbb.$arch" "pugixml.$arch" "gflags.$arch") + pkgs_dev+=("gflags-devel.$arch") pkgs_opencv_opt=( - gstreamer1.$arch - gstreamer1-plugins-ugly-free.$arch - gstreamer1-plugins-good.$arch - gstreamer1-plugins-bad-free.$arch + "gstreamer1.$arch" + "gstreamer1-plugins-ugly-free.$arch" + "gstreamer1-plugins-good.$arch" + "gstreamer1-plugins-bad-free.$arch" ) - extra_repos+=(https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm) + extra_repos+=("https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm") elif [ "$os" == "centos8" ] || [ "$os" == "rhel8" ] || [ "$os" == "almalinux8.7" ] ; then pkgs_core+=( - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/tbb-2018.2-9.el8.$arch.rpm - https://download-ib01.fedoraproject.org/pub/epel/8/Everything/$arch/Packages/p/pugixml-1.13-1.el8.$arch.rpm - https://vault.centos.org/centos/8/PowerTools/$arch/os/Packages/gflags-2.1.2-6.el8.$arch.rpm + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/tbb-2018.2-9.el8.$arch.rpm" + "https://download-ib01.fedoraproject.org/pub/epel/8/Everything/$arch/Packages/p/pugixml-1.13-1.el8.$arch.rpm" + "https://vault.centos.org/centos/8/PowerTools/$arch/os/Packages/gflags-2.1.2-6.el8.$arch.rpm" ) pkgs_python+=(python38 python38-pip) pkgs_dev+=( - https://vault.centos.org/centos/8/PowerTools/$arch/os/Packages/gflags-devel-2.1.2-6.el8.$arch.rpm - https://download-ib01.fedoraproject.org/pub/epel/8/Everything/$arch/Packages/j/json-devel-3.6.1-2.el8.$arch.rpm + "https://vault.centos.org/centos/8/PowerTools/$arch/os/Packages/gflags-devel-2.1.2-6.el8.$arch.rpm" + "https://download-ib01.fedoraproject.org/pub/epel/8/Everything/$arch/Packages/j/json-devel-3.6.1-2.el8.$arch.rpm" ) pkgs_opencv_req=(gtk3) pkgs_opencv_opt=( - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libcdio-2.0.0-3.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libtheora-1.1.1-21.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/opus-1.3-0.4.beta.el8.$arch.rpm - http://mirror.centos.org/centos/8-stream/AppStream/$arch/os/Packages/orc-0.4.28-3.el8.$arch.rpm - http://mirror.centos.org/centos/8-stream/AppStream/$arch/os/Packages/libglvnd-gles-1.3.4-1.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libdvdread-5.0.3-9.el8.$arch.rpm - http://mirror.centos.org/centos/8-stream/AppStream/$arch/os/Packages/libvisual-0.4.0-25.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/liba52-0.7.4-32.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libdvdread-5.0.3-9.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libXv-1.0.11-7.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/taglib-1.11.1-8.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/mpg123-libs-1.25.10-2.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/lame-libs-3.100-6.el8.$arch.rpm - https://vault.centos.org/centos/8/BaseOS/$arch/os/Packages/libgudev-232-4.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libv4l-1.14.2-3.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/speex-1.2.0-1.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libraw1394-2.1.2-5.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libsrtp-1.5.4-8.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libvpx-1.7.0-8.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/wavpack-5.1.0-15.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libiec61883-1.2.0-18.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libshout-2.2.2-19.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/twolame-libs-0.3.13-12.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libavc1394-0.5.4-7.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libdv-1.0.0-27.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libdvdnav-5.0.3-8.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/webrtc-audio-processing-0.3-9.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/gstreamer1-plugins-base-1.16.1-2.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/gstreamer1-1.16.1-2.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/gstreamer1-plugins-bad-free-1.16.1-1.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/gstreamer1-plugins-good-1.16.1-2.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/gstreamer1-plugins-ugly-free-1.16.1-1.el8.$arch.rpm - https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/soundtouch-2.0.0-3.el8.$arch.rpm + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libcdio-2.0.0-3.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libtheora-1.1.1-21.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/opus-1.3-0.4.beta.el8.$arch.rpm" + "http://mirror.centos.org/centos/8-stream/AppStream/$arch/os/Packages/orc-0.4.28-3.el8.$arch.rpm" + "http://mirror.centos.org/centos/8-stream/AppStream/$arch/os/Packages/libglvnd-gles-1.3.4-1.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libdvdread-5.0.3-9.el8.$arch.rpm" + "http://mirror.centos.org/centos/8-stream/AppStream/$arch/os/Packages/libvisual-0.4.0-25.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/liba52-0.7.4-32.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libdvdread-5.0.3-9.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libXv-1.0.11-7.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/taglib-1.11.1-8.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/mpg123-libs-1.25.10-2.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/lame-libs-3.100-6.el8.$arch.rpm" + "https://vault.centos.org/centos/8/BaseOS/$arch/os/Packages/libgudev-232-4.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libv4l-1.14.2-3.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/speex-1.2.0-1.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libraw1394-2.1.2-5.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libsrtp-1.5.4-8.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libvpx-1.7.0-8.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/wavpack-5.1.0-15.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libiec61883-1.2.0-18.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libshout-2.2.2-19.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/twolame-libs-0.3.13-12.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libavc1394-0.5.4-7.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libdv-1.0.0-27.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/libdvdnav-5.0.3-8.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/webrtc-audio-processing-0.3-9.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/gstreamer1-plugins-base-1.16.1-2.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/gstreamer1-1.16.1-2.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/gstreamer1-plugins-bad-free-1.16.1-1.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/gstreamer1-plugins-good-1.16.1-2.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/gstreamer1-plugins-ugly-free-1.16.1-1.el8.$arch.rpm" + "https://vault.centos.org/centos/8/AppStream/$arch/os/Packages/soundtouch-2.0.0-3.el8.$arch.rpm" ) - extra_repos+=(https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm) + extra_repos+=("https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm") elif [ "$os" == "rhel9.1" ] ; then pkgs_core=( - http://mirror.stream.centos.org/9-stream/AppStream/$arch/os/Packages/tbb-2020.3-8.el9.$arch.rpm - https://download-ib01.fedoraproject.org/pub/epel/9/Everything/$arch/Packages/p/pugixml-1.13-1.el9.$arch.rpm - https://download-ib01.fedoraproject.org/pub/epel/9/Everything/$arch/Packages/g/gflags-2.2.2-9.el9.$arch.rpm + "http://mirror.stream.centos.org/9-stream/AppStream/$arch/os/Packages/tbb-2020.3-8.el9.$arch.rpm" + "https://download-ib01.fedoraproject.org/pub/epel/9/Everything/$arch/Packages/p/pugixml-1.13-1.el9.$arch.rpm" + "https://download-ib01.fedoraproject.org/pub/epel/9/Everything/$arch/Packages/g/gflags-2.2.2-9.el9.$arch.rpm" ) pkgs_python=(python3 python3-pip) - pkgs_dev+=(https://download-ib01.fedoraproject.org/pub/epel/9/Everything/$arch/Packages/g/gflags-devel-2.2.2-9.el9.$arch.rpm) - extra_repos+=(https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm) + pkgs_dev+=("https://download-ib01.fedoraproject.org/pub/epel/9/Everything/$arch/Packages/g/gflags-devel-2.2.2-9.el9.$arch.rpm") + extra_repos+=("https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm") fi else echo "Internal script error: invalid OS (${os}) after check (package selection)" >&2 @@ -291,9 +289,9 @@ fi # Gather packages and print list pkgs=() -for comp in ${comp[@]} ; do - var=pkgs_${comp}[@] - pkgs+=(${!var}) +for comp in "${comp[@]}" ; do + var="pkgs_${comp}[@]" + pkgs+=("${!var}") done if [ ${#pkgs[@]} -eq 0 ]; then @@ -331,7 +329,7 @@ if [ "$os" == "debian9" ] || [ "$os" == "raspbian9" ] || [ "$os" == "ubuntu18.04 [ -n "$dry" ] && iopt="--dry-run" [ -n "$keepcache" ] && rm -f /etc/apt/apt.conf.d/docker-clean - apt-get update && apt-get install -y --no-install-recommends $iopt ${pkgs[@]} + apt-get update && apt-get install -y --no-install-recommends "$iopt" "${pkgs[@]}" elif [ "$os" == "centos7" ] || [ "$os" == "centos8" ] || [ "$os" == "rhel8" ] || [ "$os" == "rhel9.1" ] || @@ -342,9 +340,9 @@ elif [ "$os" == "centos7" ] || [ "$os" == "centos8" ] || [ -z "$interactive" ] && iopt="--assumeyes" [ -n "$dry" ] && iopt="--downloadonly" [ -n "$keepcache" ] && iopt="$iopt --setopt=keepcache=1" - [ ${#extra_repos[@]} -ne 0 ] && yum localinstall $iopt --nogpgcheck ${extra_repos[@]} + [ -n "$extra" ] && [ ${#extra_repos[@]} -ne 0 ] && yum localinstall "$iopt" --nogpgcheck "${extra_repos[@]}" - yum install $iopt ${pkgs[@]} + yum install "$iopt" "${pkgs[@]}" else echo "Internal script error: invalid OS (${os}) after check (package installation)" >&2 diff --git a/src/bindings/python/tests/test_onnx/model_zoo_preprocess.sh b/src/bindings/python/tests/test_onnx/model_zoo_preprocess.sh index fc65be1cc87..9f362667f3d 100755 --- a/src/bindings/python/tests/test_onnx/model_zoo_preprocess.sh +++ b/src/bindings/python/tests/test_onnx/model_zoo_preprocess.sh @@ -9,7 +9,6 @@ set -e ONNX_SHA=d58213534f2a4d1c4b19ba62b3bb5f544353256e MODELS_DIR="$HOME/.onnx/model_zoo" -ENABLE_MSFT=false ENABLE_ONNX_MODELS_ZOO=false ENABLE_MSFT_MODELS=false FORCE_MODE=false @@ -18,7 +17,7 @@ function print_help { echo "Model preprocessing options:" echo " -h display this help message" echo " -d set location of the models (for onnx model ZOO and MSFT models)" - printf " By default the models location is: %s\n" "$HOME/.onnx/model_zoo" + echo " By default the models location is: $HOME/.onnx/model_zoo" echo " -o update Onnx Model Zoo models" echo " -s Onnx Model Zoo commit SHA" echo " -m update MSFT models" @@ -65,32 +64,32 @@ function pull_and_postprocess_onnx_model_zoo() { git fetch git reset HEAD --hard - git checkout -f $ONNX_SHA + git checkout -f "$ONNX_SHA" echo "Pulling models data via Git LFS for onnx model zoo repository" git lfs pull --include="*" --exclude="*.onnx" - find "$ONNX_MODELS_DIR" -name "*.onnx" | while read filename; do rm "$filename"; done; + find "$ONNX_MODELS_DIR" -name "*.onnx" | while read -r filename; do rm "$filename"; done; printf "Extracting tar.gz archives into %s\n" "$ONNX_MODELS_DIR" find "$ONNX_MODELS_DIR" -name '*.tar.gz' \ - -execdir sh -c 'BASEDIR=$(basename "{}" .tar.gz) && rm -rf $BASEDIR && mkdir -p $BASEDIR' \; \ - -execdir sh -c 'BASEDIR=$(basename "{}" .tar.gz) && tar --warning=no-unknown-keyword -xvzf "{}" -C $BASEDIR' \; + -execdir sh -c 'BASEDIR=$(basename "{$1}" .tar.gz) && rm -rf $BASEDIR && mkdir -p $BASEDIR' shell {} \; \ + -execdir sh -c 'BASEDIR=$(basename "{$1}" .tar.gz) && tar --warning=no-unknown-keyword -xvzf "{$1}" -C $BASEDIR' shell {} \; echo "Postprocessing of ONNX Model Zoo models:" echo "Fix roberta model" cd "$ONNX_MODELS_DIR/text/machine_comprehension/roberta/model/roberta-sequence-classification-9/roberta-sequence-classification-9" mkdir -p test_data_set_0 - mv *.pb test_data_set_0/ + mv ./*.pb test_data_set_0/ - rm -f $MODEL_ZOO_DIR/executing_$ONNX_SHA + rm -f "$MODEL_ZOO_DIR/executing_$ONNX_SHA" } function update_onnx_models() { - if test `find $MODEL_ZOO_DIR/executing_$ONNX_SHA -mmin +60 2>/dev/null`;then - rm -rf $ONNX_MODELS_DIR - rm -f $MODEL_ZOO_DIR/executing_$ONNX_SHA - fi + if test "$(find "$MODEL_ZOO_DIR/executing_$ONNX_SHA" -mmin +60 2>/dev/null)" ; then + rm -rf "$ONNX_MODELS_DIR" + rm -f "$MODEL_ZOO_DIR/executing_$ONNX_SHA" + fi while [[ -f $MODEL_ZOO_DIR/executing_$ONNX_SHA ]]; do @@ -98,16 +97,16 @@ function update_onnx_models() { sleep 300 done - if [[ ! -d $ONNX_MODELS_DIR ]] ; then - touch $MODEL_ZOO_DIR/executing_$ONNX_SHA - trap "rm -f $MODEL_ZOO_DIR/executing_$ONNX_SHA" EXIT INT TERM + if [[ ! -d "$ONNX_MODELS_DIR" ]] ; then + touch "$MODEL_ZOO_DIR/executing_$ONNX_SHA" + trap 'rm -f "$MODEL_ZOO_DIR/executing_$ONNX_SHA"' EXIT INT TERM echo "The ONNX Model Zoo repository doesn't exist on your filesystem then will be cloned" git clone https://github.com/onnx/models.git "$ONNX_MODELS_DIR" cd "$ONNX_MODELS_DIR" pull_and_postprocess_onnx_model_zoo else # Check if ONNX Model Zoo directory consists of proper git repo - export git_remote_url=`git -C $ONNX_MODELS_DIR config --local remote.origin.url 2> /dev/null 2>&1` + git_remote_url=$(git -C "$ONNX_MODELS_DIR" config --local remote.origin.url 2> /dev/null 2>&1) printf "ONNX Model Zoo repository exists: %s\n" "$ONNX_MODELS_DIR" if [[ $git_remote_url = "https://github.com/onnx/models.git" ]]; then printf "The proper github repository detected: %s\n" "$git_remote_url" @@ -128,8 +127,8 @@ function postprocess_msft_models() { echo "Postprocessing of MSFT models:" echo "Fix LSTM_Seq_lens_unpacked" - mv $MSFT_MODELS_DIR/opset9/LSTM_Seq_lens_unpacked/seq_lens_sorted $MSFT_MODELS_DIR/opset9/LSTM_Seq_lens_unpacked/test_data_set_0 - mv $MSFT_MODELS_DIR/opset9/LSTM_Seq_lens_unpacked/seq_lens_unsorted $MSFT_MODELS_DIR/opset9/LSTM_Seq_lens_unpacked/test_data_set_1 + mv "$MSFT_MODELS_DIR"/opset9/LSTM_Seq_lens_unpacked/seq_lens_sorted "$MSFT_MODELS_DIR"/opset9/LSTM_Seq_lens_unpacked/test_data_set_0 + mv "$MSFT_MODELS_DIR"/opset9/LSTM_Seq_lens_unpacked/seq_lens_unsorted "$MSFT_MODELS_DIR"/opset9/LSTM_Seq_lens_unpacked/test_data_set_1 } if [[ $ENABLE_ONNX_MODELS_ZOO = false ]] && [[ $ENABLE_MSFT_MODELS = false ]] ; then @@ -147,23 +146,23 @@ fi # check if general model zoo directory exists (directory to store ONNX model zoo and MSFT models) -if [[ ! -d $MODEL_ZOO_DIR ]] ; then +if [[ ! -d "$MODEL_ZOO_DIR" ]] ; then printf "The general model directory: %s doesn't exist on your filesystem, it will be created \n" "$MODEL_ZOO_DIR" - mkdir -p $MODEL_ZOO_DIR + mkdir -p "$MODEL_ZOO_DIR" else printf "The general model directory: %s found\n" "$MODEL_ZOO_DIR" fi if [[ $ENABLE_ONNX_MODELS_ZOO = true ]] ; then if [[ $FORCE_MODE = true ]]; then - rm -rf $ONNX_MODELS_DIR + rm -rf "$ONNX_MODELS_DIR" fi update_onnx_models fi if [[ $ENABLE_MSFT_MODELS = true ]] ; then if [[ $FORCE_MODE = true ]]; then - rm -rf $MSFT_MODELS_DIR + rm -rf "$MSFT_MODELS_DIR" fi update_msft_models postprocess_msft_models diff --git a/src/bindings/python/tests_compatibility/test_onnx/model_zoo_preprocess.sh b/src/bindings/python/tests_compatibility/test_onnx/model_zoo_preprocess.sh index fc65be1cc87..3ca456807a6 100755 --- a/src/bindings/python/tests_compatibility/test_onnx/model_zoo_preprocess.sh +++ b/src/bindings/python/tests_compatibility/test_onnx/model_zoo_preprocess.sh @@ -9,7 +9,6 @@ set -e ONNX_SHA=d58213534f2a4d1c4b19ba62b3bb5f544353256e MODELS_DIR="$HOME/.onnx/model_zoo" -ENABLE_MSFT=false ENABLE_ONNX_MODELS_ZOO=false ENABLE_MSFT_MODELS=false FORCE_MODE=false @@ -18,7 +17,7 @@ function print_help { echo "Model preprocessing options:" echo " -h display this help message" echo " -d set location of the models (for onnx model ZOO and MSFT models)" - printf " By default the models location is: %s\n" "$HOME/.onnx/model_zoo" + echo " By default the models location is: $HOME/.onnx/model_zoo" echo " -o update Onnx Model Zoo models" echo " -s Onnx Model Zoo commit SHA" echo " -m update MSFT models" @@ -65,32 +64,32 @@ function pull_and_postprocess_onnx_model_zoo() { git fetch git reset HEAD --hard - git checkout -f $ONNX_SHA + git checkout -f "$ONNX_SHA" echo "Pulling models data via Git LFS for onnx model zoo repository" git lfs pull --include="*" --exclude="*.onnx" - find "$ONNX_MODELS_DIR" -name "*.onnx" | while read filename; do rm "$filename"; done; + find "$ONNX_MODELS_DIR" -name "*.onnx" | while read -r filename; do rm "$filename"; done; printf "Extracting tar.gz archives into %s\n" "$ONNX_MODELS_DIR" find "$ONNX_MODELS_DIR" -name '*.tar.gz' \ - -execdir sh -c 'BASEDIR=$(basename "{}" .tar.gz) && rm -rf $BASEDIR && mkdir -p $BASEDIR' \; \ - -execdir sh -c 'BASEDIR=$(basename "{}" .tar.gz) && tar --warning=no-unknown-keyword -xvzf "{}" -C $BASEDIR' \; + -execdir sh -c 'BASEDIR=$(basename "{$1}" .tar.gz) && rm -rf $BASEDIR && mkdir -p $BASEDIR' shell {} \; \ + -execdir sh -c 'BASEDIR=$(basename "{$1}" .tar.gz) && tar --warning=no-unknown-keyword -xvzf "{$1}" -C $BASEDIR' shell {} \; echo "Postprocessing of ONNX Model Zoo models:" echo "Fix roberta model" cd "$ONNX_MODELS_DIR/text/machine_comprehension/roberta/model/roberta-sequence-classification-9/roberta-sequence-classification-9" mkdir -p test_data_set_0 - mv *.pb test_data_set_0/ + mv ./*.pb test_data_set_0/ - rm -f $MODEL_ZOO_DIR/executing_$ONNX_SHA + rm -f "$MODEL_ZOO_DIR/executing_$ONNX_SHA" } function update_onnx_models() { - if test `find $MODEL_ZOO_DIR/executing_$ONNX_SHA -mmin +60 2>/dev/null`;then - rm -rf $ONNX_MODELS_DIR - rm -f $MODEL_ZOO_DIR/executing_$ONNX_SHA - fi + if test "$(find "$MODEL_ZOO_DIR/executing_$ONNX_SHA" -mmin +60 2>/dev/null)" ; then + rm -rf "$ONNX_MODELS_DIR" + rm -f "$MODEL_ZOO_DIR/executing_$ONNX_SHA" + fi while [[ -f $MODEL_ZOO_DIR/executing_$ONNX_SHA ]]; do @@ -99,15 +98,15 @@ function update_onnx_models() { done if [[ ! -d $ONNX_MODELS_DIR ]] ; then - touch $MODEL_ZOO_DIR/executing_$ONNX_SHA - trap "rm -f $MODEL_ZOO_DIR/executing_$ONNX_SHA" EXIT INT TERM + touch "$MODEL_ZOO_DIR/executing_$ONNX_SHA" + trap 'rm -f "$MODEL_ZOO_DIR/executing_$ONNX_SHA"' EXIT INT TERM echo "The ONNX Model Zoo repository doesn't exist on your filesystem then will be cloned" git clone https://github.com/onnx/models.git "$ONNX_MODELS_DIR" cd "$ONNX_MODELS_DIR" pull_and_postprocess_onnx_model_zoo else # Check if ONNX Model Zoo directory consists of proper git repo - export git_remote_url=`git -C $ONNX_MODELS_DIR config --local remote.origin.url 2> /dev/null 2>&1` + git_remote_url=$(git -C "$ONNX_MODELS_DIR" config --local remote.origin.url 2> /dev/null 2>&1) printf "ONNX Model Zoo repository exists: %s\n" "$ONNX_MODELS_DIR" if [[ $git_remote_url = "https://github.com/onnx/models.git" ]]; then printf "The proper github repository detected: %s\n" "$git_remote_url" @@ -128,8 +127,8 @@ function postprocess_msft_models() { echo "Postprocessing of MSFT models:" echo "Fix LSTM_Seq_lens_unpacked" - mv $MSFT_MODELS_DIR/opset9/LSTM_Seq_lens_unpacked/seq_lens_sorted $MSFT_MODELS_DIR/opset9/LSTM_Seq_lens_unpacked/test_data_set_0 - mv $MSFT_MODELS_DIR/opset9/LSTM_Seq_lens_unpacked/seq_lens_unsorted $MSFT_MODELS_DIR/opset9/LSTM_Seq_lens_unpacked/test_data_set_1 + mv "$MSFT_MODELS_DIR"/opset9/LSTM_Seq_lens_unpacked/seq_lens_sorted "$MSFT_MODELS_DIR"/opset9/LSTM_Seq_lens_unpacked/test_data_set_0 + mv "$MSFT_MODELS_DIR"/opset9/LSTM_Seq_lens_unpacked/seq_lens_unsorted "$MSFT_MODELS_DIR"/opset9/LSTM_Seq_lens_unpacked/test_data_set_1 } if [[ $ENABLE_ONNX_MODELS_ZOO = false ]] && [[ $ENABLE_MSFT_MODELS = false ]] ; then @@ -149,21 +148,21 @@ fi # check if general model zoo directory exists (directory to store ONNX model zoo and MSFT models) if [[ ! -d $MODEL_ZOO_DIR ]] ; then printf "The general model directory: %s doesn't exist on your filesystem, it will be created \n" "$MODEL_ZOO_DIR" - mkdir -p $MODEL_ZOO_DIR + mkdir -p "$MODEL_ZOO_DIR" else printf "The general model directory: %s found\n" "$MODEL_ZOO_DIR" fi if [[ $ENABLE_ONNX_MODELS_ZOO = true ]] ; then if [[ $FORCE_MODE = true ]]; then - rm -rf $ONNX_MODELS_DIR + rm -rf "$ONNX_MODELS_DIR" fi update_onnx_models fi if [[ $ENABLE_MSFT_MODELS = true ]] ; then if [[ $FORCE_MODE = true ]]; then - rm -rf $MSFT_MODELS_DIR + rm -rf "$MSFT_MODELS_DIR" fi update_msft_models postprocess_msft_models diff --git a/src/tests/functional/plugin/myriad/run_tests_myriad_multistick.sh b/src/tests/functional/plugin/myriad/run_tests_myriad_multistick.sh index 37d50bdb968..2bc9dc3ee31 100755 --- a/src/tests/functional/plugin/myriad/run_tests_myriad_multistick.sh +++ b/src/tests/functional/plugin/myriad/run_tests_myriad_multistick.sh @@ -33,7 +33,7 @@ else fi echo "Test directory: ${TEST_DIR}" -cd "${TEST_DIR}" +cd "${TEST_DIR}" || exit export IE_VPU_MYRIADX=1