Reputation: 1
We ultimately want to have our Business Processes running on a server that is running the JBPM Suite, but we also want to have Jenkins building and deploying our code from GitLab.
We can package up the code into a jar successfully it seems, but apart from copying this to the server we are not sure how to then tell the suite to actually deploy the processes.
After a lot of googling it seems most lower-level approaches still end up loading the GUI and clicking "Build & Deploy" etc. For example this page: http://planet.jboss.org/post/how_to_deploy_processes_in_jbpm_6
Does anyone know if this is possible, and if so what is the approach?
Thanks
Upvotes: 0
Views: 498
Reputation: 317
That is one way, another way would be to use a repository manager like Sonatype Nexus and deploy a packaged JAR to there. Then in the POM for the BPM project create a profile against this repository.
Then you can deploy your code in the same way (using a POST) but without having to push anything with SSH. BPM will go to nexus and download the required dependencies.
<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>
cheers!
Upvotes: 1
Reputation: 1
I believe we have a plan now.
Firstly we clone a git repo using the Suite frontend. Then we can push changes to the git repo inside the BPM Suite server using SSH.
Then we can tell the suite to deploy using the REST API, like this:
http://localhost:8082/business-central/rest/deployment/com.company.app:AppName:1.0/deploy
I also discovered you need to POST with the header "Content-Type" added with value "application/json" otherwise it accepts the deployment request successfully but doesn't actually do it. Also the body apparently can't be empty so we pass in "{ }" as the body, and then everything deploys like that
Upvotes: 0