Offer to kill process taking port 8081 when starting react-native

Signed-off-by: Pedro Pombeiro <pombeirp@users.noreply.github.com>
This commit is contained in:
Pedro Pombeiro 2018-11-23 09:56:31 +01:00
parent 85e0834d3a
commit a97f319ba0
No known key found for this signature in database
GPG Key ID: A65DEB11E4BBC647
2 changed files with 19 additions and 1 deletions

View File

@ -177,7 +177,7 @@ test-auto: ##@test Run tests in interactive (auto) mode in NodeJS
# Other
#--------------
react-native: ##@other Start react native packager
react-native start
@scripts/start-react-native.sh
geth-connect: ##@other Connect to Geth on the device
adb forward tcp:8545 tcp:8545

18
scripts/start-react-native.sh Executable file
View File

@ -0,0 +1,18 @@
#!/bin/bash
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m'
METRO_PORT=8081
METRO_PID="$(lsof -i :${METRO_PORT} | awk 'NR!=1 {print $2}')"
if [ ! -z $METRO_PID ]; then
echo -e "${YELLOW}TCP port ${METRO_PORT} is required by the Metro packager.\nThe following process currently has the port open, preventing Metro from starting:${NC}"
ps -fp $METRO_PID
echo -e "${YELLOW}Do you want to terminate it (y/n)?${NC}"
read -n 1 term
[[ $term == 'y' ]] && kill $METRO_PID
fi
react-native start