====== Общая конфигурация плагинов и модулей ======
===== Конфигурационные файлы =====
Конфигурация проекта может состоять из одного и более yml-файлов, которые хранятся в каталоге проекта. Данный каталог указывается параметром ''-cfg'' при запуске приложения. При загрузке сканируется весь каталог (без вложенных каталогов), и загружаются все найденные yml-файлы (кроме скрытых, начинающихся с точки).
Конфигурация записывается в [[doc:jroboplc:notes:yaml_techniques|YAML-формате]].
Внимание! В YAML отступы имеют значение. Для отступов используется пробел. TAB'ы использовать запрещено.\\
[[https://www.youtube.com/watch?v=AXLoRpKnK8U]]
Общий формат конфигурационного файла:
param1: value
param2: value
plugin.pluginA:
enable: on
module.moduleA1
modprm1: value
modprm2: value
module.moduleA2
modprm1: value
modprm2: value
plugin.pluginB:
enable: off
module.moduleB1
modprm1: value
tag.values:
tagname1: value
tagname2: value
tag.flags:
tagname1: none
tagname2: autosave hidden
===== Общие настройки для плагинов =====
|**plugin.name** |название плагина ([[doc:jroboplc:notes:how_to_name_modules]]) |
|**enable** |разрешение работы плагина |
|:::|**off** - плагин отключен и не загружается при старте приложения |
|:::|**on** - плагин включен |
|**debug.logging** |отладочное логирование в файл ''debug'' (пока реализовано только в группе периферийных модулей, использующих протокол АА55) |
===== Общие настройки для модулей =====
|**module.name** |название модуля |
|**enable** |разрешение работы модуля |
|:::|**off** - модуль загружается при старте приложения, но не выполняется в runtime |
|:::|**on** - модуль выполняется в runtime |
|**tag.values** |переопределение значений тегов, где tagname имя тега модуля, либо regex-выражение |
|**tag.flags** |переопределение флагов тегов, где tagname имя тега модуля, либо regex-выражение. Флаги указываются через пробел или запятую: |
|:::|**none** |
|:::|**autosave** - значение тега сохраняется (необходимо использовать модуль [[doc:jroboplc:modules:tagsaver]] |
|:::|**hidden** - тег не предназначен для показа удаленным клиентам |
|:::|**external** - тег содержит значение, запрошенное с удаленного сервера |
|:::|**status** - тег может изменять свой статус ''GOOD''/''BAD'' |
|**func.tags** |см. [[doc:jroboplc:functags]] |
===== Глобальные параметры =====
^ Параметр ^ Умолчание ^ Описание ^
|**appname** | '''' | Имя приложения |
|**log.dir** | ''log'' | Путь до каталога с лог-файлами |
|**keys.dir** | ''keys'' | Путь до каталога с парами приватных и публичных ключей (относительно каталога конфигурации) |
Все пути относительно каталога конфигурации.
Глобальные параметры рекомендуется указывать в отдельном файле ''conf.yml''.