From c083c850c1761956ce1b5e7a9ad33a2639f0b513 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Thu, 6 Feb 2020 11:20:45 +0100 Subject: [PATCH 1/7] Bump version to 200 --- hassio/const.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hassio/const.py b/hassio/const.py index 20651c875..b3a57d3bc 100644 --- a/hassio/const.py +++ b/hassio/const.py @@ -3,7 +3,7 @@ from enum import Enum from ipaddress import ip_network from pathlib import Path -HASSIO_VERSION = "199" +HASSIO_VERSION = "200" URL_HASSIO_ADDONS = "https://github.com/home-assistant/hassio-addons" From 36179596a070e76459f28aef8dc1f631ef2e08ff Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Thu, 6 Feb 2020 10:25:37 +0000 Subject: [PATCH 2/7] Fix HA instance --- scripts/test_env.sh | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/scripts/test_env.sh b/scripts/test_env.sh index cbfd13aba..3760f3ddb 100755 --- a/scripts/test_env.sh +++ b/scripts/test_env.sh @@ -90,9 +90,6 @@ function setup_test_env() { -e HOMEASSISTANT_REPOSITORY="homeassistant/qemux86-64-homeassistant" \ homeassistant/amd64-hassio-supervisor:latest - if docker rm homeassistant 2> /dev/null; then - echo "Cleanup HomeAssistant instance" - fi } echo "Start Test-Env" @@ -100,6 +97,10 @@ echo "Start Test-Env" start_docker trap "stop_docker" ERR +# Clean homeassistant instance +if docker rm -f homeassistant 2> /dev/null; then + echo "Cleanup HomeAssistant instance" +fi build_supervisor install_cli From a65d3222b9d36538a675adc59d81324492a6c243 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 7 Feb 2020 16:07:00 +0100 Subject: [PATCH 3/7] Bump docker from 4.1.0 to 4.2.0 (#1485) Bumps [docker](https://github.com/docker/docker-py) from 4.1.0 to 4.2.0. - [Release notes](https://github.com/docker/docker-py/releases) - [Commits](https://github.com/docker/docker-py/compare/4.1.0...4.2.0) Signed-off-by: dependabot-preview[bot] --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 75084b6b1..3a7917b29 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,7 +5,7 @@ cchardet==2.1.5 colorlog==4.1.0 cpe==1.2.1 cryptography==2.8 -docker==4.1.0 +docker==4.2.0 gitpython==3.0.5 packaging==20.1 pytz==2019.3 From fcdd66dc6e4d8ee80a25b0e553d945c25add2cec Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Fri, 7 Feb 2020 18:30:39 +0100 Subject: [PATCH 4/7] Fix Hardware list (#1490) --- hassio/misc/hardware.py | 12 +++++++++--- tests/misc/test_hardware.py | 10 ++++++++++ 2 files changed, 19 insertions(+), 3 deletions(-) create mode 100644 tests/misc/test_hardware.py diff --git a/hassio/misc/hardware.py b/hassio/misc/hardware.py index 269d1ca47..74701b330 100644 --- a/hassio/misc/hardware.py +++ b/hassio/misc/hardware.py @@ -54,10 +54,16 @@ class Hardware: # Exctract all devices for device in self.context.list_devices(): + # Skip devices without mapping + if not device.device_node: + continue + dev_list.append( - Device(device.sys_name), - Path(device.device_node), - [Path(node) for node in device.device_links], + Device( + device.sys_name, + Path(device.device_node), + [Path(node) for node in device.device_links], + ) ) return dev_list diff --git a/tests/misc/test_hardware.py b/tests/misc/test_hardware.py new file mode 100644 index 000000000..d969e7152 --- /dev/null +++ b/tests/misc/test_hardware.py @@ -0,0 +1,10 @@ +"""Test hardware utils.""" + +from hassio.misc.hardware import Hardware + + +def test_read_all_devices(): + """Test to read all devices.""" + system = Hardware() + + assert system.devices From 2a31edc768b72dfb950b5145a59ddf3ea61cac6d Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Sat, 8 Feb 2020 23:56:24 +0100 Subject: [PATCH 5/7] Guard addon self lookup (#1492) --- hassio/api/addons.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/hassio/api/addons.py b/hassio/api/addons.py index 894b03001..49cdff062 100644 --- a/hassio/api/addons.py +++ b/hassio/api/addons.py @@ -7,6 +7,7 @@ from aiohttp import web import voluptuous as vol from ..addons import AnyAddon +from ..addons.addon import Addon from ..addons.utils import rating_security from ..const import ( ATTR_ADDONS, @@ -129,7 +130,10 @@ class APIAddons(CoreSysAttributes): # Lookup itself if addon_slug == "self": - return request.get(REQUEST_FROM) + addon = request.get(REQUEST_FROM) + if not isinstance(addon, Addon): + raise APIError("Self is not an Addon") + return addon addon = self.sys_addons.get(addon_slug) if not addon: From 934eab2e8cad1c47b4cfd0381559539aefec3e8b Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Sun, 9 Feb 2020 21:42:22 +0100 Subject: [PATCH 6/7] Fix operating-system url for OTA updates (#1493) --- hassio/const.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hassio/const.py b/hassio/const.py index b3a57d3bc..f12e00c61 100644 --- a/hassio/const.py +++ b/hassio/const.py @@ -11,7 +11,7 @@ URL_HASSIO_VERSION = "https://version.home-assistant.io/{channel}.json" URL_HASSIO_APPARMOR = "https://version.home-assistant.io/apparmor.txt" URL_HASSOS_OTA = ( - "https://github.com/home-assistant/hassos/releases/download/" + "https://github.com/home-assistant/operating-system/releases/download/" "{version}/hassos_{board}-{version}.raucb" ) From 4279d7fd16e72325e730447c2cf3c49e7a7936d4 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Sun, 9 Feb 2020 22:15:34 +0100 Subject: [PATCH 7/7] Check if HA is running (#1494) --- hassio/core.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/hassio/core.py b/hassio/core.py index 8f2d7cd7e..beaec91ad 100644 --- a/hassio/core.py +++ b/hassio/core.py @@ -115,7 +115,10 @@ class HassIO(CoreSysAttributes): await self.sys_addons.boot(STARTUP_SERVICES) # run HomeAssistant - if self.sys_homeassistant.boot: + if ( + self.sys_homeassistant.boot + and not await self.sys_homeassistant.is_running() + ): with suppress(HomeAssistantError): await self.sys_homeassistant.start()