3 # Need at least 4 arguments
4 if [[ $# -lt 4 ]]; then
8 echo " [test.config path]"
18 CONFIG_PATH="$1"; shift
21 REMOTE_USER="$1"; shift
23 BINDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
24 CURRENT_DATETIME=$(date +'%Y%m%d_%H%M%S')
25 REMOTE_WORKDIR=${REMOTE_WORKDIR:-"CVT_${CURRENT_DATETIME}"}
26 RESULT_CSV="${BINDIR}/Result_${CURRENT_DATETIME}.csv"
28 source "${CONFIG_PATH}"
30 echo "-- Found Runtime library: ${RUNTIME_LIBRARY_PATH}"
31 echo "-- Found workdir: ${WORKDIR}"
33 # Register remote machine ssh information
34 cat /dev/zero | ssh-keygen -q -N ""
35 ssh-copy-id -o ConnectTimeout=5 "${REMOTE_USER}@${REMOTE_IP}"
37 # Odroid IP address validation
38 if [[ $? -ne 0 ]]; then
39 echo "Cannot reach to given remote machine. Check IP address or username."
43 # Send runtime library files
44 ssh "${REMOTE_USER}@${REMOTE_IP}" "mkdir -p ${REMOTE_WORKDIR}/Product/"
45 scp -r "${RUNTIME_LIBRARY_PATH}" "${REMOTE_USER}@${REMOTE_IP}:${REMOTE_WORKDIR}/Product/"
50 echo "TEST_NAME, CIRCLE_VALUE_TEST" >> ${RESULT_CSV}
53 while [[ $# -ne 0 ]]; do
58 PASSED_TAG="${PREFIX}.passed"
60 rm -f "${BINDIR}/${PASSED_TAG}"
62 # Information to be recorded
63 CIRCLE_VALUE_PASSED=FALSE
65 cat > "${BINDIR}/${PREFIX}.log" <(
68 # Exit immediately if any command fails
73 # Run nnpkg_test in remote machine
74 if [ ! -d "${PREFIX}" ] ; then
75 PREFIX=${PREFIX}.opt ;
77 scp -r "${PREFIX}/" "${REMOTE_USER}@${REMOTE_IP}:${REMOTE_WORKDIR}/${PREFIX}/"
78 ssh "${REMOTE_USER}@${REMOTE_IP}" "cd ${REMOTE_WORKDIR}; ./Product/out/test/onert-test nnpkg-test ${PREFIX}"
80 if [[ $? -eq 0 ]]; then
81 touch "${BINDIR}/${PASSED_TAG}"
85 if [[ -f "${BINDIR}/${PASSED_TAG}" ]]; then
87 CIRCLE_VALUE_PASSED=TRUE
90 CIRCLE_VALUE_PASSED=FALSE
93 echo "${PREFIX}, ${CIRCLE_VALUE_PASSED}" >> ${RESULT_CSV}
98 ln -s ${RESULT_CSV} Result_latest
100 if [[ ${#TESTED[@]} -ne ${#PASSED[@]} ]]; then
102 for TEST in "${FAILED[@]}"