HA Broken after 105.2 Update

I am running HA on a pi4 via generic linux install on raspbian and as soon as I updated to the latest version HA is no longer loading for me.

When I tried a hassio homeassistant check via ssh I get this:

Error: Testing configuration at /config
INFO:homeassistant.util.package:Attempting install of alexapy==1.0.0
WARNING:homeassistant.components.device_tracker:The 'hide_if_away' option (with value 'False') is deprecated, please remove it from your configuration. This option will become invalid in version 0.107.0
INFO:homeassistant.util.package:Attempting install of https://github.com/xernaj/python-ring-doorbell/archive/fix/oauth-fail-due-to-blocked-user-agent.zip#ring_doorbell==0.2.4
INFO:homeassistant.util.package:Attempting install of aiogithubapi==0.4.3
INFO:homeassistant.util.package:Attempting install of hacs_frontend==20200104192235
INFO:homeassistant.util.package:Attempting install of integrationhelper==0.2.2
INFO:homeassistant.util.package:Attempting install of semantic_version==2.8.4
WARNING:homeassistant.components.automation:The 'hide_entity' option (with value 'True') is deprecated, please remove it from your configuration. This option will become invalid in version 0.107
INFO:homeassistant.util.package:Attempting install of https://github.com/xernaj/python-ring-doorbell/archive/fix/oauth-fail-due-to-blocked-user-agent.zip#ring_doorbell==0.2.4
ERROR:homeassistant.scripts.check_config:BURB
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/scripts/check_config.py", line 204, in check
    async_check_ha_config_file(hass)
  File "/usr/local/lib/python3.7/asyncio/base_events.py", line 583, in run_until_complete
    return future.result()
  File "/usr/src/homeassistant/homeassistant/helpers/check_config.py", line 129, in async_check_ha_config_file
    config = config_schema(config)
  File "/usr/local/lib/python3.7/site-packages/voluptuous/schema_builder.py", line 272, in __call__
    return self._compiled([], data)
  File "/usr/local/lib/python3.7/site-packages/voluptuous/schema_builder.py", line 594, in validate_dict
    return base_validate(path, iteritems(data), out)
  File "/usr/local/lib/python3.7/site-packages/voluptuous/schema_builder.py", line 386, in validate_mapping
    cval = cvalue(key_path, value)
  File "/usr/local/lib/python3.7/site-packages/voluptuous/schema_builder.py", line 817, in validate_callable
    return schema(data)
  File "/usr/local/lib/python3.7/site-packages/voluptuous/schema_builder.py", line 272, in __call__
    return self._compiled([], data)
  File "/usr/local/lib/python3.7/site-packages/voluptuous/schema_builder.py", line 594, in validate_dict
    return base_validate(path, iteritems(data), out)
  File "/usr/local/lib/python3.7/site-packages/voluptuous/schema_builder.py", line 373, in validate_mapping
    new_key = ckey(key_path, key)
  File "/usr/local/lib/python3.7/site-packages/voluptuous/schema_builder.py", line 817, in validate_callable
    return schema(data)
  File "/usr/src/homeassistant/homeassistant/helpers/config_validation.py", line 659, in validator
    value = config[key]
TypeError: string indices must be integers
Fatal error while loading config: string indices must be integers
Failed config
  General Errors:
    - string indices must be integers

Successful config (partial)

Any idea what I can do to resolve?

2 Likes

I have a similar problem since 105, I’m running the docker version:
See the logs: https://pastebin.com/TVS5mRhM

Reverting to 104 fixes the issue, so not a config problem
Any idea ?

I have two instances one on a pi3 via hassos
But the 2nd is home assistant (the old hassio) installed on raspbian via docker (standard install method) onto a hard disk
No problems with mine. (both upto 0.105.2)

Are either of you running any major add ons?

Erratum: 105.0 if working fine. 105.2 is broken. Haven’t tried 105.1 yet

Nope, I can NOT confirm.
Both my systems ran okay with all updates from 0.104.0 to current 0.105.2
It can’t be the HA release

Updating from 104 to 105.0 then 105.1 then 105.2 fixes the problem :slight_smile:

The only addons I have are auto backup, motioneye, ssh, samba and configurator.
Restoring a backup of 104.3 brought it back to life.
I’ll try @bend’s suggestion with updating to 105.0 first and check if it resolves, thanks

Ok I did one version at a time and got it to run but 3 integrations are broken (openuv/netatmo/discovery) or maybe their config has changed just now:

2020-02-08 15:13:57 ERROR (MainThread) [homeassistant.config] Invalid config for [openuv]: [binary_sensors] is an invalid option for [openuv]. Check: openuv->openuv->binary_sensors. (See /config/configuration.yaml, line 286). Please check the docs at https://www.home-assistant.io/integrations/openuv
2020-02-08 15:13:57 ERROR (MainThread) [homeassistant.setup] Setup failed for openuv: Invalid config.
2020-02-08 15:13:57 ERROR (MainThread) [homeassistant.config] Invalid config for [discovery]: value is not allowed @ data['discovery']['ignore'][0]. Got 'samsung_tv'. (See /config/configuration.yaml, line 29). Please check the docs at https://www.home-assistant.io/integrations/discovery
2020-02-08 15:13:57 ERROR (MainThread) [homeassistant.setup] Setup failed for discovery: Invalid config.
2020-02-08 15:14:50 ERROR (MainThread) [homeassistant.config] Invalid config for [netatmo]: [api_key] is an invalid option for [netatmo]. Check: netatmo->netatmo->api_key. (See /config/configuration.yaml, line 107). Please check the docs at https://www.home-assistant.io/integrations/netatmo
2020-02-08 15:14:50 ERROR (MainThread) [homeassistant.setup] Setup failed for netatmo: Invalid config.

Not sure why openuv is complaining about binary_sensors, worked just fine in 0.104.2

openuv:
  api_key: !secret openuv_api_key
  binary_sensors:
    monitored_conditions:
      - uv_protection_window
  sensors:
    monitored_conditions:
      - current_ozone_level
      - current_uv_index
      - current_uv_level
      - max_uv_index

Is this discovery no longer valid?

discovery:
  ignore:
    - samsung_tv
    - homekit
    - igd

Netamo I heard needs to be configured again as a breaking change

Tried to get netatmo to work via the integrations page but once I click accept on the allow HA to access netatmo nothing happens (on the netatmo page) Any ideas?

I ended up commenting out all my Netatmo stuff and rebooting and it all started to work again (except for Netatmo of course).

Yes but it seems like the new integration is not working at all

Clicked on Yes I accept like 20 times and 3 different browsers, nothing happens

Ok I have it working again, this is what I did:

Old config.yaml entry:

netatmo:
  api_key: !secret netatmo_client_id
  secret_key: !secret netatmo_client_secret
  username: !secret netatmo_username
  password: !secret netatmo_password

New entry

netatmo:
  client_id: !secret netatmo_client_id
  client_secret: !secret netatmo_client_secret

Then go to add new integration and use config.yaml credentials when it asks you and now the page above worked :slight_smile:

OpenUv is also a standalone integration now, without need of config.yaml entries so that’s sorted too.

Now to try 0.105.1 --> 0.105.2

Yup fixing those 3 integrations sorted it out.
0.105.2 updated just fine now :slight_smile: