LinkList/dev.sh

48 lines
725 B
Bash
Executable File

#!/usr/bin/env bash
PURPLE='\033[0;35m'
CYAN='\033[0;36m'
NC='\033[0m'
function prefix_stdout_stderr() {
exec > >(trap "" INT TERM; sed "s/^/`printf "$1"`/")
exec 2> >(trap "" INT TERM; sed "s/^/`printf "$1"`/" >&2)
}
function start_frontend() {
prefix_stdout_stderr "${PURPLE}frontend: ${NC}"
cd ./frontend
npm run dev
}
function start_backend() {
prefix_stdout_stderr "${CYAN}backend: ${NC}"
cd ./backend
source venv/bin/activate
echo $(which python)
python main.py
}
start_frontend &
pid_frontend=$!
start_backend &
pid_backend=$!
trap_ctrlc() {
echo ""
kill $pid_frontend
echo "frontend exit code: $?"
kill $pid_backend
echo "backend exit code: $?"
}
trap trap_ctrlc INT
wait