Как мы можем развернуть проект в Red Hat JBoss BPM Suite из командной строки?

В конечном итоге мы хотим, чтобы наши бизнес-процессы работали на сервере, на котором работает JBPM Suite, но мы также хотим, чтобы Jenkins создавал и развертывал наш код из GitLab.

Кажется, мы можем успешно упаковать код в jar-файл, но, кроме копирования его на сервер, мы не уверены, как затем сообщить пакету о фактическом развертывании процессов.

После большого количества поисков в Google кажется, что большинство низкоуровневых подходов все еще заканчивают тем, что загружали GUI и нажимали "Build & Deploy" и т.д. Например, эта страница: http://planet.jboss.org/post/how_to_deploy_processes_in_jbpm_6

Кто-нибудь знает, возможно ли это, и если да, то каков подход?

Спасибо

2 ответа

Это один из способов, другой способ - использовать менеджер репозитория, такой как Sonatype Nexus, и развернуть там упакованный JAR. Затем в POM для проекта BPM создайте профиль для этого хранилища.

Затем вы можете развернуть свой код таким же образом (используя POST), но без необходимости что-либо выдвигать с помощью SSH. BPM перейдет на nexus и загрузит необходимые зависимости.

<profile>
        <id>nexus</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <repositories>
            <repository>
                <id>example</id>
                <name>example group</name>
                <url>url to nexus</url>
                <layout>default</layout>
            </repository>
        </repositories>
</profile>

ура!

Я считаю, что у нас есть план сейчас.

Во-первых, мы клонируем git-репо с помощью интерфейса Suite. Затем мы можем внести изменения в git-репо на сервере BPM Suite, используя SSH.

Затем мы можем указать пакет для развертывания с использованием REST API, например так:

HTTP: // локальный: 8082 / бизнес-центральный / отдых / разворачивание / com.company.app: AppName: 1,0 / развернуть

Я также обнаружил, что вам нужно выполнить POST с добавленным заголовком "Content-Type" со значением "application/json", в противном случае он успешно принимает запрос на развертывание, но фактически этого не делает. Также тело, по-видимому, не может быть пустым, поэтому мы передаем "{ }" как тело, а затем все разворачивается так

Другие вопросы по тегам