From: Prashant Kumar Jangid Date: Wed, 11 Jan 2023 05:28:17 +0000 (+0530) Subject: [TCT][Scripts][NonACR]Feature added to use latest rootstrap X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=2a76370118f1aa4416d7935b91470e512fcb8e1e;p=test%2Ftct%2Fnative%2Fapi.git [TCT][Scripts][NonACR]Feature added to use latest rootstrap -If rootstrap.txt file is empty then use latest installed rootstrap in the system. Change-Id: I54f30d70045c91946b0ab928057f4a4b7ba9337d Signed-off-by: Prashant Kumar Jangid (cherry picked from commit b8ba1a68f4712a10cfc7e701f007d0ce3587dd3a) --- diff --git a/scripts_tpk/tpk_create.sh b/scripts_tpk/tpk_create.sh index e20c10cb7..63af222c3 100755 --- a/scripts_tpk/tpk_create.sh +++ b/scripts_tpk/tpk_create.sh @@ -548,7 +548,32 @@ deploySourceFile() { cd $2/../../../scripts_tpk } +getlatestrootstrap() { + SEARCH_PROFILE=$1 + SEARCH_DEVICE=$2 + SEARCH_VERSION=$3 + if [ "$4" = "x86" ]; then + SEARCH_ARCHITECTURE="i586" + else + SEARCH_ARCHITECTURE=$4 + fi + echo $yellow"Getting latest Rootstrap information"$reset + ROOTSTRAP_LIST=`tizen list rootstrap | grep "${SEARCH_PROFILE}" | grep "${SEARCH_DEVICE}" | grep "${SEARCH_VERSION}" | grep "${SEARCH_ARCHITECTURE}" | cut -f1 -d' '` + LATEST_DATE="" + EXISTING_ROOTSTRAP="" + ROOTSTRAP_STRING_ARRAY=($ROOTSTRAP_LIST) + for ROOTSTRAP_NAME in "${ROOTSTRAP_STRING_ARRAY[@]}"; + do + DATE_STR="cut -d'.' -f5 <<<$ROOTSTRAP_NAME" #extracting date string from rootstrap name and finding the latest date and rootstrap + if [[ "$DATE_STR" > "$LATEST_DATE" ]] && [[ ! -z "$DATE_STR" ]]; then + LATEST_DATE=$DATE_STR + EXISTING_ROOTSTRAP=$ROOTSTRAP_NAME + fi + done + echo $bold$green$"Latest rootstrap is : $EXISTING_ROOTSTRAP"$reset + +} checkRootstrap() { ROOTSTRAP_TYPE=$1 PROFILE_TYPE=$2 @@ -556,7 +581,20 @@ checkRootstrap() { CURRENT_VERSION=$4 if [ -z "$ROOTSTRAP_TYPE" ]; then echo $yellow"rootstrap.txt file is empty."$reset - EXISTING_ROOTSTRAP=`tizen list rootstrap | grep "${PROFILE_TYPE}" | grep "${DEVICE_TYPE}" | grep "${CURRENT_VERSION}" | cut -f1 -d' ' |grep -v "public"` + getlatestrootstrap $PROFILE_TYPE $DEVICE_TYPE $CURRENT_VERSION $ARCHITECTURE + + if [ $PROFILE_TYPE=="mobile" ]; then + ROOTSTRAP_MOBILE=$EXISTING_ROOTSTRAP + fi + if [ $PROFILE_TYPE=="tv" ]; then + ROOTSTRAP_TV=$EXISTING_ROOTSTRAP + fi + if [ $PROFILE_TYPE=="wearable" ]; then + ROOTSTRAP_WEARABLE=$EXISTING_ROOTSTRAP + fi + if [ $PROFILE_TYPE=="tizeniot" ]; then + ROOTSTRAP_TIZENIOT=$EXISTING_ROOTSTRAP + fi if [ -z "$EXISTING_ROOTSTRAP" ]; then echo $red"Default rootstrap is not installed for ${CURRENT_VERSION} version"$reset OPTIONAL_ROOTSTRAP=`tizen list rootstrap | grep "${PROFILE_TYPE}" | grep "${DEVICE_TYPE}" | grep "${CURRENT_VERSION}" | cut -f1 -d' ' |grep -i "public"` @@ -723,15 +761,16 @@ echo "[APPLLICATION_PROFILE] : $APPLLICATION_PROFILE" RunCommand "tizen create native-project -p $BUILD_PROFILE-6.0 -t $APPLLICATION_PROFILE -n $PROJECT_NAME -- $WORKSPACE_PATH" "Project creation $PROJECT_NAME" deploySourceFile "$WORKSPACE_PATH/$PROJECT_NAME" "$SRC_DIRCTORY/$TESTCASE_TYPE/$MODULE_NAME" "$PROFILE_TYPE" "$PROJECT_NAME" "$TESTCASE_TYPE" "$MODULE_NAME" + #Checking rootstrap if [ $PROFILE_TYPE == "mobile" ]; then - checkRootstrap "$ROOTSTRAP_MOBILE" $PROFILE_TYPE $DEVICE_TYPE $CURRENT_VERSION + checkRootstrap "$ROOTSTRAP_MOBILE" $PROFILE_TYPE $DEVICE_TYPE $CURRENT_VERSION $ARCH_TYPE elif [ $PROFILE_TYPE == "wearable" ]; then - checkRootstrap "$ROOTSTRAP_WEARABLE" $PROFILE_TYPE $DEVICE_TYPE $CURRENT_VERSION + checkRootstrap "$ROOTSTRAP_WEARABLE" $PROFILE_TYPE $DEVICE_TYPE $CURRENT_VERSION $ARCH_TYPE elif [ $PROFILE_TYPE == "tizeniot" ]; then - checkRootstrap "$ROOTSTRAP_TIZENIOT" $PROFILE_TYPE $DEVICE_TYPE $CURRENT_VERSION + checkRootstrap "$ROOTSTRAP_TIZENIOT" $PROFILE_TYPE $DEVICE_TYPE $CURRENT_VERSION $ARCH_TYPE elif [ $PROFILE_TYPE == "tv" ]; then - checkRootstrap "$ROOTSTRAP_TV" $PROFILE_TYPE $DEVICE_TYPE $CURRENT_VERSION + checkRootstrap "$ROOTSTRAP_TV" $PROFILE_TYPE $DEVICE_TYPE $CURRENT_VERSION $ARCH_TYPE fi if [ $BUILD_PROFILE == "wearable" ]; then