DEPRECATION NOTICE
This example has a few old concepts from architecture and integration perspective. We are working on an updated version of this example. Until there, please try our other examples in this directory. In case you still need to run it, latest Kogito version which worked was KOGITO 1.29.0.Final.
In this example we will deploy a GitHub “bot” application that will react upon a new PR being opened in a given GitHub project. The “bot” is implemented via service and event orchestration approach with Kogito implementation of the Serverless Workflow specification.
The image below illustrates an overview of the architecture:
The implementation relies on three services included in this repository:
IMPORTANT! Before proceeding, please make sure you have everything listed in this section ready.
You may use CRC or Minikube if you don't have a cluster available with cluster admin rights. Or you can ask an administrator to install the prerequisites for you.
To deploy this example in your Kubernetes/OpenShift cluster, you will need:
kubectl create ns kogito-github or `oc new-project kogito-githubkogito-github. Download the latest release, and run: NAMESPACE=kogito-github ./hack/install.sh. Alternatively, you can also install it via OperatorHub.In your local machine you will need:
serverless-workflow-github-showcase directory (git clone https://github.com/kiegroup/kogito-examples.git && cd serverless-workflow-github-showcase)kubectl or oc clientFollow the instructions for each service to try them locally as standalone services and deploy them in your Kubernetes or OpenShift cluster:
Knative and Kogito will bind them together. :heart:
In case of any problems, please file an issue or reach out to us at the Kogito Dev Mailing list.
You can easily clean up the demo by deleting the namespace:
kubectl delete ns kogito-github
To clean up your /etc/hosts file, run the following script:
./scripts/cleanup-hosts-file.sh
It will remove all the lines added by the expose-on-minikube.sh script while deploying the services.