From cc63008a86666dc172353c4628369ae9aa76ba06 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Wed, 19 Apr 2017 17:51:48 +0200 Subject: [PATCH] Add selfupdate task (#6) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add an optional extended description… --- hassio/const.py | 1 + hassio/core.py | 15 ++++++++++++++- version.json | 2 +- 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/hassio/const.py b/hassio/const.py index ba86e09e1..736c31b41 100644 --- a/hassio/const.py +++ b/hassio/const.py @@ -13,6 +13,7 @@ DOCKER_REPO = "pvizeli" HASSIO_SHARE = "/data" RUN_UPDATE_INFO_TASKS = 28800 +RUN_UPDATE_SUPERVISOR_TASKS = 29100 RUN_RELOAD_ADDONS_TASKS = 28800 RESTART_EXIT_CODE = 100 diff --git a/hassio/core.py b/hassio/core.py index 2587a7bb2..0394cf017 100644 --- a/hassio/core.py +++ b/hassio/core.py @@ -11,7 +11,7 @@ from .api import RestAPI from .host_controll import HostControll from .const import ( SOCKET_DOCKER, RUN_UPDATE_INFO_TASKS, RUN_RELOAD_ADDONS_TASKS, - STARTUP_AFTER, STARTUP_BEFORE) + RUN_UPDATE_SUPERVISOR_TASKS, STARTUP_AFTER, STARTUP_BEFORE) from .scheduler import Scheduler from .dock.homeassistant import DockerHomeAssistant from .dock.supervisor import DockerSupervisor @@ -87,6 +87,10 @@ class HassIO(object): self.scheduler.register_task( self.addons.relaod, RUN_RELOAD_ADDONS_TASKS, first_run=True) + # schedule self update task + self.scheduler.register_task( + self._hassio_update, RUN_UPDATE_SUPERVISOR_TASKS) + async def start(self): """Start HassIO orchestration.""" # start api @@ -129,3 +133,12 @@ class HassIO(object): # store version _LOGGER.info("HomeAssistant docker now installed.") + + async def _hassio_update(self): + """Check and run update of supervisor hassio.""" + if self.config.current_hassio == self.supervisor.version: + return + + _LOGGER.info( + "Found new HassIO version %s.", self.config.current_hassio) + await self.supervisor.update(self.config.current_hassio) diff --git a/version.json b/version.json index e768d292e..31449e8fe 100644 --- a/version.json +++ b/version.json @@ -1,5 +1,5 @@ { - "hassio_tag": "0.7", + "hassio_tag": "0.8", "homeassistant_tag": "0.42.3", "resinos_version": "0.3", "resinhup_version": "0.1"