#!/bin/bash
source "${WORKSPACE}/common.sh"
function executSt(){
cd ${WORKSPACE}/tests || exit
echo "Run ST testcase of graphengine."
if [ "${GE_ST_RT2}X" == "ge_commonX" ];then
if [ "${GIT_TARGET_BRANCH}" = "8.5.0" ];then
LOG_DO bash run_test.sh --st=ge_common --cann_3rd_lib_path="${ASCEND_3RD_LIB_PATH}" -j20
else
LOG_DO bash run_test.sh -c --st=ge_common --cann_3rd_lib_path="${ASCEND_3RD_LIB_PATH}" -j20 -f ${WORKSPACE}/pr_filelist.txt
fi
ret=$?
else
echo 0 &> ${CODE_PATH}/st_ge_${GE_ST_RT2}.txt
if [ "${GE_ST_RT2}X" == "dflowX" ] || [ "${GE_ST_RT2}X" == "pythonX" ] || [ "${GE_ST_RT2}X" == "heteroX" ];then
if [ "${GIT_TARGET_BRANCH}" = "8.5.0" ];then
LOG_DO bash run_test.sh --st=${GE_ST_RT2} -c --cann_3rd_lib_path="${ASCEND_3RD_LIB_PATH}" -j20
else
LOG_DO bash run_test.sh -c --st=${GE_ST_RT2} -c --cann_3rd_lib_path="${ASCEND_3RD_LIB_PATH}" -j20 -f ${WORKSPACE}/pr_filelist.txt
fi
ret=$?
else
if [ "${GIT_TARGET_BRANCH}" = "8.5.0" ];then
if [ "${GE_ST_RT2}X" == "executor_cX" ] || [ "${GE_ST_RT2}X" == "autofuse_ascendc_apiX" ] || [ "${GE_ST_RT2}X" == "autofuse_frameworkX" ] || [ "${GE_ST_RT2}X" == "autofuse_e2eX" ];then
echo "Skip ST test execution for ${GE_ST_RT2} on non-master branch"
exit 0
else
LOG_DO bash run_test.sh --st=${GE_ST_RT2} --cann_3rd_lib_path="${ASCEND_3RD_LIB_PATH}" -j20
fi
elif [ "${GIT_TARGET_BRANCH}" = "9.0.0" ];then
if [ "${GE_ST_RT2}X" == "autofuse_e2eX" ] || [ "${GE_ST_RT2}X" == "feX" ] || [ "${GE_ST_RT2}X" == "tefusionX" ];then
echo "Skip ST test execution for ${GE_ST_RT2} on non-master branch"
exit 0
else
LOG_DO bash run_test.sh -c --st=${GE_ST_RT2} --cann_3rd_lib_path="${ASCEND_3RD_LIB_PATH}" -j20
fi
else
LOG_DO bash run_test.sh -c --st=${GE_ST_RT2} --cann_3rd_lib_path="${ASCEND_3RD_LIB_PATH}" -j20 -f ${WORKSPACE}/pr_filelist.txt
fi
ret=$?
fi
fi
if [ "$ret" -eq 200 ]; then
echo "Skip ST"
exit 0
else
DP_ASSERT_EQUAL "$ret" "0" "Run ST testcase" "true"
fi
cd ${WORKSPACE}
coverage_info=$(find ${WORKSPACE} -name "coverage.info" | head -n1)
if [ "${GE_ST_RT2}X" == "pythonX" ];then
if [ "${GIT_TARGET_BRANCH}" != "master" ] && [ "${GIT_TARGET_BRANCH}" != "develop" ]; then
echo "not need lcov"
exit 0
else
export COV_PREFIX=st
echo "ut_process=ut_cov" >> "${ATOMGIT_OUTPUT}"
echo "ut_type=graphengine" >> "${ATOMGIT_OUTPUT}"
fi
else
lcov --list ${coverage_info}
mv ${coverage_info} coverage_st_${GE_ST_RT2}.info
fi
}
function main(){
sudo update-alternatives --set gcc /usr/bin/gcc-14 || { echo "Failed to set gcc-14"; exit 1; }
pip3 install --user cloudpickle || { echo "Failed to install cloudpickle"; exit 1; }
echo "ln -sf /opt/buildtools/python-3.10.2/bin/coverage /usr/local/bin/coverage"
ln -sf /opt/buildtools/python-3.10.2/bin/coverage /usr/local/bin/coverage || { echo "Failed to ln coverage"; exit 1; }
export BUILD_METADEF=OFF
export BUILD_PARSER=OFF
executSt
}
main $@