config: stop startup on an invalid DNS or TLS interval (closes #177)
check / check (push) Successful in 1m8s
check / check (push) Successful in 1m8s
DNSWATCHER_DNS_INTERVAL and DNSWATCHER_TLS_INTERVAL were parsed with time.ParseDuration and silently replaced by the default when that failed, so a value like 5 or 1d gave hourly checks with no hint why, and zero or negative values were accepted. Both now go through parseInterval, which returns an error naming the variable and the value, and startup stops the same way it does for invalid targets. An unset or empty variable still gets its default from setupViper. The three tests that pinned the old fallback are replaced. The README says what a valid value looks like. Model: opus-5-5
This commit is contained in:
@@ -20,6 +20,8 @@ https://git.eeqj.de/sneak/dnswatcher/issues/104
|
||||
|
||||
# Completed Steps
|
||||
|
||||
- 2026-10-01: a `DNSWATCHER_DNS_INTERVAL` or `DNSWATCHER_TLS_INTERVAL` that is
|
||||
not a positive duration stops startup instead of being ignored (closes #177).
|
||||
- 2026-10-01: `TODO.md` brought up to date: open issues listed by URL, every
|
||||
Completed Steps entry cut to at most two lines (closes #146).
|
||||
- 2026-10-01: wildcard CORS now applies only to the public routes, not to
|
||||
@@ -89,8 +91,6 @@ https://git.eeqj.de/sneak/dnswatcher/issues/104
|
||||
- nameserver IP address changes: https://git.eeqj.de/sneak/dnswatcher/issues/105
|
||||
- `DNSWATCHER_SENTRY_DSN` does nothing:
|
||||
https://git.eeqj.de/sneak/dnswatcher/issues/107
|
||||
- invalid DNS or TLS interval silently replaced by the default:
|
||||
https://git.eeqj.de/sneak/dnswatcher/issues/177
|
||||
- rate limit on `/metrics` Basic Auth:
|
||||
https://git.eeqj.de/sneak/dnswatcher/issues/101
|
||||
- images report version `dev`: https://git.eeqj.de/sneak/dnswatcher/issues/109
|
||||
|
||||
Reference in New Issue
Block a user