6. Специальные файлы

💾 Актуально для версии Атом.Порт: 63ef9982

Назначение специальных файлов

Специальные файлы связаны с файлами графов сементикой и могут иметь схожий синтаксис, однако описывают дополнительные сущности, не включенные в формат графов. Далее описываются такие специальные файлы.

Файл настроек settings.yaml

Файл может храниться и загружаться вместе с сериализованными графами (см. комманду graph_files_load) в постоянное хранилище системы и содержит настройки, которые могут быть получены при помощи спецификации setting:group.name.

Файл содержит единственный двухуровневый словарь settings. Ключи являются произвольными строками и означают раздел настроек. Значения в свою очередь являются словарями с произвольными строковыми ключами и скалярными значениями.

Пример:

settings:
    generic:
        domain: localdomain
        max_users: 200
        migrate: yes
    department1:
        domain: dep1-domain
    department2:
        domain: dep2-domain

Статические узлы static_nodes.yaml

Файл статических узлов может загружаться и выгружаться вмест с файлами графов (см. комманды graph_files_load, graph_files_dump). Синтаксис файла полностью аналогичен словарю edges графа (описания узлов находятся сразу на верхнем уровне). Узлы, заргуженные из файла статических узлов не привязаны к какому-либо графу и могут использоваться в любых графах без явного описания путём указания их названий в качестве начальных и конечных узлов дуг.

Пример описания узла в файле статических узлов:

reboot_and_wait:
  description: Перезагрузить рабочую станцию и дождаться ответа
  unit_type: Runner
  unit_data:
    kwargs:
      mods: _orch.reboot_minion
    timeout: 900
    function: state.orchestrate
    minion_type: active
  retry_limit: 3

Пример использования статического узла в графе:

---
name: graph_reboot_and_wait
description: Перезагрузить рабочую станцию и дождаться её ответа

edges:
    - start -> reboot_and_wait
    - reboot_and_wait -> end