# JBoss BxMS 6.2 updates and findings (kie-server & githook)

kie-server

Following my previous post for BRMS kie-server's significant changes from 6.1 to 6.2.  I did some additional testing and documented some high level API commands in my github gist.  In BRMS it's the Realtime Decision Server and in BPMS it's the Intelligent Process Server.  As with BRMS, it will provide just the runtime environment for rules and processes.  There is no business central or design time instance.

The documentation for the API's for both rules and process under BPMS.

Managed provides a way to define a central controller server (business-central) which is able to manage the state across multiple instances, where as an unmanaged is a standalone instance.  Interaction with the unmanaged is only via the API.

In a managed scenario, you will need at least one controller already started so that the runtime environments.  In a configuration first definition, the following properties need to be set for the controller.  From the documentation.  Note the required use of kieserver/kieserver1! for BxMS 6.2.
<property name="org.kie.server.user" value="someusername"></property><property name="org.kie.server.pwd" value="somepassword"></property><property name="org.kie.server.location" value="http://localhost:8080/kie-server/services/rest/server"></property><property name="org.kie.server.controller" value="http://localhost:8080/business-central/rest/controller"></property><property name="org.kie.server.controller.user" value="kieserver"></property><property name="org.kie.server.controller.pwd" value="kieserver1!"></property><property name="org.kie.server.id" value="local-server"></property>
The appropriate application users 'someusername' and 'kieserver' will need to be created, with at least the 'kie-server' role.

The runtime servers only need the kie-server.war.  In the case of the runtime server you will need the following system properties.
<property name="org.kie.server.location" value="http://localhost:8180/kie-server/services/rest/server"></property> <!-- note this is the runtime server, with a port-offset of 100 --><property name="org.kie.server.controller" value="http://localhost:8080/business-central/rest/controller"></property> <!-- note pointing to your controller server --><property name="org.kie.server.id" value="local-server"></property>
For the runtime you just need the application user 'someusername' to be able to authenticate with the runtime kie-server, with the role 'kie-server'

githook

So another new feature in 6.2 is being able to incorporate your design time commits to an enterprise repository.  While there were previous methods to do this externally, i.e. (file system change detection, cron job, etc), there is now a githook option to able to trigger a 'post-commit' script execution.  It requires creating the 'post-commit' script as well as making sure your remote server is properly defined in your BxMS niogit repository.  So this will make it more straightforward to incorporate the BxMS builds into your automated enterprise build strategy.