13bed6226e
tools/systemd/parse_time: enable */x syntax for calendar events
...
we support this in pve, so also support it here to have a more
consistent syntax
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2020-09-11 12:17:22 +02:00
44055cac4d
tools/systemd/time: enable dates for calendarevents
...
this implements parsing and calculating calendarevents that have a
basic date component (year-mon-day) with the usual syntax options
(*, ranges, lists)
and some special events:
monthly
yearly/annually (like systemd)
quarterly
semiannually,semi-annually (like systemd)
includes some regression tests
the ~ syntax for days (the last x days of the month) is not yet
implemented
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2020-09-04 15:36:29 +02:00
ce7ab28cfa
tools/systemd/parse_time: error out on invalid ranges
...
if the range is reverse (bigger..smaller) we will never find a value,
so error out during parsing
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2020-09-04 15:28:48 +02:00
956295cefe
parse_calendar_event: support the weekly special expression
...
While we do not yet support the date specs for CalendarEvent the left
out "weekly" special expression[0] dies not requires that support.
It is specified to be equivalent with `Mon *-*-* 00:00:00` [0] and
this can be implemented with the weekday and time support we already
have.
[0]: https://www.freedesktop.org/software/systemd/man/systemd.time.html#Calendar%20Events
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2020-07-21 13:24:51 +02:00
547f0c97e4
src/tools/nom.rs: new helper parse_complete_line() for single line parsers
...
Like parse_complete(), but generates simpler error messages.
2020-06-18 12:57:55 +02:00
177a2de992
src/tools/nom.rs: move nom helpers into separate file
2020-06-18 12:41:13 +02:00
479e4932b5
src/tools/systemd/parse_time.rs: improve error message
2020-05-20 09:43:16 +02:00
7a314d18f7
src/tools/systemd/parse_time.rs: check max values
2020-05-16 13:13:50 +02:00
e05b637c73
src/tools/systemd/parse_time.rs: move parser into separate file
2020-05-16 06:53:15 +02:00