#!/bin/bash ########################################################################### # Copyright (C) 2017, 2018 IoT.bzh # # Author: Romain Forlot # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. ########################################################################### function usage() { cat >&2 << EOF Usage: $0 path: path to the test wgt file EOF } function error() { echo "ERR: $@" >&2 exit 1 } function info() { echo "INF: $@" >&2 } # check application name passed as first arg WGT=$1 [[ -z "$WGT" ]] && { usage; exit 0;} [[ ! -f "$WGT" ]] && { usage; exit 0;} INSTALL=$(afm-util install $WGT) APP=$(echo $INSTALL | jq -r .added) [[ "$APP" == "null" ]] && error "Widget contains error. Abort" # ask appfw to start application pid=$(afm-util start $APP) [[ -z "$pid" || ! -e "/proc/$pid" ]] && error "Failed to start application $APP" info "$APP started with pid=$pid" ps -ef | grep -v grep | grep -q $pid RUNNING=$? while [[ $RUNNING -eq 0 ]] do ps -ef | grep -v grep | grep -q $pid RUNNING=$? done # Terminate the App afm-util kill $pid >&2 afm-util remove $APP >&2 info "$APP killed and removed"