procd.sh: use parameterized respawn values
authorClaudiu Brasovean <cbrasho@gmail.com>
Tue, 28 Feb 2017 09:51:01 +0000 (11:51 +0200)
committerJo-Philipp Wich <jo@mein.io>
Wed, 13 Dec 2017 13:39:02 +0000 (14:39 +0100)
continue work started here: http://patchwork.ozlabs.org/patch/520859

Extend /etc/config/system with parameters to set the default respawn treshold and respawn timeout
for procd launched services that have respawn enabled.
This results in cleaner init scripts, while making sure services have respawn parameters set.

Signed-off-by: Claudiu Brasovean <cbrasho@gmail.com>
(cherry picked from commit c70c6ac070223114ee8c9f33e5e416edb005ca83)

package/system/procd/files/procd.sh

index 6347de5..9fbf47e 100644 (file)
@@ -351,8 +351,10 @@ _procd_close_instance() {
        if json_select respawn ; then
                json_get_values respawn_vals
                if [ -z "$respawn_vals" ]; then
+                       local respawn_threshold=$(uci_get system.@service[0].respawn_threshold)
+                       local respawn_timeout=$(uci_get system.@service[0].respawn_timeout)
                        local respawn_retry=$(uci_get system.@service[0].respawn_retry)
-                       _procd_add_array_data 3600 5 ${respawn_retry:-5}
+                       _procd_add_array_data ${respawn_threshold:-3600} ${respawn_timeout:-5} ${respawn_retry:-5}
                fi
                json_select ..
        fi