"Error loading /config/configuration.yaml: Secrets not supported in this YAML file"

Using HKI…

Thanks. Im using HKI but maybe that´s based on Dwains Theme…

HKI uses lovelace_gen

I’m hitting this too…

I upgraded to 2021.04
I had no Lovelace UI.
I upgraded lovelace_gen
Then I couldn’t do a restart because of this error,

Logger: homeassistant.components.hassio
Source: components/hassio/__init__.py:486
Integration: Home Assistant Supervisor (documentation, issues)
First occurred: 11:57:15 (1 occurrences)
Last logged: 11:57:15

Error loading /config/configuration.yaml: Secrets not supported in this YAML file

I’ve restored to 2021.03.

As far as I know I have no secrets outside of the config folder and the error message isn’t really helping me (I use packages).

The breaking change description in the blog post doesn’t help me much either.

I hope someone can give me a clue. I don’t want to be stuck on 2021.03 forever!!

Update lovelace_gen then restart. You’ll have to use CLI to perform the restart.

1 Like

Thanks, that seems to have done it.
Far be it for me to say, whist I know that:

“At this moment, we are unsure if this is a breaking change or not, so we list it, just to be sure.”

it feels like this could have been handled more elegantly :wink:

Anyway, I’m all good now I think, so thanks again.

To be fair, these are custom integrations that were breaking. Works perfectly fine without those custom integrations. The “api” changed and both of those custom integrations were using the old “api”.

1 Like

I’m not using Dwains, HKI, or lovelace_gen, but need to remove all secret designations from my config files to pass a config check since 2021.4.0. I’ve removed custom_components one by one to try and identify the culprit, but no luck there. I’ve removed most integrations without finding the culprit.

Are you using HKI theme? That uses lovelace_gen.

No. Not using any of the currently identified culprits.

Not sure what else to tell you. The only offending areas would be secrets outside your /config folder or if you’re using Lovelace_gen, Homekit Infusion theme, or Dwains Theme.

I’ll keep looking. Perhaps it’ll clear itself up :grinning:

Same problem here after upgrade to 2021.4.4 . Also Velux integration and some Shelly issues showed up, but not sure if that is related. Will roll-back for now. I have no clue if I am using lovelace_gen, but I don’t think so, also no special themes are installed.

I jumped on here to investigate the ramifications of 2021.4.* in regards to the breaking changes for the secrets. It looks like, from reading this thread, that unless you have one of the two specific custom apps and any reference to secrets is within the config folder then you are OK, is this right?

I reference secrets in several of my YAML files (i.e., for HomeKit I use secrets to connect my cameras in the homekit.yaml), will those be impacted or is it fine since the file resides in the config folder? Does this extend to all subfolders in config as well? I keep all my scripts in config/scripts and they have some secrets as well.

Figured I would ask before I pull the trigger and end up back here trying to figure out why my HA won’t load after upgrading (I upgraded to 2021.4.3 when it dropped, so perhaps I’m already in the clear).

I went ahead and upgraded (knowing I might have to restore a backup) and it all worked, so I was able to answer my own questions.

I’m seeing this error now too. I don’t use either of the identified culprits.

Logger: aiohttp.server
Source: util/yaml/loader.py:306
First occurred: 17:40:37 (1 occurrences)
Last logged: 17:40:37

Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/site-packages/aiohttp/web_protocol.py", line 422, in _handle_request
    resp = await self._request_handler(request)
  File "/usr/local/lib/python3.8/site-packages/aiohttp/web_app.py", line 499, in _handle
    resp = await handler(request)
  File "/usr/local/lib/python3.8/site-packages/aiohttp/web_middlewares.py", line 119, in impl
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 60, in security_filter_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 76, in forwarded_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 24, in request_context_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 144, in auth_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 135, in handle
    result = await result
  File "/usr/src/homeassistant/homeassistant/components/config/__init__.py", line 124, in get
    current = await self.read_config(hass)
  File "/usr/src/homeassistant/homeassistant/components/config/__init__.py", line 192, in read_config
    current = await hass.async_add_executor_job(_read, hass.config.path(self.path))
  File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/src/homeassistant/homeassistant/components/config/__init__.py", line 252, in _read
    return load_yaml(path)
  File "/usr/src/homeassistant/homeassistant/util/yaml/loader.py", line 113, in load_yaml
    return parse_yaml(conf_file, secrets)
  File "/usr/src/homeassistant/homeassistant/util/yaml/loader.py", line 125, in parse_yaml
    yaml.load(content, Loader=lambda stream: SafeLineLoader(stream, secrets))
  File "/usr/local/lib/python3.8/site-packages/yaml/__init__.py", line 114, in load
    return loader.get_single_data()
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 51, in get_single_data
    return self.construct_document(node)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 55, in construct_document
    data = self.construct_object(node)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 100, in construct_object
    data = constructor(self, node)
  File "/usr/src/homeassistant/homeassistant/util/yaml/loader.py", line 286, in _construct_seq
    (obj,) = loader.construct_yaml_seq(node)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 408, in construct_yaml_seq
    data.extend(self.construct_sequence(node))
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 129, in construct_sequence
    return [self.construct_object(child, deep=deep)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 129, in <listcomp>
    return [self.construct_object(child, deep=deep)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 100, in construct_object
    data = constructor(self, node)
  File "/usr/src/homeassistant/homeassistant/util/yaml/loader.py", line 255, in _ordered_dict
    nodes = loader.construct_pairs(node)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 155, in construct_pairs
    value = self.construct_object(value_node, deep=deep)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 100, in construct_object
    data = constructor(self, node)
  File "/usr/src/homeassistant/homeassistant/util/yaml/loader.py", line 286, in _construct_seq
    (obj,) = loader.construct_yaml_seq(node)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 408, in construct_yaml_seq
    data.extend(self.construct_sequence(node))
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 129, in construct_sequence
    return [self.construct_object(child, deep=deep)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 129, in <listcomp>
    return [self.construct_object(child, deep=deep)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 100, in construct_object
    data = constructor(self, node)
  File "/usr/src/homeassistant/homeassistant/util/yaml/loader.py", line 255, in _ordered_dict
    nodes = loader.construct_pairs(node)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 155, in construct_pairs
    value = self.construct_object(value_node, deep=deep)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 100, in construct_object
    data = constructor(self, node)
  File "/usr/src/homeassistant/homeassistant/util/yaml/loader.py", line 255, in _ordered_dict
    nodes = loader.construct_pairs(node)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 155, in construct_pairs
    value = self.construct_object(value_node, deep=deep)
  File "/usr/local/lib/python3.8/site-packages/yaml/constructor.py", line 100, in construct_object
    data = constructor(self, node)
  File "/usr/src/homeassistant/homeassistant/util/yaml/loader.py", line 306, in secret_yaml
    raise HomeAssistantError("Secrets not supported in this YAML file")
homeassistant.exceptions.HomeAssistantError: Secrets not supported in this YAML file

wundergroundpws was the culprit for me.

Thanks but I don’t use that either.

I doubt it’s liked to a specific integration.
From How to use secrets in automations.yaml , it looks like secrets are not (no more?) allowed in automations.yaml

That’s not true. https://www.home-assistant.io/docs/configuration/secrets/

However from that topic you linked to I see this:

This is the reason I saw the error. I accidentally clicked the Edit icon instead of the Trace icon on a automation.