From 9bfe460934dd9bafcfab7bdf8cbbf7ad968e9026 Mon Sep 17 00:00:00 2001 From: David Reyna Date: Sun, 20 Aug 2017 18:01:49 -0700 Subject: bitbake: Toaster: custom start and stop actions Toaster needs the ability to allow custom extensions to execute when Toaster is started and stopped. Toaster will look for a custom extension script in the fixtures directory and execute any applicable hooks. [YOCTO #11938] (Bitbake rev: 12a73f6914488029f2b9dd680e004fba7dde41af) Signed-off-by: David Reyna Signed-off-by: Richard Purdie --- bitbake/bin/toaster | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) (limited to 'bitbake/bin') diff --git a/bitbake/bin/toaster b/bitbake/bin/toaster index c2e33fe376..762451df23 100755 --- a/bitbake/bin/toaster +++ b/bitbake/bin/toaster @@ -24,6 +24,14 @@ Usage: source toaster start|stop [webport=] [noweb] [webport] Set the development server (default: localhost:8000) " +custom_extention() +{ + custom_extension=$BBBASEDIR/lib/toaster/orm/fixtures/custom_toaster_append.sh + if [ -f $custom_extension ] ; then + $custom_extension $* + fi +} + databaseCheck() { retval=0 @@ -50,6 +58,11 @@ databaseCheck() webserverKillAll() { local pidfile + if [ -f ${BUILDDIR}/.toastermain.pid ] ; then + custom_extention web_stop_postpend + else + custom_extention noweb_stop_postpend + fi for pidfile in ${BUILDDIR}/.toastermain.pid ${BUILDDIR}/.runbuilds.pid; do if [ -f ${pidfile} ]; then pid=`cat ${pidfile}` @@ -89,6 +102,7 @@ webserverStartAll() else echo "Toaster development webserver started at http://$ADDR_PORT" echo -e "\nYou can now run 'bitbake ' on the command line and monitor your build in Toaster.\nYou can also use a Toaster project to configure and run a build.\n" + custom_extention web_start_postpend $ADDR_PORT fi return $retval @@ -168,7 +182,6 @@ fi unset OE_ROOT - WEBSERVER=1 ADDR_PORT="localhost:8000" unset CMD @@ -241,6 +254,7 @@ fi echo "The system will $CMD." # Execute the commands +custom_extention toaster_prepend $CMD $ADDR_PORT case $CMD in start ) @@ -262,9 +276,10 @@ case $CMD in if [ ! -f "$TOASTER_DIR/toaster.sqlite" ] ; then if ! databaseCheck; then echo "Failed ${CMD}." - return 4 + return 4 fi fi + custom_extention noweb_start_postpend $ADDR_PORT fi if [ $WEBSERVER -gt 0 ] && ! webserverStartAll; then echo "Failed ${CMD}." @@ -278,6 +293,7 @@ case $CMD in # set fail safe stop system on terminal exit trap stop_system SIGHUP echo "Successful ${CMD}." + custom_extention toaster_postpend $CMD $ADDR_PORT return 0 ;; stop ) @@ -285,3 +301,5 @@ case $CMD in echo "Successful ${CMD}." ;; esac +custom_extention toaster_postpend $CMD $ADDR_PORT + -- cgit v1.2.3-54-g00ecf