Merge branch 'fix-coverity-scan-defect' of https://github.com/parkvibes/fio
[fio.git] / ci / actions-install.sh
index 0e472717d26e4c48f514dc99b07758d4533bf93f..6eb2d795e7d1d93b0327c3bbd3a3fbcb4b295129 100755 (executable)
@@ -23,36 +23,39 @@ DPKGCFG
         libcunit1-dev
         libcurl4-openssl-dev
         libfl-dev
-        libibverbs-dev
         libnuma-dev
-        librdmacm-dev
+       libnfs-dev
         valgrind
     )
     case "${CI_TARGET_ARCH}" in
         "i686")
             sudo dpkg --add-architecture i386
-            opts="--allow-downgrades"
             pkgs=("${pkgs[@]/%/:i386}")
             pkgs+=(
                 gcc-multilib
                 pkg-config:i386
                 zlib1g-dev:i386
-               libpcre2-8-0=10.34-7
+                libc6:i386
+                libgcc-s1:i386
             )
             ;;
         "x86_64")
-            opts=""
             pkgs+=(
                 libglusterfs-dev
                 libgoogle-perftools-dev
                 libiscsi-dev
                 libnbd-dev
                 libpmem-dev
-                libpmemblk-dev
+                libpmem2-dev
+                libprotobuf-c-dev
                 librbd-dev
                 libtcmalloc-minimal4
                 nvidia-cuda-dev
+                libibverbs-dev
+                librdmacm-dev
             )
+           echo "Removing libunwind-14-dev because of conflicts with libunwind-dev"
+           sudo apt remove -y libunwind-14-dev
             ;;
     esac
 
@@ -61,12 +64,17 @@ DPKGCFG
     pkgs+=(
         python3-scipy
        python3-sphinx
+       python3-statsmodels
     )
 
     echo "Updating APT..."
     sudo apt-get -qq update
-    echo "Installing packages..."
-    sudo apt-get install "$opts" -o APT::Immediate-Configure=false --no-install-recommends -qq -y "${pkgs[@]}"
+    echo "Installing packages... ${pkgs[@]}"
+    sudo apt-get install -o APT::Immediate-Configure=false --no-install-recommends -qq -y "${pkgs[@]}"
+    if [ "${CI_TARGET_ARCH}" == "x86_64" ]; then
+        # install librpma from sources
+        ci/actions-install-librpma.sh
+    fi
 }
 
 install_linux() {
@@ -78,11 +86,24 @@ install_macos() {
     #echo "Updating homebrew..."
     #brew update >/dev/null 2>&1
     echo "Installing packages..."
-    HOMEBREW_NO_AUTO_UPDATE=1 brew install cunit
-    pip3 install scipy six sphinx
+    HOMEBREW_NO_AUTO_UPDATE=1 brew install cunit libnfs
+    pip3 install scipy six statsmodels sphinx
+}
+
+install_windows() {
+       pip3 install scipy six statsmodels sphinx
 }
 
 main() {
+    case "${CI_TARGET_BUILD}" in
+       android*)
+           echo "Installing Android NDK..."
+           wget --quiet https://dl.google.com/android/repository/android-ndk-r24-linux.zip
+           unzip -q android-ndk-r24-linux.zip
+           return 0
+           ;;
+    esac
+
     set_ci_target_os
 
     install_function="install_${CI_TARGET_OS}"