From: Rafał Miłecki <ra...@milecki.pl> This should be helpful for implementing service_running() in procd init scripts.
Signed-off-by: Rafał Miłecki <ra...@milecki.pl> --- package/system/procd/files/procd.sh | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/package/system/procd/files/procd.sh b/package/system/procd/files/procd.sh index 72f25fe0c0..ade55a344f 100644 --- a/package/system/procd/files/procd.sh +++ b/package/system/procd/files/procd.sh @@ -26,6 +26,9 @@ # procd_close_instance(): # Complete the instance being prepared # +# procd_running(service, [instance]): +# Checks if service/instance is currently running +# # procd_kill(service, [instance]): # Kill a service instance (or all instances) # @@ -398,6 +401,18 @@ _procd_add_instance() { _procd_close_instance } +procd_running() { + local service="$1" + local instance="${2:-instance1}" + local running + + json_init + json_add_string name "$service" + running=$(_procd_ubus_call list | jsonfilter -e "@.$service.instances.${instance}.running") + + [ "$running" = "true" ] +} + _procd_kill() { local service="$1" local instance="$2" -- 2.21.0 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel