--- title: Справочник ROOT_ API description: Стандартизированные переменные окружения и библиотеки ядра. weight: 50 --- Каждый Action-скрипт, выполняемый через диспетчер `root`, имеет доступ к стандартизированному набору переменных окружения и Bash-библиотек. Это обеспечивает согласованный API для взаимодействия с инфраструктурой. ## Диспетчер `root` {#dispatcher} Команда `root` (находится в `.operator/shared/scripts/run/root`) является основной точкой входа для всей оркестрации. Ее основные обязанности включают: 1. **Разрешение контекста**: Поиск целевого [Узла (Node)](/root/glossary#node) и связанных с ним [Уровней (Tiers)](/root/glossary#tier) хранилища. 2. **Загрузка библиотек**: Подключение основных библиотек ядра (например, `root_core`, `root_sys`). 3. **Выполнение Action-скриптов**: Поиск и запуск запрошенного действия, с приоритетом локальных переопределений. ## Переменные разрешения путей {#paths} Эти переменные устанавливаются диспетчером и доступны всем Action-скриптам. | Переменная | Описание | | :--- | :--- | | `ROOT_SHARED` | Абсолютный путь к репозиторию [Commons](/root/glossary#commons). | | `ROOT_CONFIGS` | Абсолютный путь к основному репозиторию конфигураций. | | `ROOT_LOCAL` | Абсолютный путь к директории локального оператора (`.operator/local`). | | `ROOT_ACTIONS_SHARED` | Путь к глобальным общим Action-скриптам. | | `ROOT_ACTIONS_LOCAL` | Путь к специфичным для узла локальным Action-скриптам. | ## Переменные контекста узла {#node-context} Когда действие нацелено на конкретный узел, следующие переменные устанавливаются вспомогательной функцией `root_require_node`. | Переменная | Описание | | :--- | :--- | | `ROOT_NODE` | Идентификатор целевого узла (например, `daedalus`). | | `ROOT_NODE_DIR` | Абсолютный путь к директории конфигурации узла. | | `ROOT_TIER1` | Абсолютный путь к директории [Уровня 1](/root/glossary#tier). | | `ROOT_TIER2` | Абсолютный путь к директории Уровня 2. | | `ROOT_TIER3` | Абсолютный путь к директории Уровня 3. | ## Основные функции логирования {#logging} Стандартизированное логирование обеспечивает согласованный вывод всех действий. - `root_log_info`: Стандартный информационный вывод. - `root_log_warn`: Предупреждения, требующие внимания. - `root_log_error`: Критические ошибки, отправляемые в `stderr`. - `root_log_success`: Подтверждение успешного завершения задачи. ## Система помощи {#help} Диспетчер предоставляет встроенную систему помощи, парся блок `action_metadata` в начале каждого скрипта. Это позволяет скриптам оставаться декларативными без реализации собственной обработки аргументов командной строки. ```bash filename="example-action-metadata" action_metadata() { cat <