Abstract restart logic

This commit is contained in:
Pascal Vizeli
2018-04-09 22:13:16 +02:00
parent 6a84829c16
commit 92d5b14cf5
2 changed files with 9 additions and 34 deletions

View File

@@ -264,31 +264,6 @@ class DockerInterface(CoreSysAttributes):
except docker.errors.DockerException as err:
_LOGGER.warning("Can't grap logs from %s: %s", self.image, err)
@process_lock
def restart(self):
"""Restart docker container."""
return self._loop.run_in_executor(None, self._restart)
def _restart(self):
"""Restart docker container.
Need run inside executor.
"""
try:
container = self._docker.containers.get(self.name)
except docker.errors.DockerException:
return False
_LOGGER.info("Restart %s", self.image)
try:
container.restart(timeout=self.timeout)
except docker.errors.DockerException as err:
_LOGGER.warning("Can't restart %s: %s", self.image, err)
return False
return True
@process_lock
def cleanup(self):
"""Check if old version exists and cleanup."""