mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-07-19 07:06:30 +00:00
Update setting on startup (#1244)
* Update setting on startup * Fix * fix exception * Cleanup handling
This commit is contained in:
parent
77be830b72
commit
de3382226e
@ -120,7 +120,8 @@ class CoreDNS(JsonConfig, CoreSysAttributes):
|
|||||||
|
|
||||||
# Start is not Running
|
# Start is not Running
|
||||||
if await self.instance.is_running():
|
if await self.instance.is_running():
|
||||||
return
|
await self.restart()
|
||||||
|
else:
|
||||||
await self.start()
|
await self.start()
|
||||||
|
|
||||||
async def unload(self) -> None:
|
async def unload(self) -> None:
|
||||||
@ -146,6 +147,8 @@ class CoreDNS(JsonConfig, CoreSysAttributes):
|
|||||||
self.version = self.instance.version
|
self.version = self.instance.version
|
||||||
self.save_data()
|
self.save_data()
|
||||||
|
|
||||||
|
# Init Hosts / Run server
|
||||||
|
self.write_hosts()
|
||||||
await self.start()
|
await self.start()
|
||||||
|
|
||||||
async def update(self, version: Optional[str] = None) -> None:
|
async def update(self, version: Optional[str] = None) -> None:
|
||||||
@ -174,14 +177,13 @@ class CoreDNS(JsonConfig, CoreSysAttributes):
|
|||||||
|
|
||||||
async def restart(self) -> None:
|
async def restart(self) -> None:
|
||||||
"""Restart CoreDNS plugin."""
|
"""Restart CoreDNS plugin."""
|
||||||
|
self._write_corefile()
|
||||||
with suppress(DockerAPIError):
|
with suppress(DockerAPIError):
|
||||||
await self.instance.stop()
|
await self.instance.restart()
|
||||||
await self.start()
|
|
||||||
|
|
||||||
async def start(self) -> None:
|
async def start(self) -> None:
|
||||||
"""Run CoreDNS."""
|
"""Run CoreDNS."""
|
||||||
self._write_corefile()
|
self._write_corefile()
|
||||||
self.write_hosts()
|
|
||||||
|
|
||||||
# Start Instance
|
# Start Instance
|
||||||
_LOGGER.info("Start CoreDNS plugin")
|
_LOGGER.info("Start CoreDNS plugin")
|
||||||
@ -195,6 +197,7 @@ class CoreDNS(JsonConfig, CoreSysAttributes):
|
|||||||
"""Reset Config / Hosts."""
|
"""Reset Config / Hosts."""
|
||||||
self.servers = DNS_SERVERS
|
self.servers = DNS_SERVERS
|
||||||
|
|
||||||
|
# Resets hosts
|
||||||
with suppress(OSError):
|
with suppress(OSError):
|
||||||
self.hosts.unlink()
|
self.hosts.unlink()
|
||||||
self._init_hosts()
|
self._init_hosts()
|
||||||
@ -343,7 +346,7 @@ class CoreDNS(JsonConfig, CoreSysAttributes):
|
|||||||
continue
|
continue
|
||||||
resolv_lines.append(line.strip())
|
resolv_lines.append(line.strip())
|
||||||
except OSError as err:
|
except OSError as err:
|
||||||
_LOGGER.error("Can't read local resolv: %s", err)
|
_LOGGER.warning("Can't read local resolv: %s", err)
|
||||||
raise CoreDNSError() from None
|
raise CoreDNSError() from None
|
||||||
|
|
||||||
if nameserver in resolv_lines:
|
if nameserver in resolv_lines:
|
||||||
@ -357,5 +360,5 @@ class CoreDNS(JsonConfig, CoreSysAttributes):
|
|||||||
for line in resolv_lines:
|
for line in resolv_lines:
|
||||||
resolv.write(f"{line}\n")
|
resolv.write(f"{line}\n")
|
||||||
except OSError as err:
|
except OSError as err:
|
||||||
_LOGGER.error("Can't write local resolv: %s", err)
|
_LOGGER.warning("Can't write local resolv: %s", err)
|
||||||
raise CoreDNSError() from None
|
raise CoreDNSError() from None
|
||||||
|
Loading…
x
Reference in New Issue
Block a user