[OpenWrt-Devel] [PATCH] procd: add procd_running() helper for checking running state
Jo-Philipp Wich
jo at mein.io
Wed May 1 13:08:53 EDT 2019
Hi,
comment inline below.
> 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")
Pass '{ "name": "'"$service"'" }' as argument to the list call to reduce the amount of output you
need to filter.
> +
> + [ "$running" = "true" ]
> +}
> +
> _procd_kill() {
> local service="$1"
> local instance="$2"
>
~ Jo
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.infradead.org/pipermail/openwrt-devel/attachments/20190501/fe5afc0b/attachment.sig>
-------------- next part --------------
_______________________________________________
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