Index: local/run.coco.sh =================================================================== diff -u --- local/run.coco.sh (revision 0) +++ local/run.coco.sh (revision adacb0fc57fd0e03eaf98600feae4c8e55b9dcec) @@ -0,0 +1,94 @@ +QT_VER=5.12.5 +QT_DIR="/opt/Qt$QT_VER/5.12.5/gcc_64/bin" + +APPLICATION=/home/denali/Projects/application +WORKING_DIR=$HOME/coco +DENALI_SQUISH=denaliSquish +REPORT=Report +LOG=Logs +UNITTEST_RESULT=0 + +REPORT_PATH=$WORKING_DIR/$REPORT +LOG_PATH=$REPORT_PATH/$LOG + +function cleanup() { + rm -frd $WORKING_DIR + mkdir -p $WORKING_DIR + mkdir -p $REPORT_PATH + mkdir -p $LOG_PATH +} + +function build_with_coverage() { + echo " ------------------------------ Run qmake" + echo $(pwd) + $QT_DIR/qmake \ + $APPLICATION/denali.pro \ + -spec linux-g++ \ + CONFIG+=qtquickcompiler \ + CONFIG+="$1" \ + CONFIG+=CodeCoverage \ + TARGET="$1" + + echo " ------------------------------ Run make" + /usr/bin/make \ + LINK=csg++ AR=csar CXX=csg++ CC=csgcc -j4 \ + 2> $LOG_PATH/build_for_"$1".err \ + | tee $LOG_PATH/build_for_"$1".log && + /usr/bin/make clean + echo " ------------------------------ Cleaned for next build" +} + +function coverageMerge() { + echo " ------------------------------ Merging the excecution report databases" + cmmerge \ + -o denali.csmes \ + $DENALI_SQUISH.csmes \ + 2> $LOG_PATH/cmmerge.err \ + | tee $LOG_PATH/cmmerge.log +} + +function coverageImport() { + echo " ------------------------------ Importing the execution report into the coverage database" + cmcsexeimport \ + -m $DENALI_SQUISH.csmes \ + -t Squish \ + -e $DENALI_SQUISH.csexe \ + 2> $LOG_PATH/cmcsexeimport_squish.err \ + | tee $LOG_PATH/cmcsexeimport_squish.log +} + +function coverageReport() { + echo " ------------------------------ Generating the coverage report" + cmreport \ + --csmes=$DENALI_SQUISH.csmes \ + --html=$REPORT_PATH/Coverage/index \ + 2> $LOG_PATH/cmreport.err \ + | tee $LOG_PATH/cmreport.log +} + +function copy_TestsResults_IntoServer() { + echo " ------------------------------ Copy the reports to server" + cp -rd $REPORT_PATH/* $REPORT_DIR + sync;sync;sync; +} + +if [ "$1" = "--build" ]; then + cleanup + cd $WORKING_DIR + build_with_coverage $DENALI_SQUISH +fi + +if [ "$1" = "--report" ]; then + cd $WORKING_DIR + #coverageMerge # no need to merge since we only running one version of the application + coverageImport + coverageReport +fi + +if [ "$1" = "" ]; then + echo "Usage:" + echo "run.coco.sh " + echo "--build build and instrment the applicaiotn from $HOME/Projects/application" + echo "--report create the execution report of the ran applicaiton" +fi + Index: local/run.squish.path.ini.mod.sh =================================================================== diff -u --- local/run.squish.path.ini.mod.sh (revision 0) +++ local/run.squish.path.ini.mod.sh (revision adacb0fc57fd0e03eaf98600feae4c8e55b9dcec) @@ -0,0 +1,24 @@ +#!/bin/bash + +SERVER_INI=\ +"[General]\n"\ +"AUT/denali = \"/home/denali/Desktop\"\n"\ +"AUT/denaliSquish = \"/home/denali/coco\"\n" + +PATHS_INI=\ +"# Updated manually to set the python interpreter of the /usr \n"\ +"[Interpreter]\n"\ +"PythonPluginVersion = \"3.6\"\n"\ +"[Paths]\n"\ +"LibraryPath = \"@(SQUISH_PREFIX)/lib:@(SQUISH_PREFIX)/perl/lib/perl5/5.22.0/x86_64-linux/CORE:/usr:@(SQUISH_PREFIX)/ruby/lib:@(SQUISH_PREFIX)/tcl/lib\"\n"\ +"Scripting/PerlLib = \"@(SQUISH_PREFIX)/lib/perl:/opt/rh/devtoolset-7/root//usr/lib64/perl5/vendor_perl:/opt/rh/devtoolset-7/root/usr/lib/perl5:/opt/rh/devtoolset-7/root//usr/share/perl5/vendor_perl:@(SQUISH_PREFIX)/perl/lib/perl5/site_perl/5.22.0/x86_64-linux:@(SQUISH_PREFIX)/perl/lib/perl5/site_perl/5.22.0:@(SQUISH_PREFIX)/perl/lib/perl5/5.22.0/x86_64-linux:@(SQUISH_PREFIX)/perl/lib/perl5/5.22.0:.\"\n"\ +"Scripting/PythonHome = \"/usr\"\n"\ +"Scripting/RubyLib = \"@(SQUISH_PREFIX)/ruby/lib/ruby/gems/2.5.0/gems/did_you_mean-1.2.0/lib;@(SQUISH_PREFIX)/ruby/lib/ruby/site_ruby/2.5.0;@(SQUISH_PREFIX)/ruby/lib/ruby/site_ruby/2.5.0/x86_64-linux;@(SQUISH_PREFIX)/ruby/lib/ruby/site_ruby;@(SQUISH_PREFIX)/ruby/lib/ruby/vendor_ruby/2.5.0;@(SQUISH_PREFIX)/ruby/lib/ruby/vendor_ruby/2.5.0/x86_64-linux;@(SQUISH_PREFIX)/ruby/lib/ruby/vendor_ruby;@(SQUISH_PREFIX)/ruby/lib/ruby/2.5.0;@(SQUISH_PREFIX)/ruby/lib/ruby/2.5.0/x86_64-linux\"\n"\ +"Scripting/TclLibrary = \"@(SQUISH_PREFIX)/tcl/lib/tcl8.6\"\n" + +echo -e "$PATHS_INI" > /opt/squishqt/etc/paths.ini +echo -e "$SERVER_INI" > $HOME/.squish/ver1/server.ini + +apt purge python2.7-minimal +sudo apt autoremove + Index: local/run.update.folder.sh =================================================================== diff -u --- local/run.update.folder.sh (revision 0) +++ local/run.update.folder.sh (revision adacb0fc57fd0e03eaf98600feae4c8e55b9dcec) @@ -0,0 +1,66 @@ +#!/bin/sh +########################################################################### +# +# Copyright (c) 2019-2020 Diality Inc. - All Rights Reserved. +# +# THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN +# WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. +# +# @file create_update_usb.sh +# +# @author (last) Behrouz NematiPour +# @date (last) 01-Nov-2021 +# @author (original) Behrouz NematiPour +# @date (original) 01-Nov-2021 +# +############################################################################ + +# @details +# This script is collecting all the scripts and files and copy in a folder +# to be later used to update a newly flashed SoM +# Run example +# └$ /home/denali/Projects/application/scripts/create_update_usb.sh Projects/application/ /media/denali/usb-disk1/ + +FOLDER_BIN=/home/denali/Projects/tmp/build/denali-Qt_5_12_5_iMX8-Release +FOLDER_SRC=/home/denali/Projects/application +FOLDER_DST=/home/denali/Desktop/update-folder + +DENALI_BIN=denali +FOLDER_SCR=scripts +FOLDER_FNT=resources/fonts +FOLDER_SET=resources/settings + +SCRIPT_SLF=create_update_folder.sh +SCRIPT_AUT=autostart +SCRIPT_RUN=run.sh +SCRIPT_SU1=start.sh +SCRIPT_SU2=setup.sh + +if [ ! -z "$1" ]; then + FOLDER_SRC="$1" +fi + +if [ ! -z "$2" ]; then + FOLDER_DST="$2" +fi + +#create the destination folder +rm -frd "$FOLDER_DST" +mkdir -p "$FOLDER_DST" + +#copy the required folders +cp -r "$FOLDER_SRC"/"$FOLDER_SCR" "$FOLDER_DST" +cp -r "$FOLDER_SRC"/"$FOLDER_FNT" "$FOLDER_DST" +cp -r "$FOLDER_SRC"/"$FOLDER_SET" "$FOLDER_DST" + +#move the setup scrips to the root folder of the usb +mv "$FOLDER_DST"/"$FOLDER_SCR"/"$SCRIPT_SU1" "$FOLDER_DST" +mv "$FOLDER_DST"/"$FOLDER_SCR"/"$SCRIPT_SU2" "$FOLDER_DST" +mv "$FOLDER_DST"/"$FOLDER_SCR"/"$SCRIPT_RUN" "$FOLDER_DST" +mv "$FOLDER_DST"/"$FOLDER_SCR"/"$SCRIPT_AUT" "$FOLDER_DST" + +#copy the UI Software device binary to the root folder of the usb +cp "$FOLDER_BIN"/"$DENALI_BIN" "$FOLDER_DST" + +#removing this script to clean up the script folder +rm "$FOLDER_DST"/"$FOLDER_SCR"/"$SCRIPT_SLF" Index: local/run.vend.patch.sh =================================================================== diff -u --- local/run.vend.patch.sh (revision 0) +++ local/run.vend.patch.sh (revision adacb0fc57fd0e03eaf98600feae4c8e55b9dcec) @@ -0,0 +1,89 @@ +#!/bin/bash + +CURRNET_DATE=$(date +%Y_%m_%d) +CURRENT_GUSER="Behrouz NematiPour" +CURRENT_GEMAIL="bNematiPour@diality.com" + +# set the userr to the default, there were some scripts which were changing the git user. +git config --global --replace-all user.name "$CURRENT_GUSER" +git config --global --replace-all user.email "$CURRENT_GEMAIL" + +function patch_sources() { + PASS=$(pwgen -ABcsnv1 16) + + cd + DEV_TEST_DIR=$HOME/Diality_Dev_Test_$CURRNET_DATE + rsync -Lr --exclude=".*" --exclude="*.log" --exclude="*.err" --exclude="*.swp" Projects/application $DEV_TEST_DIR + + cd $DEV_TEST_DIR + zip --password=$PASS -r $DEV_TEST_DIR.zip application + + echo $PASS > $DEV_TEST_DIR.pas + + cd + rm -frd $DEV_TEST_DIR +} + +function update_outsource_dialin() { + DIALIN_SOURCE=$HOME/Projects/dialin/dialin/* + DIALIN_OUTSOURCE=$HOME/Projects/outsource/dialin/ + + COMMIT_MESSAGE=$CURRNET_DATE + if [[ -n "$1" ]]; then + COMMIT_MESSAGE="$1" + fi + + echo " ---------- Updating the dialin outsource folder" + rsync -Lr --exclude=".*" --exclude="*.log" --exclude="*.err" --exclude="*.swp" --exclude="__pychache__" $DIALIN_SOURCE $DIALIN_OUTSOURCE + + echo " ---------- push to the server [$COMMIT_MESSAGE]" + cd $DIALIN_OUTSOURCE + git add . + git commit -m "$COMMIT_MESSAGE" + git push -u origin master +} + +function update_outsource_simulator() { + SIMULATOR_SOURCE=$HOME/Projects/simulator/* + SIMULATOR_OUTSOURCE=$HOME/Projects/outsource/simulator/ + + COMMIT_MESSAGE=$CURRNET_DATE + if [[ -n "$1" ]]; then + COMMIT_MESSAGE="$1" + fi + + echo " ---------- Updating the simulator outsource folder" + rsync -Lr --exclude=".*" --exclude="*.log" --exclude="*.err" --exclude="*.swp" --exclude="__pychache__" $SIMULATOR_SOURCE $SIMULATOR_OUTSOURCE + + echo " ---------- push to the server [$COMMIT_MESSAGE]" + cd $SIMULATOR_OUTSOURCE + git add . + git commit -m "$COMMIT_MESSAGE" + git push -u origin master +} + +if [[ "$1" == "--source" ]]; then + patch_sources +fi + +if [[ "$1" == "--dialin" ]]; then + update_outsource_dialin "$2" +fi + +if [[ "$1" == "--simulator" ]]; then + update_outsource_simulator "$2" +fi + +if [[ "$1" == "" ]]; then + echo "Usage:" + echo "./run.vend.patch