diff --git a/o/opensearch-project-k-nn/build_info.json b/o/opensearch-project-k-nn/build_info.json index 63d1618e01..5a3368e28f 100644 --- a/o/opensearch-project-k-nn/build_info.json +++ b/o/opensearch-project-k-nn/build_info.json @@ -3,7 +3,7 @@ "package_name": "opensearch-project-k-nn", "github_url": "https://github.com/opensearch-project/k-NN", "version": "3.3.0.0", - "required_versions":{"Releases": ["*"], "Tags": ["3.3.0.0"]}, + "required_versions":{"Releases": ["*"], "Tags": ["*"]}, "default_branch": "main", "package_dir": "o/opensearch-project-k-nn", "build_script": "opensearch-project-k-NN_3.3.0.0_ubi_9.6.sh", @@ -15,5 +15,8 @@ }, "2.19.2.0": { "build_script": "opensearch-project-k-NN_2.19.2.0_ubi_9.3.sh" + }, + "*.*.*.*": { + "build_script": "opensearch-project-k-NN_3.3.0.0_ubi_9.6.sh" } } \ No newline at end of file diff --git a/o/opensearch-project-k-nn/opensearch-project-k-NN_3.3.0.0_ubi_9.6.sh b/o/opensearch-project-k-nn/opensearch-project-k-NN_3.3.0.0_ubi_9.6.sh index d961213b54..d6c7206a8c 100644 --- a/o/opensearch-project-k-nn/opensearch-project-k-NN_3.3.0.0_ubi_9.6.sh +++ b/o/opensearch-project-k-nn/opensearch-project-k-NN_3.3.0.0_ubi_9.6.sh @@ -6,7 +6,7 @@ # Source repo : https://github.com/opensearch-project/k-NN.git # Tested on : UBI 9.6 # Language : Java and C++ -# Ci-Check : True +# Ci-Check : True # Script License : Apache License, Version 2 or later # Maintainer : Prachi Gaonkar # @@ -18,20 +18,23 @@ # # ---------------------------------------------------------------------------- +# Install sudo for non-root user execution +yum install sudo -y # --------------------------- # Check for root user # --------------------------- -if ! ((${EUID:-0} || "$(id -u)")); then - set +ex - echo "FAIL: This script must be run as a non-root user with sudo permissions" - exit 3 -fi +#if ! ((${EUID:-0} || "$(id -u)")); then +# set +ex +# echo "FAIL: This script must be run as a non-root user with sudo permissions" +# exit 3 +#fi -# --------------------------- +# ---------------------------- # Configuration -# --------------------------- +# ---------------------------- PACKAGE_NAME=k-NN -PACKAGE_VERSION="3.3.0.0" +SCRIPT_PACKAGE_VERSION="3.3.0.0" +PACKAGE_VERSION=${1:-${SCRIPT_PACKAGE_VERSION}} PACKAGE_URL=https://github.com/opensearch-project/${PACKAGE_NAME}.git OPENSEARCH_VERSION=${PACKAGE_VERSION::-2} OPENSEARCH_PACKAGE=OpenSearch @@ -61,17 +64,13 @@ for i in "$@"; do esac done -# --------------------------- +# ------------------------------ # Dependency Installation -# --------------------------- -sudo yum install -y git wget python3-pip gcc gcc-c++ make cmake gcc-gfortran zlib zlib-devel openblas openblas-devel libomp -#install temurin java21 -sudo wget https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.2%2B13/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.2_13.tar.gz -sudo tar -C /usr/local -zxf OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.2_13.tar.gz -export JAVA_HOME=/usr/local/jdk-21.0.2+13/ -export PATH=$PATH:/usr/local/jdk-21.0.2+13/bin/ -sudo ln -sf /usr/local/jdk-21.0.2+13/bin/java /usr/bin/ -sudo rm -rf OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.2_13.tar.gz +# ------------------------------ +sudo yum install -y git wget python3-pip gcc gcc-c++ make cmake gcc-gfortran zlib zlib-devel openblas openblas-devel libomp java-21-openjdk-devel +export JAVA_HOME=$(ls -d /usr/lib/jvm/java-21-openjdk-* | head -n1) +export JRE_HOME=${JAVA_HOME}/jre +export PATH=${JAVA_HOME}/bin:$PATH sudo ln -sf /usr/bin/python3 /usr/bin/python pip install cmake==3.24.0 @@ -101,13 +100,13 @@ cmake .. -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=$BUILD_HOME/local make make install -# --------------------------- +# ---------------------------- # Clone and Prepare Repository -# --------------------------- +# ---------------------------- cd $BUILD_HOME git clone ${PACKAGE_URL} cd ${PACKAGE_NAME} && git checkout ${PACKAGE_VERSION} -git apply ${SCRIPT_PATH}/$PACKAGE_NAME-$PACKAGE_VERSION.patch +git apply ${SCRIPT_PATH}/$PACKAGE_NAME-$SCRIPT_PACKAGE_VERSION.patch cd jni cmake -DBLAS_INCLUDE_DIR=$BUILD_HOME/local/include \ -DLAPACK_LIBRARIES=$BUILD_HOME/local/lib64/liblapack.so \ @@ -118,9 +117,9 @@ cmake -DBLAS_INCLUDE_DIR=$BUILD_HOME/local/include \ # Apply patches to NMSLIB and FAISS # ---------------------------------------------- cd external/nmslib -git apply ${SCRIPT_PATH}/$PACKAGE_NAME-nmslib-$PACKAGE_VERSION.patch +git apply ${SCRIPT_PATH}/$PACKAGE_NAME-nmslib-$SCRIPT_PACKAGE_VERSION.patch cd ../faiss/faiss -git apply ${SCRIPT_PATH}/$PACKAGE_NAME-faiss-$PACKAGE_VERSION.patch +git apply ${SCRIPT_PATH}/$PACKAGE_NAME-faiss-$SCRIPT_PACKAGE_VERSION.patch cd $BUILD_HOME/$PACKAGE_NAME/jni rm -rf build CMakeFiles CMakeCache.txt make