New avatar menu: Add supervised user disclaimer ("Usage and history of this user...
[chromium-blink-merge.git] / mojo / tools / mojosh.sh
blobbb8a2cdca4a4f61013dda9435e4ef667a432369d
1 #!/bin/bash
2 # Copyright 2014 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file.
6 # This a simple script to make running Mojo shell easier (on Linux).
8 DIRECTORY="$(dirname "$0")"/../../out/Debug
9 PORT=$(($RANDOM % 8192 + 2000))
11 do_help() {
12 cat << EOF
13 Usage: $(basename "$0") [-d DIRECTORY] [-|--] <mojo_shell arguments ...>
15 DIRECTORY defaults to $DIRECTORY.
17 Example:
18 $(basename "$0") mojo:mojo_sample_app
19 EOF
22 kill_http_server() {
23 echo "Killing SimpleHTTPServer ..."
24 kill $HTTP_SERVER_PID
25 wait $HTTP_SERVER_PID
28 while [ $# -gt 0 ]; do
29 case "$1" in
30 -h|--help)
31 do_help
32 exit 0
34 -d)
35 shift
36 if [ $# -eq 0 ]; then
37 do_help
38 exit 1
40 DIRECTORY="$1"
42 --show-bash-alias)
43 echo alias\ mojosh\=\'\"\$\(pwd\ \|\ sed\ \'\"\'\"\'s\/\\\(\.\*\\\/src\\\
44 \)\.\*\/\\1\/\'\"\'\"\'\)\/mojo\/tools\/mojosh\.sh\"\'
45 exit 0
47 # Separate arguments to mojo_shell (e.g., in case you want to pass it -d).
48 -|--)
49 shift
50 break
53 break
55 esac
56 shift
57 done
59 echo "Base directory: $DIRECTORY"
61 echo "Running SimpleHTTPServer in directory $DIRECTORY/lib on port $PORT"
62 cd $DIRECTORY/lib || exit 1
63 python -m SimpleHTTPServer $PORT &
64 # Kill the HTTP server on exit (even if the user kills everything using ^C).
65 HTTP_SERVER_PID=$!
66 trap kill_http_server EXIT
67 cd ..
69 echo "Running:"
70 echo "./mojo_shell --origin=http://127.0.0.1:$PORT --disable-cache $*"
71 ./mojo_shell --origin=http://127.0.0.1:$PORT --disable-cache $*