From 82f644293383429d6e972c0b976bbc6b55b8351d Mon Sep 17 00:00:00 2001 From: mag37 Date: Sat, 6 Jan 2024 20:33:21 +0100 Subject: [PATCH] modified apprise-notify --- README.md | 9 ++++----- notify_apprise.sh | 27 +++++++++++++++------------ 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index 13a1196..6e540e4 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ ___ - Running docker (duh) and compose, either standalone or plugin. - [`regclient/regctl`](https://github.com/regclient/regclient) (Licensed under [Apache-2.0 License](http://www.apache.org/licenses/LICENSE-2.0)) - User will be prompted to download `regctl` if not in `PATH` or `PWD`. - - regctl requires `amd64/aarch64` - see [workaround](#workaround-for-non-amd64--aarch64) if other architecture is used. + - regctl requires `amd64/arm64` - see [workaround](#workaround-for-non-amd64--arm64) if other architecture is used. ___ @@ -81,6 +81,7 @@ After the updates are complete, you'll get prompted if you'd like to prune dangl ### :loudspeaker: Notifications Trigger with the `-i` flag. +Run it scheduled with `-ni` to only get notified when there's updates available! Use a `notify_X.sh` template file, copy it to `notify.sh`, modify it to your needs! Current templates: @@ -89,8 +90,6 @@ Current templates: - Apprise (with it's [multitude](https://github.com/caronc/apprise#supported-notifications) of notifications) - both native [caronc/apprise](https://github.com/caronc/apprise) and the standalone [linuxserver/docker-apprise-api](https://github.com/linuxserver/docker-apprise-api) -Run it scheduled with `-ni` to only get notified when there's updates available! - Further additions are welcome - suggestions or PR! Initiated and first contributed by [yoyoma2](https://github.com/yoyoma2). @@ -105,8 +104,8 @@ Containers need to be manually stopped, removed and created again to run on the - Not respecting `--profile` options when re-creating the container. - Not working well with containers created by Portainer. -### Workaround for non **amd64** / **aarch64** -`regctl` provides binaries for amd64/aarch64, to use on other architecture you could try this workaround. +### Workaround for non **amd64** / **arm64** +`regctl` provides binaries for amd64/arm64, to use on other architecture you could try this workaround. Run regctl in a contianer wrapped in a shell script. Copied from [regclient/docs/install.md](https://github.com/regclient/regclient/blob/main/docs/install.md): ```sh diff --git a/notify_apprise.sh b/notify_apprise.sh index ac6c980..9945524 100644 --- a/notify_apprise.sh +++ b/notify_apprise.sh @@ -2,33 +2,36 @@ # # 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 AppriseURL to your Apprise ip/domain. +# Modify to fit your setup - if API, set AppriseURL to your Apprise ip/domain. send_notification() { Updates=("$@") UpdToString=$( printf "%s\n" "${Updates[@]}" ) FromHost=$(hostname) -AppriseURL="http://apprise.mydomain.tld:1234/notify/apprise" printf "\nSending Apprise notification\n" MessageTitle="$FromHost - updates available." # Setting the MessageBody variable here. -read -d '\n' MessageBody << EOF +read -d '\n' MessageBody << __EOF Containers on $FromHost with updates available: $UpdToString -EOF +__EOF + +# Modify to fit your setup: +apprise -vv -t "$MessageTitle" -b "$MessageBody" \ + mailto://myemail:mypass@gmail.com \ + mastodons://{token}@{host} \ + pbul://o.gn5kj6nfhv736I7jC3cj3QLRiyhgl98b \ + tgram://{bot_token}/{chat_id}/ + +### If you use the Apprise-API - Comment out the apprise command above. +### Uncomment the AppriseURL and the curl-line below: +# AppriseURL="http://apprise.mydomain.tld:1234/notify/apprise" +# curl -X POST -F "title=$MessageTitle" -F "body=$MessageBody" -F "tags=all" $AppriseURL -curl -X POST -F "title=$MessageTitle" -F "body=$MessageBody" -F "tags=all" $AppriseURL } -# If you run apprise bare metal on the same machine as dockcheck -# you can just comment out the AppriseURL and swap the curl line -# with something ike this: -# -# apprise -vv -t "$MessageTitle" -b "$MessageBody" \ -# 'mailto://myemail:mypass@gmail.com' \ -# 'pbul://o.gn5kj6nfhv736I7jC3cj3QLRiyhgl98b'