| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- #!/usr/bin/lua
- require("uci")
- require("uci.trigger")
- function usage()
- print("Usage: " .. arg[0] .. " [options]")
- print("Options:")
- print(" -a: apply the config changes")
- print(" -t: show matching UCI triggers")
- print(" -s: show information about tasks to be executed")
- print(" -r: reset all triggers")
- print(" -C <trigger> [<section>]: force clear a trigger")
- print(" -S <trigger> [<section>]: force set a trigger")
- print("")
- end
- if arg[1] == "-s" then
- local triggers = uci.trigger.get_active()
- if #triggers > 0 then
- print("Tasks:")
- for i, a in ipairs(triggers) do
- local trigger = a[1]
- local sections = a[2]
- print(" - " .. uci.trigger.get_description(trigger, sections))
- end
- else
- print "Nothing to do"
- end
- elseif arg[1] == "-t" then
- local triggers = uci.trigger.get_active()
- for i, a in ipairs(triggers) do
- local trigger = a[1]
- local sections = a[2]
- if trigger.section_only then
- print(trigger.id .. " " .. table.concat(sections, " "))
- else
- print(trigger.id)
- end
- end
- elseif arg[1] == "-a" then
- uci.trigger.run()
- elseif arg[1] == "-r" then
- uci.trigger.reset_state()
- elseif arg[1] == "-S" then
- local trigger = arg[2]
- local section = arg[3]
- uci.trigger.set_active(trigger, section)
- elseif arg[1] == "-C" then
- local trigger = arg[2]
- local section = arg[3]
- uci.trigger.clear_active(trigger, section)
- else
- usage()
- end
|