Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add error handling to !include command in yaml #25801

merged 3 commits into from Aug 9, 2019


Copy link

commented Aug 9, 2019


- !include nofile.yaml

!includeing a file that doesn't exist fails without a HomeAssistantError.
In lovelace this means the failure is silent, and the user is thrown back to the /states/ interface.
In configuration check this means that you get a non-descriptive general "Error loading /config/configuration.yaml".

This fixes both.

Note: !secret relies on catching FileNotFoundError itself. I may have missed something else that does the same thing, but I hope not...

Related issue (if applicable): fixes #24446


  • The code change is tested and works locally.
  • Local tests pass with tox. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist

If user exposed functionality or configuration variables are added/changed:

If the code does not interact with devices:

  • Tests have been added to verify that the new code works.

@project-bot project-bot bot added this to Needs review in Dev Aug 9, 2019

homeassistant/util/yaml/ Outdated Show resolved Hide resolved

Dev automation moved this from Needs review to Review in progress Aug 9, 2019

Dev automation moved this from Review in progress to Reviewer approved Aug 9, 2019

elupus approved these changes Aug 9, 2019

This comment has been minimized.

Copy link

commented Aug 9, 2019

Ok once style and tests succeeds.

@thomasloven thomasloven force-pushed the thomasloven:include-yaml-fix branch from 7b7dc66 to 83b69cf Aug 9, 2019

@balloob balloob merged commit 60dfa38 into home-assistant:dev Aug 9, 2019

9 checks passed

CI Build #20190809.11 succeeded
CI (FullCheck Mypy) FullCheck Mypy succeeded
CI (FullCheck Pylint) FullCheck Pylint succeeded
CI (Overview CheckFormat) Overview CheckFormat succeeded
CI (Overview Lint) Overview Lint succeeded
CI (Overview Validate) Overview Validate succeeded
CI (Tests PyTest Python36) Tests PyTest Python36 succeeded
CI (Tests PyTest Python37) Tests PyTest Python37 succeeded
cla-bot Everyone involved has signed the CLA

Dev automation moved this from Reviewer approved to Done Aug 9, 2019

@lock lock bot locked and limited conversation to collaborators Aug 10, 2019

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
4 participants
You can’t perform that action at this time.