Committed by
Gerrit Code Review
Simplified onos-app reinstall usage to extract app name from the oar file.
Change-Id: I7e5efc2af4f2b0ced41caeeef67bc456243ddc62
Showing
1 changed file
with
30 additions
and
16 deletions
| ... | @@ -11,43 +11,57 @@ export URL=http://$node:8181/onos/v1/applications | ... | @@ -11,43 +11,57 @@ export URL=http://$node:8181/onos/v1/applications |
| 11 | export HDR="-HContent-Type:application/octet-stream" | 11 | export HDR="-HContent-Type:application/octet-stream" |
| 12 | export curl="curl -sS" | 12 | export curl="curl -sS" |
| 13 | 13 | ||
| 14 | +# Prints usage help | ||
| 14 | function usage { | 15 | function usage { |
| 15 | echo "usage: onos-app <node-ip> list" >&2 | 16 | echo "usage: onos-app <node-ip> list" >&2 |
| 16 | echo " onos-app <node-ip> {install|install!} <app-file>" >&2 | 17 | echo " onos-app <node-ip> {install|install!} <app-file>" >&2 |
| 17 | - echo " onos-app <node-ip> {reinstall|reinstall!} <app-name> <app-file>" >&2 | 18 | + echo " onos-app <node-ip> {reinstall|reinstall!} [<app-name>] <app-file>" >&2 |
| 18 | echo " onos-app <node-ip> {activate|deactivate|uninstall} <app-name>" >&2 | 19 | echo " onos-app <node-ip> {activate|deactivate|uninstall} <app-name>" >&2 |
| 19 | exit 1 | 20 | exit 1 |
| 20 | } | 21 | } |
| 21 | 22 | ||
| 23 | +# Extract app name from the specified *.oar file | ||
| 24 | +function appName { | ||
| 25 | + aux=/tmp/aux$$.jar | ||
| 26 | + cp $1 $aux | ||
| 27 | + pushd /tmp >/dev/null | ||
| 28 | + jar xf $aux app.xml && grep name= app.xml | cut -d\" -f2 | ||
| 29 | + rm -f $aux /tmp/app.xml | ||
| 30 | + popd >/dev/null | ||
| 31 | +} | ||
| 32 | + | ||
| 22 | [ -z $node -o "$node" = "-h" -o "$node" = "--help" -o "$node" = "-?" ] && usage | 33 | [ -z $node -o "$node" = "-h" -o "$node" = "--help" -o "$node" = "-?" ] && usage |
| 23 | 34 | ||
| 24 | case $cmd in | 35 | case $cmd in |
| 25 | list) $curl -X GET $URL;; | 36 | list) $curl -X GET $URL;; |
| 26 | - install) | 37 | + install!|install) |
| 27 | - [ $# -lt 3 -o ! -f $app ] && usage | 38 | + [ $cmd = "install!" ] && activate="?activate=true" |
| 28 | - $curl -X POST $HDR $URL --data-binary @$app;; | ||
| 29 | - install!) | ||
| 30 | [ $# -lt 3 -o ! -f $app ] && usage | 39 | [ $# -lt 3 -o ! -f $app ] && usage |
| 31 | - $curl -X POST $HDR $URL?activate=true --data-binary @$app;; | 40 | + $curl -X POST $HDR $URL$activate --data-binary @$app |
| 41 | + ;; | ||
| 32 | 42 | ||
| 33 | - reinstall) | 43 | + reinstall!|reinstall) |
| 34 | - [ $# -lt 4 -o ! -f $4 ] && usage | 44 | + [ $cmd = "reinstall!" ] && activate="?activate=true" |
| 45 | + [ $# -lt 4 -a ! -f "$3" ] && usage | ||
| 46 | + [ $# -eq 4 -a ! -f "$4" ] && usage | ||
| 47 | + oar=$4 | ||
| 48 | + [ $# -lt 4 ] && oar=$3 && app=$(appName $oar) | ||
| 35 | $curl -X DELETE $URL/$app | 49 | $curl -X DELETE $URL/$app |
| 36 | - $curl -X POST $HDR $URL --data-binary @$4;; | 50 | + $curl -X POST $HDR $URL$activate --data-binary @$oar |
| 37 | - reinstall!) | 51 | + ;; |
| 38 | - [ $# -lt 4 -o ! -f $4 ] && usage | ||
| 39 | - $curl -X DELETE $URL/$app | ||
| 40 | - $curl -X POST $HDR $URL?activate=true --data-binary @$4;; | ||
| 41 | 52 | ||
| 42 | uninstall) | 53 | uninstall) |
| 43 | [ $# -lt 3 ] && usage | 54 | [ $# -lt 3 ] && usage |
| 44 | - $curl -X DELETE $URL/$app;; | 55 | + $curl -X DELETE $URL/$app |
| 56 | + ;; | ||
| 45 | activate) | 57 | activate) |
| 46 | [ $# -lt 3 ] && usage | 58 | [ $# -lt 3 ] && usage |
| 47 | - $curl -X POST $URL/$app/active;; | 59 | + $curl -X POST $URL/$app/active |
| 60 | + ;; | ||
| 48 | deactivate) | 61 | deactivate) |
| 49 | [ $# -lt 3 ] && usage | 62 | [ $# -lt 3 ] && usage |
| 50 | - $curl -X DELETE $URL/$app/active;; | 63 | + $curl -X DELETE $URL/$app/active |
| 64 | + ;; | ||
| 51 | 65 | ||
| 52 | *) usage;; | 66 | *) usage;; |
| 53 | esac | 67 | esac | ... | ... |
-
Please register or login to post a comment