The purpose of this reference architecture is to introduce various Continuous Integration / Delivery (CI / CD) workflows when working with the Red Hat JBoss BPM Suite product.
This reference architecture investigates the following CI / CD workflows:
In this approach, the out-of-the-box CI / CD features provided by the BPM Suite 6 product are utilized.
This reference architecture is particularly relevant to those with experience with other BPM products that also provide native support for continuous integration and delivery.
Highlights of this BPMS Driven Delivery approach include:
-
Developers and business analysts collaborate on the same BPM Suite environment.
-
The
managed repositoryfeature from BPM Suite is utilized . -
System of truth of version controlled BxMS artifacts is the
.niogitrepository of BPM Suite .
Details can be found in the BPMS Driven Delivery README.
In this approach, Jenkins is utilized to orchestrate CI / CD workflows of BxMS business processes and rules.
This reference architecture is particularly relevant to software developers already proficient with (and have an appreciation for) Jenkins and hosted Git repositories (such as Github or Gitlab).
Highlights of this Jenkins focused approach are as follows:
-
Master branch of BPM projects is always in a deployable state.
-
Can be fully automated (as per principals of Continuous Delivery and DevOps)
-
System of truth of version controlled BxMS artifacts are the repositories managed in a custom
GitLabenvironment. -
Every developer has their own local BPMS instance.
Details can be found in the BxMS CI / CD using Jenkins README.
In this approach, Jenkins and GitLab continue to be utilized to orchestrate CI / CD workflows of BxMS business processes and rules. Additionally, the Git Flow approach is leveraged.
Highlights of this Git flow approach are as follows:
-
Not fully automated.
-
Makes heavy use of git branching.
-
Developers never work on master.
-
Requires git branching capabilities of BPM Suite.
-
System of truth of version controlled BxMS artifacts are the repositories managed in a custom
GitLabenvironment. -
Every developer has their own local BPMS instance.
Details can be found in the Git Flow Model README.