diff --git a/source/_docs/configuration.markdown b/source/_docs/configuration.markdown index 2dd787cdb24..e2d66c425ae 100644 --- a/source/_docs/configuration.markdown +++ b/source/_docs/configuration.markdown @@ -26,19 +26,36 @@ _If you use {% term "Home Assistant Operating System" %}, you can find `configur _If you use {% term "Home Assistant Core" %} , you can find `configuration.yaml` in the config folder passed to the `hass` command (default is `~/.homeassistant`)._ -## Reloading changes +## Reloading configuration changes -Most integrations in Home Assistant that do not interact with {% term devices %} or {% term services %} can reload changes made to their configuration in `configuration.yaml`. To do this, go to {% my server_controls title="Developer Tools > YAML" %} and scroll down to the YAML configuration reloading section (alternatively, hit "c" anywhere in the UI and search for it). +Most integrations in Home Assistant that do not interact with {% term devices %} or {% term services %} can reload changes made to their configuration in `configuration.yaml`. -If you can't see your integration listed there, you will need to restart Home Assistant for changes to take effect. +1. To reload configuration changes, go to {% my server_controls title="**Developer Tools** > **YAML**" %} and scroll down to the YAML configuration reloading section (alternatively, hit "c" anywhere in the UI and search for it). + - You are presented with a list of integrations, such as **Automations** or **Conversation**. -
+ ![Reload configuration changes](/images/docs/configuration/reloading_config.png) - To test any changes to your configuration files from the command line, check out the common tasks for [operating system](/common-tasks/os/#configuration-check), [supervised](/common-tasks/supervised/#configuration-check), [container](/common-tasks/container/#configuration-check), [core](/common-tasks/core/#configuration-check) for how to do that. Configuration changes can also be tested using the UI by navigating to {% my server_controls title="Developer Tools > YAML" %} and clicking "Check Configuration". For the button to be visible, you must enable "Advanced Mode" on your {% my profile title="User Profile" %}. +2. If the integration is listed, select it to reload the settings. +3. If integration is not listed, you need to restart Home Assistant for changes to take effect: + - [Validate the configuration](#validating-the-configuration). Then, select the **Restart** button. -
+## Validating the configuration + +After changing configuration or automation files, check if the configuration is valid. + +The method for running a configuration check depends on your [installation type](/installation/#advanced-installation-methods). Check the common tasks for your installation type: + +- [Configuration check on Operating System](/common-tasks/os/#configuration-check) +- [Configuration check on Supervised](/common-tasks/supervised/#configuration-check) +- [Configuration check on Container](/common-tasks/container/#configuration-check) +- [Configuration check on Core](/common-tasks/core/#configuration-check) ## Related topics +- [YAML syntax](/docs/configuration/yaml/) +- [Configuration check on Operating System](/common-tasks/os/#configuration-check) + +### Backups + - [Creating and restoring backups](/common-tasks/os/#backups) - [Creating backups for Home Assistant Container and Core](/integrations/backup) diff --git a/source/_docs/configuration/yaml.markdown b/source/_docs/configuration/yaml.markdown index b59f31dd0c5..cac38efde07 100644 --- a/source/_docs/configuration/yaml.markdown +++ b/source/_docs/configuration/yaml.markdown @@ -1,13 +1,13 @@ --- -title: "YAML" -description: "Details about YAML to configure Home Assistant." +title: "YAML syntax" +description: "Details about the YAML syntax used to configure Home Assistant." --- -Home Assistant uses the [YAML](https://yaml.org/) syntax for configuration. YAML might take a while to get used to but is powerful in allowing you to express complex configurations. +Home Assistant uses the [YAML](https://yaml.org/) syntax for configuration. While most integrations can be configured through the UI, some integrations require you to edit your [`configuration.yaml`](/docs/configuration/) file to specify its settings. -While more and more integrations are configured through the UI, for some, you will add code in your [`configuration.yaml`](/docs/configuration/) file to specify its settings. +This page gives a high-level introduction to the YAML syntax used in Home Assistant. For a more detailed description and usage examples refer to the [YAML Style Guide for Home Assistant developers](https://developers.home-assistant.io/docs/documenting/yaml-style-guide/). -The following example entry assumes that you would like to set up the [notify integration](/integrations/notify) with the [pushbullet platform](/integrations/pushbullet). +The following YAML example entry assumes that you would like to set up the [notify integration](/integrations/notify) with the [pushbullet platform](/integrations/pushbullet). ```yaml notify: @@ -25,7 +25,7 @@ In YAML, indentation is important for specifying relationships. Indented lines a Getting the right indentation can be tricky if you're not using an editor with a fixed-width font. Tabs are not allowed to be used for indentation. The convention is to use 2 spaces for each level of indentation. -To check if your YAML syntax is correct before loading it into Home Assistant, you can use the third-party service [YAML Validator](https://codebeautify.org/yaml-validator/) (not maintained by the Home Assistant community). +To check if your YAML syntax is correct before loading it into Home Assistant, you can use the third-party service [YAML Validator](https://codebeautify.org/yaml-validator/) (not maintained by the Home Assistant community). If you edit the YAML files directly in Home Assistant, you can also [validate the YAML]() files from within Home Assistant.
@@ -120,3 +120,8 @@ Not quoting the value may generate an error such as: ```txt not a valid value for dictionary value @ data ``` + +## Related topics + +- [YAML syntax](https://yaml.org/) +- [YAML Style Guide for Home Assistant developers](https://developers.home-assistant.io/docs/documenting/yaml-style-guide/) \ No newline at end of file diff --git a/source/images/docs/configuration/reloading_config.png b/source/images/docs/configuration/reloading_config.png new file mode 100644 index 00000000000..11aba2afd90 Binary files /dev/null and b/source/images/docs/configuration/reloading_config.png differ