The idea is to share four easy steps taking you on a journey from local to cloud native container based application deployments. The base project was an old demo project I had running on JBoss BPM Suite a few years back, polished up and now running on Red Hat Process Automation Manager using Red Hat Enterprise Application Server (EAP).
The project will be outlined, followed by installing it locally on your developer machine. After that, you'll need to install the OpenShift Container Platform and I'll show you how using CodeReady Containers. This puts a container platform running on your developer machine, at which point it's a matter of installing the provided business automation operator and pushing the existing project without any changes into the container. You can observe it deploying right on your OpenShift web console or explore the details with the command line client.
Ready to get started?
Step 1 - Examining the project
This article brings back an old demo project, refreshed and polished up now, that is exploring how to use process automation to implement a signal.
The idea is that in this process project we are automating a loan request process where any loan up to 10,000 with a customer over 18 years old is automatically approved. The paths options can be that you might need a loan officer to physically review a loan if it's over 10,000 or it faces auto rejection if the application is made by someone younger than 18 years old.
Of these three paths through the process, our fictitious marketing department wants to be notified if it's an existing customer so that they can take action, possibly marketing other services to that customer. The problem is you only want to notify the marketing department if you are sure it's a customer, and that would be anyone over 18 years of age. On top of that you want to pass on as much information as possible on the customer ot the marketing department, so you want to notify them at the end the route taken through the process.
The process is not that complicated, and if you trace visually you can see the top end node is for auto rejected, the middle end node is if the loan was reviewed and approved, and the bottom end node is for reviewed applications that get rejected.
The interesting part is at the start of the process where as soon as an application is submitted, it splits to start processing on one route and to wait in a signal event node. If we submit an application that is not auto rejected, it's going to show us that it's waiting on a user review by the loan officer (red outlined node) and waiting to see if it's going to receive a signal (red outlined event node) to add a marketing contact.
That wait state is only going to move onwards if we send a signal later in the process, at which time it will trigger the signal event node to proceed onwards. In this next image you see that we approved the loan and that the signal was sent in the final node before ending and the marketing contact was processed.
Step 2 - Installing locally
-
Add products to installs directory, see installs/README for details and links.
-
Run 'init.sh' or 'init.bat' file. 'init.bat' must be run with Administrative privileges, follow displayed instructions to start demo.
After start up of the application server you can log in to http://localhost:8080/business-central (for admin and Loan Officer roles use u:erics / p:redhatpam1!)
Follow the instructions to run through the business automation project listed in the readme file.
Step 3 - Installing container platform
Step 4 - Installing to container
Ensure you have installed OpenShift with CodeReady Containers Easy Install which was covered in the previous section.
-
Run 'init.sh' or 'init.bat' file. 'init.bat' must be run with Administrative privileges.
Now log in to the project to start exploring how a process signal to marketing works (the address will be generated by the init script):
- CodeReady Container example: http://insecure-signal-rhpamcentr-appdev-in-cloud.apps-crc.testing ( u:erics / p:redhatpam1! )
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.