mirror of
https://github.com/yavook/kiwi-backup.git
synced 2024-11-25 08:03:01 +00:00
Merge branch 'release/0.12.0'
This commit is contained in:
commit
2d520afecb
4 changed files with 44 additions and 14 deletions
|
@ -9,6 +9,7 @@ RUN set -ex; \
|
|||
# duplicity software dependencies
|
||||
apk --no-cache add \
|
||||
ca-certificates \
|
||||
curl \
|
||||
gettext \
|
||||
gnupg \
|
||||
lftp \
|
||||
|
@ -101,6 +102,9 @@ ENV \
|
|||
OPTIONS_CLEANUP="" \
|
||||
OPTIONS_RMFULL="" \
|
||||
OPTIONS_RMINCR="" \
|
||||
WEBHOOK_URL="" \
|
||||
WEBHOOK_FAIL_URL="" \
|
||||
WEBHOOK_INSECURE="" \
|
||||
\
|
||||
##############
|
||||
# ENCRYPTION #
|
||||
|
|
|
@ -166,6 +166,9 @@ backup:
|
|||
# Webhook to be pinged on action (use "%%MSG%%" as a placeholder for a message)
|
||||
WEBHOOK_URL: ""
|
||||
|
||||
# Webhook to be pinged on failed action (use "%%MSG%%" as a placeholder for a message)
|
||||
WEBHOOK_FAIL_URL: ""
|
||||
|
||||
# Allow self-signed certificates on webhook target
|
||||
WEBHOOK_INSECURE: "0"
|
||||
```
|
||||
|
|
|
@ -19,20 +19,25 @@ if [ -n "${GPG_PASSPHRASE}" ]; then
|
|||
unset GPG_PASSPHRASE
|
||||
fi
|
||||
|
||||
# run webhook
|
||||
if [ -n "${WEBHOOK_URL}" ]; then
|
||||
wget_args=""
|
||||
if [ "${WEBHOOK_INSECURE}" = "1" ]; then
|
||||
wget_args="--no-check-certificate"
|
||||
fi
|
||||
|
||||
WEBHOOK_URL="$(echo "${WEBHOOK_URL}" | sed "s,%%MSG%%,running%20task%20${*},g" )"
|
||||
wget -O /dev/null ${wget_args} "${WEBHOOK_URL}" 1>/dev/null 2>/dev/null
|
||||
fi
|
||||
# run start webhook
|
||||
/usr/local/libexec/kiwi-cron/run_webhook \
|
||||
"${WEBHOOK_URL}" "running task ${*}" "${WEBHOOK_INSECURE}"
|
||||
|
||||
# hand over
|
||||
set -ex
|
||||
exec $( \
|
||||
"${this_dir}/build_command" \
|
||||
"${@}" \
|
||||
)
|
||||
eval "$( \
|
||||
"${this_dir}/build_command" \
|
||||
"${@}" \
|
||||
)"
|
||||
exit_status="${?}"
|
||||
|
||||
# run finish webhook
|
||||
if [ "${exit_status}" -eq "0" ]; then
|
||||
/usr/local/libexec/kiwi-cron/run_webhook \
|
||||
"${WEBHOOK_URL}" "task ${*} successful" "${WEBHOOK_INSECURE}"
|
||||
|
||||
else
|
||||
/usr/local/libexec/kiwi-cron/run_webhook \
|
||||
"${WEBHOOK_FAIL_URL:-${WEBHOOK_URL}}" "task ${*} failed, status ${exit_status}" "${WEBHOOK_INSECURE}"
|
||||
|
||||
fi
|
||||
|
|
18
libexec/kiwi-backup/run_webhook
Executable file
18
libexec/kiwi-backup/run_webhook
Executable file
|
@ -0,0 +1,18 @@
|
|||
#!/bin/sh
|
||||
|
||||
message="$(echo "${2}" | sed "s,\s,%20,g" )"
|
||||
webhook_url="$(echo "${1}" | sed "s,%%MSG%%,${message},g" )"
|
||||
webhook_insecure="${3:-0}"
|
||||
|
||||
|
||||
if [ -z "${webhook_url}" ]; then
|
||||
return 1
|
||||
fi
|
||||
|
||||
|
||||
curl_args=""
|
||||
if [ "${webhook_insecure}" = "1" ]; then
|
||||
curl_args="--insecure"
|
||||
fi
|
||||
|
||||
curl ${curl_args} "${webhook_url}" 1>/dev/null 2>/dev/null
|
Loading…
Reference in a new issue