toaster: support environment-safe manage commands

Submitted by Reyna, David on March 27, 2020, 8:44 p.m. | Patch ID: 171378

Details

Message ID 20200327204432.31470-1-david.reyna@windriver.com
State New
Headers show

Commit Message

Reyna, David March 27, 2020, 8:44 p.m.
Directly support the various 'manage' commands from the Toaster
executable, so that users do not have to manually set up the required
environment and paths.

Examples:
  $ . toaster manage createsuperuser
  $ . toaster manage lsupdates

[YOCTO #13170]

Signed-off-by: David Reyna <David.Reyna@windriver.com>
---
 bitbake/bin/toaster | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

Patch hide | download patch | download mbox

diff --git a/bitbake/bin/toaster b/bitbake/bin/toaster
index c3472dfee8..dd4cd93581 100755
--- a/bitbake/bin/toaster
+++ b/bitbake/bin/toaster
@@ -8,12 +8,13 @@ 
 #
 
 HELP="
-Usage: source toaster start|stop [webport=<address:port>] [noweb] [nobuild] [toasterdir]
+Usage 1: source toaster start|stop [webport=<address:port>] [noweb] [nobuild] [toasterdir]
     Optional arguments:
         [nobuild] Setup the environment for capturing builds with toaster but disable managed builds
         [noweb] Setup the environment for capturing builds with toaster but don't start the web server
         [webport] Set the development server (default: localhost:8000)
         [toasterdir] Set absolute path to be used as TOASTER_DIR (default: BUILDDIR/../)
+Usage 2: source toaster manage [createsuperuser|lsupdates|migrate|makemigrations|checksettings|collectstatic|...]
 "
 
 custom_extention()
@@ -180,6 +181,7 @@  WEBSERVER=1
 export TOASTER_BUILDSERVER=1
 ADDR_PORT="localhost:8000"
 TOASTERDIR=`dirname $BUILDDIR`
+MANAGE="python3 $OE_ROOT/bitbake/lib/toaster/manage.py"
 unset CMD
 for param in $*; do
     case $param in
@@ -208,6 +210,9 @@  for param in $*; do
     toasterdir=*)
             TOASTERDIR="${param#*=}"
     ;;
+    manage )
+            CMD=$param
+    ;;
     --help)
             echo "$HELP"
             return 0
@@ -306,6 +311,9 @@  case $CMD in
         stop_system
         echo "Successful ${CMD}."
     ;;
+    manage )
+        $MANAGE $manage_cmd
+    ;;
 esac
 custom_extention toaster_postpend $CMD $ADDR_PORT