Wednesday, September 17, 2014

How to setup custom remote deployment repositories for JBoss BPM Suite

In this article we wanted to share another configuration property that can provide surprising help when setting up your JBoss BPM Suite.

Previously we outlined a basic set of configuration properties to provide you with a few tricks when installing your own JBoss BRMS or JBoss BPM Suite products.

As the JBoss BPM Suite is a super set, including full JBoss BRMS functionality, the rest of this article will refer only to JBoss BPM Suite but apply to both products.

In this article we will show you how to modify your JBoss EAP container configuration to point the products at a custom deployment repository by adjusting a single configuration property.

Maven repository

The default setup is that the products will look for your maven setting in the default settings.xml as found set in the M2_HOME variable or in the users home directory at .m2/settings.xml.

The following system property can be added to JBoss EAP standalone.xml configuration file to point to any file containing your custom settings.
  • kie.maven.settings.custom
    • Location of the maven configuration file where it can find it's settings.
    • Default: the M2_HOME/conf/settings.xml or users home directory .m2/settings.xml
It should also be mentioned that by taking control of the settings for your remote deployment repository you also now have control over the (remote) repositories from which you pull your dependencies. For example,  we can now point to repositories within your enterprise to provide JBoss BPM Suite with existing data models.

Example usage in JBoss EAP

When initially setting up the product for use on JBoss EAP containers, one can adjust configuration with the help of system properties.

Below we show how to configure an installation to point to our custom maven deployment repository by using a custom settings file we will call bpmsuite-settings.xml

<!-- Configuration property found in standalone.xml -->
<property name="kie.maven.settings.custom" value="${user.home}/.m2/bpmsuite-settings.xml" />

We hope this helps you with configuring your own custom deployment repositories and enables you to tie into existing continuous integration infrastructures that might exist in your organization.