[OpenWrt-Devel] [PATCH] procd: add procd_running() helper for checking running state
Rafał Miłecki
zajec5 at gmail.com
Wed May 1 01:23:21 EDT 2019
From: Rafał Miłecki <rafal at milecki.pl>
This should be helpful for implementing service_running() in procd init
scripts.
Signed-off-by: Rafał Miłecki <rafal at 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 at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list