various
parent
2948a24fe8
commit
d218f3b102
|
@ -127,14 +127,17 @@ function invoke_script() {
|
||||||
set -o pipefail
|
set -o pipefail
|
||||||
exec 3>&1
|
exec 3>&1
|
||||||
|
|
||||||
script_output=$("$backup_scripts_dir/$backup_script_filename" 2>&1 | tee /dev/fd/3)
|
script_error_log="$(create_tmp_file)"
|
||||||
|
script_output=$("$backup_scripts_dir/$backup_script_filename" 2>$script_error_log | tee /dev/fd/3)
|
||||||
|
|
||||||
if [[ "$?" == 0 ]]; then
|
if [[ "$?" == 0 ]]; then
|
||||||
trigger_notify "success" "Backup script succeeded: $backup_script_name" "$script_output"
|
trigger_notify "success" "Backup script succeeded: $backup_script_name" "..."
|
||||||
else
|
else
|
||||||
trigger_notify "error" "Backup script failed: $backup_script_name" "$script_output"
|
trigger_notify "error" "Backup script failed: $backup_script_name" "$(cat "$script_error_log")"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
rm -f"$script_error_log"
|
||||||
|
|
||||||
set +o pipefail
|
set +o pipefail
|
||||||
exec 3>&-
|
exec 3>&-
|
||||||
}
|
}
|
||||||
|
@ -145,13 +148,17 @@ function trigger_notify() {
|
||||||
output="$(echo "$3" | sed -r "s/\x1B\[[0-9;]*[JKmsu]//g")"
|
output="$(echo "$3" | sed -r "s/\x1B\[[0-9;]*[JKmsu]//g")"
|
||||||
notify_prog="/usr/local/bin/sh.zio.notify"
|
notify_prog="/usr/local/bin/sh.zio.notify"
|
||||||
|
|
||||||
|
log_path="$(create_log "$output")"
|
||||||
|
|
||||||
if [[ ! -f "$notify_prog" ]]; then
|
if [[ ! -f "$notify_prog" ]]; then
|
||||||
say warning "'$notify_prog' not found. Not sending notification"
|
say warning "'$notify_prog' not found. Not sending notification"
|
||||||
else
|
else
|
||||||
"$notify_prog" \
|
"$notify_prog" \
|
||||||
|
--file "$log_path" \
|
||||||
--level "$level" \
|
--level "$level" \
|
||||||
--message '```\\n'"${output//$'\n'/'\\n'}"'\\n```' \
|
|
||||||
--title "$title"
|
--title "$title"
|
||||||
|
|
||||||
|
#--message '```\\n'"${output//$'\n'/'\\n'}"'\\n```' \
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
_PLUG_TITLE="ntfy Helper"
|
_PLUG_TITLE="ntfy Helper"
|
||||||
_PLUG_DESCRIPTION=""
|
_PLUG_DESCRIPTION=""
|
||||||
_PLUG_ARGS=(
|
_PLUG_ARGS=(
|
||||||
"message;m;;string;(No Message)"
|
"message;m;;string"
|
||||||
"title;t;;string;(No Title)"
|
"title;t;;string;(No Title)"
|
||||||
"file;f;;path"
|
"file;f;;path"
|
||||||
"level;l;;string;info"
|
"level;l;;string;info"
|
||||||
|
@ -52,42 +52,43 @@ function main() {
|
||||||
hostname="$(hostname -s)"
|
hostname="$(hostname -s)"
|
||||||
invoked_by="$_invoked_by"
|
invoked_by="$_invoked_by"
|
||||||
level_emoji="$(get_level_emoji "$_level")"
|
level_emoji="$(get_level_emoji "$_level")"
|
||||||
|
topic="$(get_topic "$_invoked_by")"
|
||||||
|
|
||||||
n_message="$_message"
|
curl_command="curl"
|
||||||
n_priority="$(get_level_priority "$_level")"
|
|
||||||
n_title="$level_emoji [$hostname] $_title"
|
|
||||||
n_topic="$(get_topic "$_invoked_by")"
|
|
||||||
|
|
||||||
body='{
|
|
||||||
"message": "'$n_message'",
|
|
||||||
"priority": '$n_priority',
|
|
||||||
"tags": ["'$hostname'", "'$invoked_by'"],
|
|
||||||
"title": "'$n_title'",
|
|
||||||
"topic": "'$n_topic'"
|
|
||||||
}'
|
|
||||||
|
|
||||||
curl_command="curl -d \"$body\""
|
|
||||||
curl_command+=" -H \"Authorization: Bearer $token\""
|
curl_command+=" -H \"Authorization: Bearer $token\""
|
||||||
curl_command+=" -H \"Markdown: yes\""
|
curl_command+=" -H \"Markdown: yes\""
|
||||||
|
curl_command+=" -H \"Priority: $(get_level_priority "$_level")\""
|
||||||
|
curl_command+=" -H \"Tags: $hostname,$invoked_by\""
|
||||||
|
curl_command+=" -H \"Title: $level_emoji [$hostname] $_title\""
|
||||||
|
|
||||||
if [[ "$n_topic" == "zio_test" ]]; then
|
if [[ "$_message" != "true" ]]; then
|
||||||
curl_command+=" -H \"Cache: no\""
|
curl_command+=" -H \"Message: $_message\""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "$_file" != "" ]]; then
|
if [[ "$_file" != "" ]]; then
|
||||||
if [[ ! -f "$_file" ]]; then
|
if [[ ! -f "$_file" ]]; then
|
||||||
die "Cannot attach '$_file': file does not exist"
|
die "Cannot attach '$_file': file does not exist"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ "$n_message" != "" ]]; then
|
||||||
|
say warning "Cannot send --message/-m with --file/-f. Only sending file"
|
||||||
|
fi
|
||||||
|
|
||||||
full_file="$(realpath -s "$_file")"
|
full_file="$(realpath -s "$_file")"
|
||||||
|
|
||||||
curl_command+=" -T \"$full_file\""
|
curl_command+=" -T \"$full_file\""
|
||||||
curl_command+=" -H \"Filename: $(basename "$full_file")\""
|
curl_command+=" -H \"Filename: $(basename "$full_file")\""
|
||||||
|
else
|
||||||
|
# HACK: Attachments don't work if you use "Cache: no"
|
||||||
|
if [[ "$topic" == "zio_test" ]]; then
|
||||||
|
curl_command+=" -H \"Cache: no\""
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
curl_command+=" https://ntfy.zio.sh/"
|
curl_command+=" https://ntfy.zio.sh/$topic"
|
||||||
|
|
||||||
echo $curl_command
|
echo "$curl_command" | bash
|
||||||
}
|
}
|
||||||
|
|
||||||
if [[ $_PLUG_INVOKED != "true" ]]; then
|
if [[ $_PLUG_INVOKED != "true" ]]; then
|
||||||
|
|
|
@ -4,6 +4,23 @@ function container_exec() {
|
||||||
podman_exec $@
|
podman_exec $@
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function create_log() {
|
||||||
|
content="$1"
|
||||||
|
|
||||||
|
log_dir="/var/log/zio"
|
||||||
|
log_file="$(date +%Y%m%d%H%M%S).$(echo $RANDOM | md5sum | head -c 6; echo;).log"
|
||||||
|
|
||||||
|
if [[ ! $(id -u) = 0 ]]; then
|
||||||
|
log_dir="/tmp/zio/logs"
|
||||||
|
fi
|
||||||
|
|
||||||
|
log_path="$log_dir/$log_file"
|
||||||
|
|
||||||
|
mkdir -p "$log_dir"
|
||||||
|
echo -e "$content" > "$log_dir/$log_file"
|
||||||
|
echo "$log_path"
|
||||||
|
}
|
||||||
|
|
||||||
function create_tmp_file() {
|
function create_tmp_file() {
|
||||||
name="$1"
|
name="$1"
|
||||||
prefix_dir="/tmp/zio"
|
prefix_dir="/tmp/zio"
|
||||||
|
|
Loading…
Reference in New Issue