-
Notifications
You must be signed in to change notification settings - Fork 212
Home
Kogito is cloud-native business automation for building intelligent applications, backed by battle-tested capabilities.
It originates from well known Open Source projects
-
Drools
-
jBPM
and takes advantage of the good things proven in mission critical systems around the globe. At the same time takes an opinionated view on what makes the good business automation solution. Key characteristics of Kogito are
-
cloud first cloud deployment is the first and foremost target runtime environment
-
domain specific no more leaking abstraction of the technology behind the service to your client applications
-
empower developers by offering a powerful developer experience based on battle-tested components
Install GraalVM version 19.0.2+: https://github.com/oracle/graal/releases/tag/vm-19.0.2 The native-image executable is not bundled in the GraalVM distribution anymore. Install it manually using $GRAALVM_HOME/bin/gu install native-image.
The easiest way to see it running is by trying the examples. Kogito comes with a set of examples that illustrates various aspects of business automation
-
onboarding example illustrates microservice orchestration that shows processes, rules and decision running on
-
Quarkus (both jvm and native image)
-
-
basic rule example illustrates single microservice to expose decision service running on
-
Quarkus (both jvm and native image)
-
-
basic process example illustrates single microservice to expose business processes as services running on
-
Quarkus (both jvm and native image)
-
To be able to make use of visual modelling of your processes download Eclipse IDE and install from Market place
-
Eclipse BPMN2 Modeler plugin (with jBPM Runtime Extension)
Note
|
Currently the eclipse IDE is the only one that has complete support for both process and rule modelling but the team is working on bringing in Stunner based BPMN2, DMN and Scenario editors to VSCode and Eclipse Che. |
To build your own service that is powered by Kogito the best way is to start by generating project using Maven Archetype. There are two flavours - Quarkus and Spring Boot
mvn archetype:generate \
-DarchetypeGroupId=org.kie.kogito \
-DarchetypeArtifactId=kogito-quarkus-archetype \
-DarchetypeVersion=0.3.0 \
-DgroupId=com.company \
-DartifactId=sample-kogito
mvn archetype:generate \
-DarchetypeGroupId=org.kie.kogito \
-DarchetypeArtifactId=kogito-springboot-archetype \
-DarchetypeVersion=0.3.0 \
-DgroupId=com.company \
-DartifactId=sample-kogito
Once the project is generated, import it into your Eclipse IDE. There is single process provided out of the box that allows to test the generated application. Simply build the project with maven and start the application (depending on which runtime you use)
mvn clean package spring-boot:run
you can examine running service’s Swagger documentation at http://localhost:8080/docs/swagger.json
To test it, send simple REST api
curl -X POST \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-d '{}'
http://localhost:8080/tests
That gives you a starting point where you can start adding your own business processes, rules and decisions!