28 lines
723 B
Bash
28 lines
723 B
Bash
#!/bin/sh
|
|
# Function to timestamp logs
|
|
timestamp() {
|
|
date "+%Y-%m-%d %H:%M:%S"
|
|
}
|
|
|
|
# Start the terminal server in the background with logging
|
|
node /terminal/terminal-server.js > >(while read line; do echo "$(timestamp) [TERMINAL] $line"; done) 2>&1 &
|
|
TERMINAL_PID=$!
|
|
|
|
# Start the Soketi process in the background with logging
|
|
node /app/bin/server.js start > >(while read line; do echo "$(timestamp) [SOKETI] $line"; done) 2>&1 &
|
|
SOKETI_PID=$!
|
|
|
|
# Function to forward signals to child processes
|
|
forward_signal() {
|
|
kill -$1 $TERMINAL_PID $SOKETI_PID
|
|
}
|
|
|
|
# Forward SIGTERM to child processes
|
|
trap 'forward_signal TERM' TERM
|
|
|
|
# Wait for any process to exit
|
|
wait -n
|
|
|
|
# Exit with status of process that exited first
|
|
exit $?
|