New application for watchcat

Hi,

This patch add a new luci-application for the watchcat package (in
feeds/packages/utils).

Chris
This commit is contained in:
Jo-Philipp Wich 2012-04-16 16:49:04 +00:00
parent b6c98f9c57
commit ca9314ee22
5 changed files with 106 additions and 0 deletions

View file

@ -0,0 +1,3 @@
PO=watchcat
include ../../build/config.mk
include ../../build/module.mk

View file

@ -0,0 +1,7 @@
#!/bin/sh
me="watchcat"
[ -n "${IPKG_INSTROOT}" ] || {
( . /etc/uci-defaults/luci-$me ) && rm -f /etc/uci-defaults/luci-$me
/etc/init.d/$me enabled || /etc/init.d/$me enable
exit 0
}

View file

@ -0,0 +1,22 @@
--[[
LuCI - Lua Configuration Interface
Copyright 2012 Christian Gagneraud <chris@techworks.ie>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
$Id$
]]--
module("luci.controller.watchcat", package.seeall)
function index()
if not nixio.fs.access("/etc/config/system") then
return
end
entry({"admin", "services", "watchcat"}, cbi("watchcat/watchcat"), _("Watchcat"), 90)
end

View file

@ -0,0 +1,64 @@
--[[
LuCI - Lua Configuration Interface
Copyright 2012 Christian Gagneraud <chris@techworks.ie>
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
$Id$
]]--
m = Map("system",
translate("Watchcat"),
translate("Watchcat allows to configure a periodic reboot and/or when " ..
"internet connection has been lost for a certain period of time."
))
s = m:section(TypedSection, "watchcat")
s.anonymous = true
s.addremove = true
mode = s:option(ListValue, "mode",
translate("Operating mode"))
mode.default = "allways"
mode:value("ping", "Reboot on internet connection lost")
mode:value("allways", "Periodic reboot")
forcedelay = s:option(Value, "forcedelay",
translate("Forced reboot delay"),
translate("When rebooting the system the watchcat will trigger a soft reboot, " ..
"Entering a non zero value here, will trigger a delayed hard reboot " ..
"if the soft reboot fails. Enter a number of seconds to enable, " ..
"use 0 to disable"))
forcedelay.datatype = "uinteger"
forcedelay.default = "0"
period = s:option(Value, "period",
translate("Period"),
translate("In periodic mode, it defines the reboot period. " ..
"In internet mode, it defines the longest period of " ..
"time without internet access before a reboot is engaged." ..
"Default unit is seconds, you can use the " ..
"suffix 'm' for minutes, 'h' for hours or 'd' " ..
"for days"))
pinghost = s:option(Value, "pinghost",
translate("Ping host"),
translate("Host address to ping"))
pinghost.datatype = "host"
pinghost.default = "8.8.8.8"
pinghost:depends({mode="ping"})
pingperiod = s:option(Value, "pingperiod",
translate("Ping period"),
translate("How often to check internet connection. " ..
"Default unit is seconds, you can you use the " ..
"suffix 'm' for minutes, 'h' for hours or 'd' " ..
"for days"))
pingperiod:depends({mode="ping"})
return m

View file

@ -0,0 +1,10 @@
#!/bin/sh
uci -q batch <<-EOF >/dev/null
add ucitrack system
set ucitrack.@system[-1].init=watchcat
commit ucitrack
EOF
rm -f /tmp/luci-indexcache
exit 0