!Include automations.yaml

Bonjour,

J’ai voulu déplacer le fichier automations.yaml dans un dossier includes.
Du coup dans mon fichier configuration.yaml, j’ai cette ligne :

automation: !include includes/automations.yaml

Dans le dossier includes (qui est au même niveau que le fichier configuration.yaml), j’ai le fichier automations.yaml.

Après un redémarrage, puis dans le détail des automations, j’obtiens ce message d’erreur :

Cette automatisation ne peut pas être modifiée à partir de l'interface utilisateur car elle n'est pas enregistrée dans le fichier automations.yaml ou n'a pas d'ID.

Est-ce que j’ai mal compris le principe de !include ?
Le fichier automations.yaml ne peut pas être déplacé ?

Merci

Salut,

non, il est systématiquement recréer au même endroit avec l’UI

Ok du coup quels sont les fichiers .yaml qui peuvent être déplacés dans un dossier ?

Oui :

scripts.yaml
sensors.yaml
scenes.yaml
groups.yaml
recorders.yaml
templates.yaml
customizes.yaml

Non :

automations.yaml

Ceux qu’il ne faut pas déplacer

  • automations.yaml
  • configuration.yaml
  • google_calendars.yaml
  • known_devices.yaml
  • scenes.yaml
  • scripts.yaml
  • secrets.yaml
1 « J'aime »

Merci Pulpy ! Plus puissant que ChatGPT qui me fait faire des bêtises.
Je fais plus attention avec ça…

C’est pas vraiment nouveau d’éviter de prendre la parole de chat GPT pour acquise.
Quand la config est lue, ça produit un gros fichier globale et donc HA ne sait pas ou c’est stocké.
Et ça ne compte pas pour les entrées, car pas produite en yaml mais en json directement.

Donc tous les fichiers qui sont éditables via l’ui (automations/scripts/scenes/secret) sont bloqués.
Les autres issus des intégrations (google, tracker) c’est pareil

1 « J'aime »

Hello,

Tu peux faire des includes dans ton fichier automation :slight_smile:

Maintenant que HA investit dans l’interface graphique j’essaye de passer par l’interface graphique, on peut de toute façon edit en YAML dedans.

Sinon sur mon ancienne instance j’ai ça dans le configuration.yaml:

automation manual: !include_dir_merge_list confdir/automations/
automation ui: !include automations.yaml

script manual: !include_dir_named confdir/scripts/
script ui: !include scripts.yaml

scene manual: !include_dir_list confdir/scenes/
scene ui: !include scenes.yaml

Et je peux avoir plusieurs fichier dans confdir/automations, par exemple: rf_remote.yaml:

- alias: '[yaml][RF Remote] OK'
  description: ''
  trigger:
  - platform: event
    event_type: keyboard_remote_command_received
    event_data:
      #device_descriptor: /dev/input/event0 # /dev/input/by-id/usb-MemsArt_MA144_RF_Controller-event-kbd
      device_name: MemsArt MA144 RF Controller
      key_code: 28
      type: key_down
  condition: []
  action:
  - service: light.toggle
    entity_id: light.bed2

Mais les « automation manual » ne sont pas éditables graphiquement, c’était fouilli, tout via la GUI maintenant :slight_smile: