from knot_resolver_manager.datamodel.stub_zone_schema import StubZoneSchema
from knot_resolver_manager.datamodel.types.types import IDPattern, IntPositive, UncheckedPath
from knot_resolver_manager.datamodel.view_schema import ViewSchema
-from knot_resolver_manager.datamodel.watchdog_schema import WatchDogSchema
from knot_resolver_manager.datamodel.webmgmt_schema import WebmgmtSchema
from knot_resolver_manager.exceptions import DataException
from knot_resolver_manager.utils import SchemaNode
rundir: Directory where the resolver can create files and which will be it's cwd.
workers: The number of running kresd (Knot Resolver daemon) workers. If set to 'auto', it is equal to number of CPUs available.
max_workers: The maximum number of workers allowed. Cannot be changed in runtime.
- watchdog: Disable supervisord's watchdog, enable with defaults or set new configuration.
management: Configuration of management HTTP API.
webmgmt: Configuration of legacy web management endpoint.
options: Fine-tuning global parameters of DNS resolver operation.
rundir: UncheckedPath = UncheckedPath(".")
workers: Union[Literal["auto"], IntPositive] = IntPositive(1)
max_workers: IntPositive = IntPositive(MAX_WORKERS)
- watchdog: Union[bool, WatchDogSchema] = True
management: ManagementSchema = ManagementSchema({"unix-socket": "./manager.sock"})
webmgmt: Optional[WebmgmtSchema] = None
options: OptionsSchema = OptionsSchema()
max_workers: IntPositive
management: ManagementSchema
webmgmt: Optional[WebmgmtSchema]
- watchdog: Union[bool, WatchDogSchema]
options: OptionsSchema
network: NetworkSchema
static_hints: StaticHintsSchema
+++ /dev/null
-{% if cfg.watchdog -%}
--- watchdog
-modules.load('watchdog')
-{% if cfg.watchdog.qname and cfg.watchdog.qtype -%}
-watchdog.config({ qname = '{{ cfg.watchdog.qname.punycode() }}', qtype = kres.type.{{ cfg.watchdog.qtype }} })
-{%- endif %}
-{% else %}
-modules.unload('watchdog')
-{%- endif %}
\ No newline at end of file
+++ /dev/null
-from knot_resolver_manager.datamodel.types import DNSRecordTypeEnum, DomainName
-from knot_resolver_manager.utils import SchemaNode
-
-
-class WatchDogSchema(SchemaNode):
- """
- Configuration of supervisord's watchdog which tests whether the started worker is working correctly.
-
- ---
- qname: Name to internaly query for.
- qtype: DNS type to internaly query for.
- """
-
- qname: DomainName
- qtype: DNSRecordTypeEnum