From 45b90e8686ca337f00d19d3a6d8da76c306e1676 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Sun, 28 Feb 2010 23:46:32 +0000 Subject: [PATCH] luci-0.9: merge r5693 and r5697 --- .../root/etc/config/luci_statistics | 2 +- .../root/etc/init.d/luci_statistics | 29 ++---------------- .../root/etc/uci-defaults/luci-statistics | 30 ++++++++++++++++++- 3 files changed, 33 insertions(+), 28 deletions(-) diff --git a/applications/luci-statistics/root/etc/config/luci_statistics b/applications/luci-statistics/root/etc/config/luci_statistics index f6d870e051..f418f19266 100644 --- a/applications/luci-statistics/root/etc/config/luci_statistics +++ b/applications/luci-statistics/root/etc/config/luci_statistics @@ -8,7 +8,7 @@ config 'statistics' 'collectd' option 'Include' '/etc/collectd/conf.d' option 'PIDFile' '/var/run/collectd.pid' option 'PluginDir' '/usr/lib/collectd' - option 'TypesDB' '/usr/lib/collectd/types.db' + option 'TypesDB' '/usr/share/collectd/types.db' option 'Interval' '30' option 'ReadThreads' '2' diff --git a/applications/luci-statistics/root/etc/init.d/luci_statistics b/applications/luci-statistics/root/etc/init.d/luci_statistics index b33536441e..936f3a63c3 100755 --- a/applications/luci-statistics/root/etc/init.d/luci_statistics +++ b/applications/luci-statistics/root/etc/init.d/luci_statistics @@ -1,27 +1,6 @@ #!/bin/sh /etc/rc.common START=79 -boot() { - ### prepare publisher - if ! uci get lucid.rrdimg >/dev/null 2>/dev/null; then - uci batch <<-EOF -set lucid.rrdimg=DirectoryPublisher -set lucid.rrdimg.name='Statistics Images' -set lucid.rrdimg.physical=/tmp/rrdimg -set lucid.rrdimg.virtual=/rrdimg -set lucid.rrdimg.domain='' - -add_list lucid.http.publisher=rrdimg -add_list lucid.https.publisher=rrdimg - -commit lucid -EOF - /etc/init.d/lucid restart - fi - - start -} - start() { ### replace shipped config with symlink if [ ! -L /etc/collectd.conf ]; then @@ -34,15 +13,13 @@ start() { /usr/bin/stat-genconfig > /var/etc/collectd.conf ### prepare rrdimg directory - if [ "$(uci get luci_statistics.rrdtool.image_path 2>/dev/null)" != "$(uci get lucid.rrdimg.physical 2>/dev/null)" ]; then - uci set lucid.rrdimg.physical=$(uci get luci_statistics.rrdtool.image_path) + if [ -f /etc/config/lucid ] && [ -x /etc/init.d/lucid ] && /etc/init.d/lucid enabled && \ + [ "$(uci get luci_statistics.rrdtool.image_path 2>/dev/null)" != "$(uci get lucid.statistics.physical 2>/dev/null)" ]; then + uci set lucid.statistics.physical=$(uci get luci_statistics.rrdtool.image_path) uci commit lucid /etc/init.d/lucid restart fi - ### flush LuCI index cache - test -f /var/luci-indexcache && rm /var/luci-indexcache - ### workaround broken permissions on /tmp chmod 1777 /tmp } diff --git a/applications/luci-statistics/root/etc/uci-defaults/luci-statistics b/applications/luci-statistics/root/etc/uci-defaults/luci-statistics index f89366f1be..9453dc1d0d 100644 --- a/applications/luci-statistics/root/etc/uci-defaults/luci-statistics +++ b/applications/luci-statistics/root/etc/uci-defaults/luci-statistics @@ -1,7 +1,35 @@ #!/bin/sh -uci batch <<-EOF +# register commit handler +[ -f /etc/config/ucitrack ] && \ +[ "$(uci get ucitrack.@luci_statistics[0] 2>/dev/null)" != "luci_statistics" ] && \ +uci batch <<-EOF >/dev/null 2>/dev/null add ucitrack luci_statistics set ucitrack.@luci_statistics[-1].init=luci_statistics commit ucitrack EOF + +# register LuCId virtual path handler +[ -f /etc/config/lucid ] && \ +[ "$(uci get lucid.statistics 2>/dev/null)" != "DirectoryPublisher" ] && \ +uci batch <<-EOF >/dev/null 2>/dev/null + set lucid.statistics=DirectoryPublisher + set lucid.statistics.name='RRDTool Image Cache' + set lucid.statistics.physical=/tmp/rrdimg + set lucid.statistics.virtual=/rrdimg + set lucid.statistics.domain='' + + add_list lucid.http.publisher=statistics + add_list lucid.https.publisher=statistics + + commit lucid +EOF + +# symlink for busybox httpd +[ -x /usr/sbin/httpd ] && [ ! -h /www/rrdimg ] && \ + ln -s /tmp/rrdimg /www/rrdimg + +# restart LuCId service +[ -x /etc/init.d/lucid ] && /etc/init.d/lucid enabled && /etc/init.d/lucid restart + +exit 0 -- 2.30.2