| 12345678910111213141516171819202122 |
- #!/bin/sh
- # Sends termination signal to other sidecar pods, meant to run as a pre-stop hook
- # or called by ./job_killer.sh.
- #
- # Usage: ./sidecar_killer.sh [target_process]
- sidecar_pid=$(pgrep $1)
- if [ -n "$sidecar_pid" ]; then
- kill -TERM $sidecar_pid
- # schedule hard kill after 30 seconds
- (sleep 30; kill -9 -${sidecar_pid} 2>/dev/null || true) &
- killer=${!}
- # wait for processes to finish
- wait ${sidecar_pid} 2>/dev/null || true
- # children exited gracefully - cancel timer
- sleep 0.1 && kill -9 ${killer} 2>/dev/null && target_pid="" || true
- fi
|