Создайте несколько заданий MarkLogic Schedule для одного и того же модуля через ml-gradle
Я пытаюсь создать несколько экземпляров приложения в одной среде marklogic. Я могу создавать все конфигурации (пользователи, роли, базы данных, леса, серверы приложений...), но не могу планировать отдельные задачи для отдельной базы данных с одинаковым путем к модулю.
При попытке запустить ml-gradle mldeployApps не удалось создать задачу.
Вся моя конфигурация приложения зависит от файла свойств. для любого ИМЕНИ APP необходимо создать отдельную настойчивость.
Я попытался выполнить развертывание через ml-gradle. MlDeployTasks не работает, так как уже доступна задача для пути к модулю. При попытке запустить secong с новой ошибкой, поскольку она не распознает базу данных задач
JSON:
{
"task-enabled":true,
"task-path":"/ext/schedules/monitor.xqy",
"task-root":"/",
"task-type":"daily",
"task-period":1,
"task-start-time": "10:00:00",
"task-database":"%%DATABASE%%",
"task-modules":"%%MODULES_DATABASE%%",
"task-user":"admin",
"task-priority":"normal"
}
ОШИБКА:
Ведение журнала HTTP ответа для помощи в отладке: {"errorResponse":{"statusCode":"500", "status":"Внутренняя ошибка сервера", "messageCode":"MANAGE-INVALID", "message":"MANAGE-INVALID (ошибка:FOER0000): база данных задач "}} Произошла ошибка при отправке запроса PUT в /manage/v2/tasks/5389046897270663947/properties? Group-id=Default; тело запроса на регистрацию, чтобы помочь с отладкой: {
Ожидание:
хочет развернуть и отменить развертывание всего приложения, включая планирование задач на основе APPLICATION-NAME как отдельного экземпляра
Актуально:
mlDeployTasks, основанные на модульном пути, каждая задача идентифицируется со старой существующей базой данных и не может создать новый сервер задач.
Пожалуйста, предложите мне правильный путь для достижения того же
2 ответа
Попробуйте ml-gradle 3.10.0 - поддержка для этого теперь существует - см. Примечания к выпуску ml-app-deployer 3.10.0 (который обеспечивает большую часть функциональности в ml-gradle) - https://github.com/marklogic- сообщества / мл-приложение-Установщик / релизы / теги / 3.10.0
API управления MarkLogic рассматривает ваш запрос как попытку изменить task-database
, но позволяет изменять только одно свойство запланированной задачи (task-enabled
). Я думаю, что вам нужно сделать здесь, есть разные task-path
значения для ваших разных баз данных. Это не идеально, но если вся логика реализации находится в библиотеке, импортированной задачей, сами различные модули будут очень легковесными.