Преднастроенные сущности (fixtures)
Путь расположения
Путь в сборочном каталоге | Описание |
---|---|
|
Сущности для мастер-домена |
|
Сущности по типу домена |
|
Общие сущности для любого рабочего домена |
Обзор
Определяют конкретные сущности и их параметры для автоматического создания в соответствующем домене (только сущности, управляемые доменным центром – роли mdc).
Применяются к домену в момент его создания и возможно в момент перезагрузки домена ролью mdc. Загрузка fixture происходит на мастер сайте.
Применение происходит в первую очередь: сначала в домене создаются общие сущности, но затем применяются файлы фикстур конкретного солюшена, и при определенных настройках могут перезаписать. При этом к мастер-домену, применяются только фикстуры мастер-домена (солюшен мастер-домена также может быть задан, но это лишено смысла). Любой другой домен применяет общие фикстуры рабочего домена и фикстуры своего солюшена.
Каждый файл может содержать множество объектов подлежащих созданию. Каждый каталог может содержать произвольное множество файлов-фикстур, применяемых в порядке лексикографической сортировки имен файлов. Если не удалось загрузить fixture, то пишется строчка в логе с указанием информации об ошибке, все остальные файлы в каталоге пропускаются.
{ "objects": [ { "crud": str, "applycondition": "always" | "notexist", "data": object }, ... ] }
-
"crud"
– тип создаваемого объекта в формате известном роли mdc (domain, user, featurecode, sipuser, vectorrule, addressbook, …). -
"applycondition"
– условия создания сущностей при загрузке домена:-
"always"
– пересоздавать объект при каждой загрузке домена; -
"notexist"
– создавать объект только при условии, что он не существует в домене.
-
-
"data"
– создаваемый объект (поля и значения)
Пример
Создает пользователя, если он отсутствует, с конкретными идентификационными данными, ролью. Не модифицирует пользователя, если его изменили вручную, но пересоздает его, если он будет удален.
{ "objects": [ { "crud": "user", "applycondition": "notexists", "data": { "id": "8de96fb8-afc2-67e1-057a-60115bc80006", "name": "sample_user", "pwd": "user123", "login": "sample_user" "opts": {"roles": ["sample"]} } } ] }
См. также
-
Сущности домена