same problem, can’t upgrade to core-2022.10.3. docker version 20.10.18
2022-10-11 08:39:55.068 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [2586092520] Error updating Home Assistant Core 'HomeAssistantCore.update' blocked from execution, system is not healthy
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/hassio/update.py", line 303, in async_install
await async_update_core(self.hass, version=version, backup=backup)
File "/usr/src/homeassistant/homeassistant/components/hassio/handler.py", line 45, in _wrapper
raise HassioAPIError(data["message"])
homeassistant.components.hassio.handler.HassioAPIError: 'HomeAssistantCore.update' blocked from execution, system is not healthy
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 202, in handle_call_service
await hass.services.async_call(
File "/usr/src/homeassistant/homeassistant/core.py", line 1738, in async_call
task.result()
File "/usr/src/homeassistant/homeassistant/core.py", line 1775, in _execute_service
await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(
File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 207, in handle_service
await service.entity_service_call(
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 678, in entity_service_call
future.result() # pop exception if have
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 931, in async_request_call
await coro
File "/usr/src/homeassistant/homeassistant/helpers/service.py", line 715, in _handle_entity_call
await result
File "/usr/src/homeassistant/homeassistant/components/update/__init__.py", line 154, in async_install
await entity.async_install_with_progress(version, backup)
File "/usr/src/homeassistant/homeassistant/components/update/__init__.py", line 413, in async_install_with_progress
await self.async_install(version, backup)
File "/usr/src/homeassistant/homeassistant/components/hassio/update.py", line 305, in async_install
raise HomeAssistantError(
homeassistant.exceptions.HomeAssistantError: Error updating Home Assistant Core 'HomeAssistantCore.update' blocked from execution, system is not healthy
The issue comes from Supervisor and it’s latest PRs. The above PR has been added at 2022.9.2 to Supervisor.
But at that time Supervisor was flagging the system as unhealthy only. Since that, another feature has been added to Supervisor, which is if Supervisor flags the system unhealthy, then it blocks the update of core, add-ons, etc.
My understanding would be if you run Portainer, then the system should be flagged as Unsupported and not Unhealthy, as unhealthy flag is now blocking any updates.
The second linked pr is about the new auto update feature. It has nothing to do with unhealthy check. Updates have always been blocked when the system is deemed to be unhealthy. I don’t even know how long ago that was added. This pr in November 20202 added the job infrastructure and it included an unhealthy check that blocked updates. So it’s at least that old.
The only thing new here is the first PR you linked. That’s what added portainer to the “unhealthy images” list.
Incorrect. Running a container which is not supervisor or something started by supervisor is not supported. However running container orchestration software like portainer marks the system as unhealthy since it starts other containers and can change almost anything about docker in ways that break supervisor. Portainer isn’t the only one, the list of container orchestration software that has come up in issues and now marks the system as unhealthy is here:
let the people decide if portainer is an issue or not. To be honest, this seems to me too strict.
It was running for years and now I’m not able to update anymore
Still I think this change misses the target, I assume that the unhealthy/unsupported info is to tell users if you don’t run HA according to official configuration you won’t get support, right?
Blocking HA from execution is another thing, you stop users from doing stuff they want to do, even if they are well aware they’re doing it at their own risk and they won’t be eligable for any kind of support.
There’s probably going to be a lot of complaints about this.
don’t need to remove portainer.
sudo docker stop portainer
sudo docker restart hassio_supervisor
Update HA and then you can start portainer again
(sudo docker start portainer)
Was deprecated from the list of community addons a long time ago. Because it was a source of tons of issues in the HA repos. Where users used it to get in strange configurations and then reported issues when things didn’t work. Hence the unhealthy check.
This works, but also if we’re just going to do this anyways, why block us from using Portainer in the first place? For anyone who doesn’t know what Portainer is, they’re not even going to know how to find this thread 9 times out of 10 as the error message just says ‘Docker’. It doesn’t even say ‘Docker Orchestration Software’ to be a bit more insightful. It seems like a rushed decision by management on this one.