import pkgutil
-from typing import List, Text, Union, Optional
+from typing import Dict, List, Optional, Text, Union
from jinja2 import Environment, Template
from typing_extensions import Literal
from knot_resolver_manager.datamodel.cache_schema import CacheSchema
from knot_resolver_manager.datamodel.dns64_schema import Dns64Schema
from knot_resolver_manager.datamodel.dnssec_schema import DnssecSchema
+from knot_resolver_manager.datamodel.forward_zone import ForwardZoneSchema
from knot_resolver_manager.datamodel.logging_config import LoggingSchema
from knot_resolver_manager.datamodel.lua_schema import LuaSchema
from knot_resolver_manager.datamodel.network_schema import NetworkSchema
from knot_resolver_manager.datamodel.server_schema import ServerSchema
from knot_resolver_manager.datamodel.static_hints_schema import StaticHintsSchema
from knot_resolver_manager.datamodel.stub_zone_schema import StubZoneSchema
-from knot_resolver_manager.datamodel.forward_zone import ForwardZoneSchema
from knot_resolver_manager.datamodel.view_schema import ViewSchema
from knot_resolver_manager.utils import SchemaNode
network: NetworkSchema = NetworkSchema()
static_hints: StaticHintsSchema = StaticHintsSchema()
views: Optional[List[ViewSchema]] = None
- policy: Optional[List[PolicySchema]] = None
+ policy: Optional[Dict[str, PolicySchema]] = None
stub_zones: Optional[List[StubZoneSchema]] = None
forward_zones: Optional[List[ForwardZoneSchema]] = None
cache: CacheSchema = CacheSchema()
network: NetworkSchema
static_hints: StaticHintsSchema
views: Optional[List[ViewSchema]]
- policy: Optional[List[PolicySchema]]
+ policy: Optional[Dict[str, PolicySchema]]
stub_zones: Optional[List[StubZoneSchema]]
forward_zones: Optional[List[ForwardZoneSchema]]
cache: CacheSchema
from typing import List, Optional
-from knot_resolver_manager.datamodel.types import IPAddressPort
+from knot_resolver_manager.datamodel.types import IPAddressPort
from knot_resolver_manager.datamodel.view_schema import FlagsEnum
from knot_resolver_manager.utils import SchemaNode
from knot_resolver_manager.utils.types import LiteralEnum
class PolicySchema(SchemaNode):
- id: str
action: ActionEnum
mirror: Optional[List[IPAddressPort]] = None
filters: Optional[List[FilterSchema]] = None