From 3bf226743133dc6a6126be9f49d55bff62f31100 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Fri, 28 Aug 2020 17:29:26 +0200 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Add=20watchdog=20to=20add-on=20(#32?= =?UTF-8?q?)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/addons.sh | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/lib/addons.sh b/lib/addons.sh index b67d6f7..e88cc0c 100644 --- a/lib/addons.sh +++ b/lib/addons.sh @@ -1009,6 +1009,31 @@ function bashio::addon.ingress_port() { '.ingress_port // empty' } +# ------------------------------------------------------------------------------ +# Returns or sets whether or not watchdog is enabled for this add-on. +# +# Arguments: +# $1 Add-on slug (optional, default: self) +# $2 Set current watchdog state (Optional) +# ------------------------------------------------------------------------------ +function bashio::addon.watchdog() { + local slug=${1:-'self'} + local watchdog=${2:-} + + bashio::log.trace "${FUNCNAME[0]}" "$@" + + if bashio::var.has_value "${watchdog}"; then + watchdog=$(bashio::var.json watchdog "^${watchdog}") + bashio::api.supervisor POST "/addons/${slug}/options" "${watchdog}" + bashio::cache.flush_all + else + bashio::addons \ + "${slug}" \ + "addons.${slug}.watchdog" \ + '.watchdog // false' + fi +} + # ------------------------------------------------------------------------------ # List all available stats about an add-on. #