dockcheck/notify_templates/notify_discord.sh

36 lines
1.3 KiB
Bash
Raw Normal View History

2024-10-07 21:31:33 +02:00
### DISCLAIMER: This is a third party addition to dockcheck - best effort testing.
#
# Copy/rename this file to notify.sh to enable the notification snippet.
# Required receiving services must already be set up.
# Modify to fit your setup - set DiscordWebhookUrl
2025-02-09 22:01:08 +01:00
FromHost=$(hostname)
trigger_notification() {
# Modify to fit your setup:
DiscordWebhookUrl="PasteYourFullDiscordWebhookURL"
MsgBody="{\"username\":\"$FromHost\",\"content\":\"$MessageBody\"}"
curl -sS -o /dev/null --fail -X POST -H "Content-Type: application/json" -d "$MsgBody" "$DiscordWebhookUrl"
}
2024-10-07 21:31:33 +02:00
send_notification() {
[ -s "$ScriptWorkDir"/urls.list ] && releasenotes || Updates=("$@")
UpdToString=$( printf '%s\\n' "${Updates[@]}" )
printf "\nSending Discord notification\n"
# Setting the MessageBody variable here.
MessageBody="🐋 Containers on $FromHost with updates available: \n$UpdToString"
2025-02-09 22:01:08 +01:00
trigger_notification
}
2024-10-14 06:28:35 +02:00
2025-02-15 13:35:47 +01:00
### Rename (eg. disabled_dockcheck_notification), remove or comment out the following function
2025-02-09 22:01:08 +01:00
### to not send notifications when dockcheck itself has updates.
dockcheck_notification() {
printf "\nSending Discord dockcheck notification\n"
MessageBody="$FromHost - New version of dockcheck available: \n Installed version: $1 \nLatest version: $2 \n\nChangenotes: $3"
2024-10-07 21:31:33 +02:00
2025-02-09 22:01:08 +01:00
trigger_notification
2024-10-14 06:28:35 +02:00
}