У меня есть несколько скриптов, которые я запускаю, используя jboss-cli -c --controller=... --file=myscript.cli
.Опции -c
и --controller
великолепны, потому что мой скрипт не знает, с каким сервером он должен работать, и его можно использовать повторно для нескольких серверов.
Теперь я хочу использовать offline-Функция cli , позволяющая избежать конфликтов портов и предотвратить доступ к серверам через сеть во время их настройки.Теперь моя проблема заключается в том, что для запуска встроенного сервера мне нужно использовать команду CLI embed-server
, но я не хочу добавлять эту команду в свои сценарии, поскольку сценарии не должны знать имяXML-файл конфигурации сервера.
К сожалению, я не могу одновременно использовать --command="embed-server --server-config=my-standalone.xml"
и --file=myscript.cli
, потому что CLI жалуется на:
Only one of '--file', '--commands' or '--command' can appear as the argument at a time.
Еще одна вещь, которую я попробовал, была: --commands="embed-server --server-config=my-standalone.xml,run-batch --file=\"myscript.cli\"
но это тоже не работает, потому что мои скрипты содержат некоторую логику if-else, например:
if (outcome == success) of /subsystem=iiop-openjdk:read-resource()
/subsystem=iiop-openjdk:remove()
end-if
И, к сожалению, условная логика не поддерживается в пакетном режиме (см. https://bugzilla.redhat.com/show_bug.cgi?id=1083176).