#!/bin/bash -e

. "node_modules/@pathable/pathable-scripts/scripts/_env.sh"
. "node_modules/@pathable/pathable-scripts/scripts/_lib.sh"

runner=${1-browser}
package=${2-./}

# development and test configurations available
if [[ $runner == *"test"* ]]; then
  environment="test"
else
  environment="development"
fi

settingsFile=private/env/$environment/settings.json

load_env "$HOME/.pathable-env"
load_env "private/env/.env"
load_env "private/env/$environment/.env"

if [ $runner = "ios" ]; then
  meteor run ios --settings $settingsFile --port $PORT --mobile-server $METEOR_MOBILE_SERVER &

elif [ $runner = "ios-device" ]; then
  meteor run ios-device --settings $settingsFile --port $PORT --mobile-server $METEOR_MOBILE_SERVER &

elif [ $runner = "android" ]; then
  meteor run android --settings $settingsFile --port $PORT --mobile-server $METEOR_MOBILE_SERVER &

elif [ $runner = "android-device" ]; then
  meteor run android-device --settings $settingsFile --port $PORT --mobile-server $METEOR_MOBILE_SERVER &

elif [ $runner = "bundle-visualizer" ]; then
  meteor run --settings $settingsFile --port $PORT --extra-packages bundle-visualizer --production &

elif [ $runner = "profile" ]; then
  METEOR_PROFILE=1 meteor run --settings $settingsFile --port $PORT &

else
  meteor run --settings $settingsFile --port $PORT &

fi

# wait until done then kill anything started here
wait
trap 'kill $(jobs -p)' SIGINT SIGTERM
