[OpenWrt-Devel] [PATCH] procd: add procd_running() helper for checking running state
Rafał Miłecki
zajec5 at gmail.com
Thu May 2 02:05:19 EDT 2019
On Wed, 1 May 2019 at 19:09, Jo-Philipp Wich <jo at mein.io> wrote:
> > 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.
It's handed by:
json_add_string name "$service"
and then _procd_ubus_call using that JSON that was built before calling it.
_______________________________________________
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