from pathlib import Path
import socket
import sys
-from typing import Optional, Dict, List, Self, Tuple, DefaultDict, TextIO, TYPE_CHECKING
+from typing import Optional, Dict, List, Self, DefaultDict, TextIO, TYPE_CHECKING
from nsconfig.util import flatten_list
expire: timedelta
min_ttl: timedelta
origin_server: str
+ daemon_options: List[str]
default_config: Optional['NscZoneConfig'] = None
expire: Optional[timedelta] = None,
min_ttl: Optional[timedelta] = None,
origin_server: Optional[str] = None,
+ daemon_options: Optional[List[str]] = None,
+ add_daemon_options: Optional[List[str]] = None,
inherit_config: Optional['NscZoneConfig'] = None,
) -> None:
if inherit_config is None:
self.expire = expire if expire is not None else inherit_config.expire
self.min_ttl = min_ttl if min_ttl is not None else inherit_config.min_ttl
self.origin_server = origin_server if origin_server is not None else inherit_config.origin_server
+ self.daemon_options = daemon_options if daemon_options is not None else inherit_config.daemon_options
+ if add_daemon_options is not None:
+ self.daemon_options += add_daemon_options
def finalize(self) -> Self:
if not self.origin_server:
expire=timedelta(days=14),
min_ttl=timedelta(days=1),
origin_server="",
+ daemon_options=[],
)