mirror of
https://github.com/zoriya/cish.git
synced 2025-12-06 07:16:16 +00:00
Add runner script
This commit is contained in:
34
runner/runner.sh
Executable file
34
runner/runner.sh
Executable file
@@ -0,0 +1,34 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
SCRIPT=$(realpath -- "$1")
|
||||
cd -- "$(dirname -- "$SCRIPT")"
|
||||
|
||||
_CISH_STARTED=false
|
||||
|
||||
function _cish_on_command() {
|
||||
_CISH_EXIT_CODE=$?
|
||||
|
||||
# we don't wanna handle subscripts or commands originating from the debug trap
|
||||
if [[ "${BASH_SOURCE[1]}" != "$SCRIPT" ]]; then
|
||||
return
|
||||
fi
|
||||
if [[ "$_CISH_STARTED" == true ]]; then
|
||||
echo "exit code: $_CISH_EXIT_CODE"
|
||||
fi
|
||||
_CISH_STARTED=true
|
||||
echo "${BASH_SOURCE[1]}:${BASH_LINENO[0]} $BASH_COMMAND"
|
||||
}
|
||||
|
||||
function _cish_on_error() {
|
||||
_CISH_VALID_EXIT_CODE=$?
|
||||
_cish_on_command
|
||||
exit "$_CISH_VALID_EXIT_CODE"
|
||||
}
|
||||
|
||||
shopt -s extdebug
|
||||
trap _cish_on_command DEBUG
|
||||
trap _cish_on_error ERR
|
||||
|
||||
# shellcheck source=/dev/null
|
||||
source "$SCRIPT"
|
||||
Reference in New Issue
Block a user