diff --git a/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/docker-compose.yml b/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/docker-compose.yml
index 2cbc0a4150..5118e4a03c 100644
--- a/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/docker-compose.yml
+++ b/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/docker-compose.yml
@@ -135,26 +135,9 @@ services:
depends_on:
data-index:
condition: service_started
- keycloak:
- condition: service_healthy
volumes:
- ./svg/:/home/kogito/data/svg/
environment:
KOGITO_DATAINDEX_HTTP_URL: http://${DOCKER_GATEWAY_HOST:-host.docker.internal}:8180/graphql
KOGITO_MANAGEMENT_CONSOLE_PROPS: -Dkogito.consoles.keycloak.config.url=http://localhost:8480/auth -Dkogito.consoles.keycloak.config.health-check-url=http://localhost:8480/auth/realms/kogito/.well-known/openid-configuration -Dkogito.svg.folder.path=/home/kogito/data/svg
QUARKUS_HTTP_CORS_ORIGINS: "/.*/"
-
- task-console:
- container_name: task-console
- image: quay.io/kiegroup/kogito-task-console:${KOGITO_VERSION}
- ports:
- - 8380:8080
- depends_on:
- data-index:
- condition: service_started
- keycloak:
- condition: service_healthy
- environment:
- KOGITO_DATAINDEX_HTTP_URL: http://${DOCKER_GATEWAY_HOST:-host.docker.internal}:8180/graphql
- KOGITO_TASK_CONSOLE_PROPS: -Dkogito.consoles.keycloak.config.url=http://localhost:8480/auth -Dkogito.consoles.keycloak.config.health-check-url=http://localhost:8480/auth/realms/kogito/.well-known/openid-configuration
- QUARKUS_HTTP_CORS_ORIGINS: "/.*/"
\ No newline at end of file
diff --git a/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/keycloak/kogito-realm.json b/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/keycloak/kogito-realm.json
index fd3cdc0942..80e06bd07e 100644
--- a/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/keycloak/kogito-realm.json
+++ b/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/keycloak/kogito-realm.json
@@ -816,15 +816,14 @@
},
{
"clientId": "kogito-console-quarkus",
- "rootUrl": "http://localhost:8380",
- "adminUrl": "http://localhost:8380/",
- "baseUrl": "http://localhost:8380/",
+ "rootUrl": "http://localhost:8280",
+ "adminUrl": "http://localhost:8280/",
+ "baseUrl": "http://localhost:8280/",
"surrogateAuthRequired": false,
"enabled": true,
"clientAuthenticatorType": "client-secret",
"secret": "**********",
"redirectUris": [
- "http://localhost:8380/*",
"http://localhost:8280/*"
],
"webOrigins": [
diff --git a/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/startServices.sh b/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/startServices.sh
index ddd98b43a6..51f19220a2 100755
--- a/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/startServices.sh
+++ b/kogito-quarkus-examples/kogito-travel-agency/extended/docker-compose/startServices.sh
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
diff --git a/kogito-quarkus-examples/kogito-travel-agency/extended/travels/README.md b/kogito-quarkus-examples/kogito-travel-agency/extended/travels/README.md
index e2f305dd5c..e5f32f64cc 100644
--- a/kogito-quarkus-examples/kogito-travel-agency/extended/travels/README.md
+++ b/kogito-quarkus-examples/kogito-travel-agency/extended/travels/README.md
@@ -13,7 +13,6 @@ the response with the visa processing outcome - approved or rejected.
* Create project using Quarkus Maven plugin with following extensions
* Kogito
* OpenApi
-* Import project into Eclipse IDE - requires BPMN modeller plugin installed
* Create data model
* Traveller
* Hotel
@@ -134,16 +133,16 @@ You should start all the services before you execute any of the **Hiring** examp
For Linux and MacOS:
1. Open a Terminal
-2. Go to the process-usertasks-quarkus-with-console folder at kogito-examples
+2. Go to the kogito-travel-agency folder at kogito-examples
```bash
-cd /docker-compose
+cd /docker-compose
```
3. Run the ```startServices.sh``` script
```bash
-sh ./startServices.sh
+./startServices.sh
```
Once all services bootstrap, the following ports will be assigned on your local machine:
@@ -173,6 +172,12 @@ It will install the *Kogito Realm* that comes with a predefined set of users:
Once Keycloak is started, you should be able to access your *Keycloak Server* at [localhost:8480/auth](http://localhost:8480/auth) with *admin* user.
+### Compile and Start the process
+
+```
+mvn clean package
+java -jar target/quarkus-app/quarkus-run.jar
+```
### Compile and Run in Local Dev Mode
diff --git a/kogito-quarkus-examples/kogito-travel-agency/extended/visas/README.md b/kogito-quarkus-examples/kogito-travel-agency/extended/visas/README.md
index 079235da90..7fe2f1ae9e 100644
--- a/kogito-quarkus-examples/kogito-travel-agency/extended/visas/README.md
+++ b/kogito-quarkus-examples/kogito-travel-agency/extended/visas/README.md
@@ -18,7 +18,6 @@ will add additional handling to the approved or rejected visa applications _(by
* Create project using Quarkus Maven plugin with following extensions
* Kogito
* OpenApi
-* Import project into Eclipse IDE - requires BPMN modeller plugin installed
* Create data model
* VisaApplication
* Create decision logic
@@ -78,16 +77,16 @@ You should start all the services before you execute any of the **Hiring** examp
For Linux and MacOS:
1. Open a Terminal
-2. Go to the process-usertasks-quarkus-with-console folder at kogito-examples
+2. Go to the kogito-travel-agency folder at kogito-examples
```bash
-cd /docker-compose
+cd /docker-compose
```
3. Run the ```startServices.sh``` script
```bash
-sh ./startServices.sh
+./startServices.sh
```
Once all services bootstrap, the following ports will be assigned on your local machine:
@@ -117,6 +116,13 @@ It will install the *Kogito Realm* that comes with a predefined set of users:
Once Keycloak is started, you should be able to access your *Keycloak Server* at [localhost:8480/auth](http://localhost:8480/auth) with *admin* user.
+### Compile and Start the process
+
+```
+mvn clean package
+java -jar target/quarkus-app/quarkus-run.jar
+```
+
### Compile and Run in Local Dev Mode
```
diff --git a/kogito-quarkus-examples/kogito-travel-agency/extended/visas/docs/images/visa-applications-process.png b/kogito-quarkus-examples/kogito-travel-agency/extended/visas/docs/images/visa-applications-process.png
index c690aa0b54..8b2c454912 100644
Binary files a/kogito-quarkus-examples/kogito-travel-agency/extended/visas/docs/images/visa-applications-process.png and b/kogito-quarkus-examples/kogito-travel-agency/extended/visas/docs/images/visa-applications-process.png differ
diff --git a/kogito-quarkus-examples/ocp-tryout/README.md b/kogito-quarkus-examples/ocp-tryout/README.md
index 454aeecb52..9a40ccb365 100644
--- a/kogito-quarkus-examples/ocp-tryout/README.md
+++ b/kogito-quarkus-examples/ocp-tryout/README.md
@@ -26,7 +26,6 @@ Installation from pre-build images
- [Data Index](https://docs.jboss.org/kogito/release/1.15.0/html_single/#con-data-index-service_kogito-configuring)
- [Management console](https://docs.jboss.org/kogito/release/1.15.0/html_single/#con-management-console_kogito-developing-process-services)
- [Jobs service](https://docs.jboss.org/kogito/release/latest/html_single/#con-jobs-service_kogito-configuring)
-- [Task console](https://docs.jboss.org/kogito/release/latest/html_single/#con-task-console_kogito-developing-process-services)
## Architecture
![](./architecture.png)
@@ -86,8 +85,6 @@ All configuration required to make those connections as well as initializations
- `kogito.dataindex.wsurl` - the dataindex url, protocol: ws
### Kogito Management Console Configurations
- `kogito.managementconsole.props` - command line properties for the management console
-### Kogito Task Console Configurations
-- `kogito.taskconsole.props` - command line properties for the task console
### Kogito Job Service Configurations
- `kogito.jobsservice.props` - command line properties for the job service
@@ -103,7 +100,6 @@ if marked `-` then namespace defaults are applied
|keycloak|-|-|-|-|
|kogito-data-index-infinispan|-|-|-|500Mi|
|kogito-management-console|-|-|-|500Mi|
-|kogito-task-console|-|-|-|500Mi|
|kogito-jobs-service|-|-|-|500Mi|
|kogito-travel-agency-travels-jvm|-|-|-|500Mi|
|kogito-travel-agency-visas-jvm|-|-|-|500Mi|
diff --git a/kogito-quarkus-examples/ocp-tryout/installer.properties b/kogito-quarkus-examples/ocp-tryout/installer.properties
index 4e95a8efef..685f1ee568 100644
--- a/kogito-quarkus-examples/ocp-tryout/installer.properties
+++ b/kogito-quarkus-examples/ocp-tryout/installer.properties
@@ -32,7 +32,6 @@ KAFKA=N
KEYCLOAK=N
KOGITO_DATA_INDEX=N
KOGITO_MANAGEMENT_CONSOLE=N
-KOGITO_TASK_CONSOLE=N
KOGITO_JOBS_SERVICE=N
TEST_APP=N
diff --git a/kogito-quarkus-examples/ocp-tryout/installer.sh b/kogito-quarkus-examples/ocp-tryout/installer.sh
index 5a41f0a952..7e4db96764 100755
--- a/kogito-quarkus-examples/ocp-tryout/installer.sh
+++ b/kogito-quarkus-examples/ocp-tryout/installer.sh
@@ -29,7 +29,7 @@ source common-functions.sh
action=install
components=(SHARED_CONFIG INFINISPAN KAFKA KEYCLOAK \
- KOGITO_DATA_INDEX KOGITO_MANAGEMENT_CONSOLE KOGITO_TASK_CONSOLE KOGITO_JOBS_SERVICE \
+ KOGITO_DATA_INDEX KOGITO_MANAGEMENT_CONSOLE KOGITO_JOBS_SERVICE \
TEST_APP)
# override the installer properties configuration if needed
function overrideEnvVariables(){
@@ -111,7 +111,6 @@ function install(){
componentAction "${KOGITO_DATA_INDEX}" "kogito-data-index" "${dbType}"
componentAction "${KOGITO_MANAGEMENT_CONSOLE}" "kogito-management-console"
- componentAction "${KOGITO_TASK_CONSOLE}" "kogito-task-console"
componentAction "${KOGITO_JOBS_SERVICE}" "kogito-jobs-service" "${dbType}"
componentAction "${TEST_APP}" "testapp"
diff --git a/kogito-quarkus-examples/ocp-tryout/keycloak/keycloak.sh b/kogito-quarkus-examples/ocp-tryout/keycloak/keycloak.sh
index 2f67181056..d393eb7998 100755
--- a/kogito-quarkus-examples/ocp-tryout/keycloak/keycloak.sh
+++ b/kogito-quarkus-examples/ocp-tryout/keycloak/keycloak.sh
@@ -24,8 +24,7 @@ action=$1
# NOTE: if need to update kogito_realm.json, edit content of kogito-realm-orig.json here
function updateClientRedirectUrls(){
mngConsole=\"http://kogito-management-console-$(getProjectName).$(getClusterAppsHostname)/*\"
- taskConsole=\"http://kogito-task-console-$(getProjectName).$(getClusterAppsHostname)/*\"
- additionalRedirectUris=["${mngConsole}","${taskConsole}"]
+ additionalRedirectUris=["${mngConsole}"]
(jq '(.clients[] | select(.clientId=="kogito-console-quarkus") | .redirectUris) |= . + '${additionalRedirectUris} kogito-realm-orig.json) > kogito-realm.json
}
updateClientRedirectUrls
diff --git a/kogito-quarkus-examples/ocp-tryout/keycloak/kogito-realm-orig.json b/kogito-quarkus-examples/ocp-tryout/keycloak/kogito-realm-orig.json
index 2ab1536f80..bb8172f4d8 100644
--- a/kogito-quarkus-examples/ocp-tryout/keycloak/kogito-realm-orig.json
+++ b/kogito-quarkus-examples/ocp-tryout/keycloak/kogito-realm-orig.json
@@ -816,15 +816,14 @@
},
{
"clientId": "kogito-console-quarkus",
- "rootUrl": "http://localhost:8380",
- "adminUrl": "http://localhost:8380/",
- "baseUrl": "http://localhost:8380/",
+ "rootUrl": "http://localhost:8280",
+ "adminUrl": "http://localhost:8280/",
+ "baseUrl": "http://localhost:8280/",
"surrogateAuthRequired": false,
"enabled": true,
"clientAuthenticatorType": "client-secret",
"secret": "**********",
"redirectUris": [
- "http://localhost:8380/*",
"http://localhost:8280/*"
],
"webOrigins": [
diff --git a/kogito-quarkus-examples/ocp-tryout/kogito-shared/README.md b/kogito-quarkus-examples/ocp-tryout/kogito-shared/README.md
index 736c0c368b..6c2726e316 100644
--- a/kogito-quarkus-examples/ocp-tryout/kogito-shared/README.md
+++ b/kogito-quarkus-examples/ocp-tryout/kogito-shared/README.md
@@ -23,7 +23,5 @@ There is one config map per infrastructure component.
- `kogito.dataindex.wsurl` - the dataindex url, protocol: ws
#### Kogito Management Console Config
- `kogito.managementconsole.props` - command line properties for the management console
-#### Kogito Task Console Config
-- `kogito.taskconsole.props` - command line properties for the task console
#### Kogito Job Service Config
- `kogito.jobsservice.props` - command line properties for the job service
\ No newline at end of file
diff --git a/kogito-quarkus-examples/ocp-tryout/kogito-shared/kogito-configs.yaml b/kogito-quarkus-examples/ocp-tryout/kogito-shared/kogito-configs.yaml
index fef616fd82..a3841d6cc5 100644
--- a/kogito-quarkus-examples/ocp-tryout/kogito-shared/kogito-configs.yaml
+++ b/kogito-quarkus-examples/ocp-tryout/kogito-shared/kogito-configs.yaml
@@ -36,5 +36,4 @@ data:
kogito.dataindex.httpurl.with.graphql: 'http://kogito-data-index-infinispan-${project_name}.${apps_cluster_host}/graphql'
kogito.dataindex.wsurl: 'ws://kogito-data-index-infinispan-${project_name}.${apps_cluster_host}'
kogito.managementconsole.props: '-Dkogito.svg.folder.path=/home/kogito/data/svg -Dkogito.consoles.keycloak.config.url=http://keycloak-${project_name}.${apps_cluster_host}/auth/ -Dkogito.consoles.keycloak.config.health-check-url=http://keycloak-${project_name}.${apps_cluster_host}/auth/realms/kogito/.well-known/openid-configuration'
- kogito.taskconsole.props: '-Dkogito.test.user-system.enabled=true -Dkogito.consoles.keycloak.config.url=http://keycloak-${project_name}.${apps_cluster_host}/auth/ -Dkogito.consoles.keycloak.config.health-check-url=http://keycloak-${project_name}.${apps_cluster_host}/auth/realms/kogito/.well-known/openid-configuration'
kogito.jobsservice.props: '-Dquarkus-profile=events-support -D%events-support.kafka.bootstrap.servers=kafka.${project_name}.svc.cluster.local:9092 -D%events-support.mp.messaging.outgoing.kogito-job-service-job-status-events.bootstrap.servers=kafka.${project_name}.svc.cluster.local:9092'
\ No newline at end of file
diff --git a/kogito-quarkus-examples/ocp-tryout/uninstaller.sh b/kogito-quarkus-examples/ocp-tryout/uninstaller.sh
index 365a0fc03f..7e7b8532c7 100755
--- a/kogito-quarkus-examples/ocp-tryout/uninstaller.sh
+++ b/kogito-quarkus-examples/ocp-tryout/uninstaller.sh
@@ -25,7 +25,7 @@ source common-functions.sh
action=uninstall
components=(SHARED_CONFIG INFINISPAN KAFKA KEYCLOAK \
- KOGITO_DATA_INDEX KOGITO_MANAGEMENT_CONSOLE KOGITO_TASK_CONSOLE KOGITO_JOBS_SERVICE \
+ KOGITO_DATA_INDEX KOGITO_MANAGEMENT_CONSOLE KOGITO_JOBS_SERVICE \
TEST_APP)
# override the installer properties configuration if needed
function overrideEnvVariables(){
@@ -74,7 +74,6 @@ function uninstall(){
componentAction "${KOGITO_DATA_INDEX}" "kogito-data-index" "${dbType}"
componentAction "${KOGITO_MANAGEMENT_CONSOLE}" "kogito-management-console"
- componentAction "${KOGITO_TASK_CONSOLE}" "kogito-task-console"
componentAction "${KOGITO_JOBS_SERVICE}" "kogito-jobs-service" "${dbType}"
componentAction "${INFINISPAN}" "infinispan"
diff --git a/kogito-quarkus-examples/pom.xml b/kogito-quarkus-examples/pom.xml
index 1a3f0bbe88..acacf1a032 100644
--- a/kogito-quarkus-examples/pom.xml
+++ b/kogito-quarkus-examples/pom.xml
@@ -67,7 +67,7 @@
pmml-event-driven-quarkus
pmml-incubation-api-quarkus
pmml-quarkus-example
- process-business-calendar-example
+ process-business-calendar-quarkus-example
process-business-rules-quarkus
process-decisions-quarkus
process-decisions-rest-quarkus
diff --git a/kogito-quarkus-examples/process-business-calendar-example/README.md b/kogito-quarkus-examples/process-business-calendar-quarkus-example/README.md
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/README.md
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/README.md
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/CancelPaymentAssign.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/CancelPaymentAssign.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/CancelPaymentAssign.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/CancelPaymentAssign.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/CancelPaymentTop.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/CancelPaymentTop.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/CancelPaymentTop.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/CancelPaymentTop.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/CreditCardModel.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/CreditCardModel.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/CreditCardModel.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/CreditCardModel.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/Get1.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Get1.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/Get1.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Get1.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/Get2.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Get2.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/Get2.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Get2.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/Get3.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Get3.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/Get3.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Get3.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/Post1.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Post1.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/Post1.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Post1.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/Post2.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Post2.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/Post2.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Post2.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/Post3.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Post3.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/Post3.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Post3.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/ProcessCreditBillAssign.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/ProcessCreditBillAssign.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/ProcessCreditBillAssign.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/ProcessCreditBillAssign.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/ProcessCreditBillTop.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/ProcessCreditBillTop.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/ProcessCreditBillTop.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/ProcessCreditBillTop.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/SettlePaymentAssign.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/SettlePaymentAssign.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/SettlePaymentAssign.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/SettlePaymentAssign.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/SettlePaymentTop.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/SettlePaymentTop.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/SettlePaymentTop.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/SettlePaymentTop.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/Timer.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Timer.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/Timer.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/Timer.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/VerifyPayment.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/VerifyPayment.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/VerifyPayment.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/VerifyPayment.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/WithPropertiesLogs.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/WithPropertiesLogs.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/WithPropertiesLogs.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/WithPropertiesLogs.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/WithoutPropertiesLogs.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/WithoutPropertiesLogs.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/WithoutPropertiesLogs.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/WithoutPropertiesLogs.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/docs/images/WithoutPropertiesLogsNW.png b/kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/WithoutPropertiesLogsNW.png
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/docs/images/WithoutPropertiesLogsNW.png
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/docs/images/WithoutPropertiesLogsNW.png
diff --git a/kogito-quarkus-examples/process-business-calendar-example/pom.xml b/kogito-quarkus-examples/process-business-calendar-quarkus-example/pom.xml
similarity index 98%
rename from kogito-quarkus-examples/process-business-calendar-example/pom.xml
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/pom.xml
index a1cfa1a138..dd31407f13 100644
--- a/kogito-quarkus-examples/process-business-calendar-example/pom.xml
+++ b/kogito-quarkus-examples/process-business-calendar-quarkus-example/pom.xml
@@ -30,7 +30,7 @@
999-SNAPSHOT
- process-business-calendar-example
+ process-business-calendar-quarkus-example
Kogito Example :: Process Business Calendar
diff --git a/kogito-quarkus-examples/process-business-calendar-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardDetails.java b/kogito-quarkus-examples/process-business-calendar-quarkus-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardDetails.java
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardDetails.java
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardDetails.java
diff --git a/kogito-quarkus-examples/process-business-calendar-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardService.java b/kogito-quarkus-examples/process-business-calendar-quarkus-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardService.java
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardService.java
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardService.java
diff --git a/kogito-quarkus-examples/process-business-calendar-example/src/main/resources/application.properties b/kogito-quarkus-examples/process-business-calendar-quarkus-example/src/main/resources/application.properties
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/src/main/resources/application.properties
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/src/main/resources/application.properties
diff --git a/kogito-quarkus-examples/process-business-calendar-example/src/main/resources/calendar.properties b/kogito-quarkus-examples/process-business-calendar-quarkus-example/src/main/resources/calendar.properties
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/src/main/resources/calendar.properties
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/src/main/resources/calendar.properties
diff --git a/kogito-quarkus-examples/process-business-calendar-example/src/main/resources/org/kie/kogito/calendar/bill/BPMN2-BusinessCalendarBankTransaction.bpmn2 b/kogito-quarkus-examples/process-business-calendar-quarkus-example/src/main/resources/org/kie/kogito/calendar/bill/BPMN2-BusinessCalendarBankTransaction.bpmn2
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/src/main/resources/org/kie/kogito/calendar/bill/BPMN2-BusinessCalendarBankTransaction.bpmn2
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/src/main/resources/org/kie/kogito/calendar/bill/BPMN2-BusinessCalendarBankTransaction.bpmn2
diff --git a/kogito-quarkus-examples/process-business-calendar-example/src/test/java/org/kie/kogito/calendar/CreditCardProcessIT.java b/kogito-quarkus-examples/process-business-calendar-quarkus-example/src/test/java/org/kie/kogito/calendar/CreditCardProcessIT.java
similarity index 100%
rename from kogito-quarkus-examples/process-business-calendar-example/src/test/java/org/kie/kogito/calendar/CreditCardProcessIT.java
rename to kogito-quarkus-examples/process-business-calendar-quarkus-example/src/test/java/org/kie/kogito/calendar/CreditCardProcessIT.java
diff --git a/kogito-quarkus-examples/process-instance-migration-quarkus/README.md b/kogito-quarkus-examples/process-instance-migration-quarkus/README.md
index 9f12a1b6a1..c42e044380 100644
--- a/kogito-quarkus-examples/process-instance-migration-quarkus/README.md
+++ b/kogito-quarkus-examples/process-instance-migration-quarkus/README.md
@@ -96,7 +96,7 @@ The Development Mode will embed all the needed Infrastructure Services (PostgreS
require any extra step.
The `development` profile includes the **Runtime Tools Quarkus Extension** that exposes a new section in the **Quarkus Dev-UI**
-unifying the **Management Console** & **Task Console** functionalities. **Quarkus Dev-UI** is available at http://localhost:8080/q/dev
+with the **Management Console** functionalities. **Quarkus Dev-UI** is available at http://localhost:8080/q/dev
> **_NOTE:_** For more information about how to work with Kogito Runtime Tools Quarkus Extension, please refer to the [Kogito Documentation](https://docs.kogito.kie.org/latest/html_single/#con-runtime-tools-dev-ui_kogito-developing-process-services) page.
diff --git a/kogito-quarkus-examples/ocp-tryout/kogito-task-console/deployment-patch.yaml b/kogito-quarkus-examples/process-kafka-persistence-quarkus/src/test/resources/application.properties
similarity index 54%
rename from kogito-quarkus-examples/ocp-tryout/kogito-task-console/deployment-patch.yaml
rename to kogito-quarkus-examples/process-kafka-persistence-quarkus/src/test/resources/application.properties
index f224569cb8..d0b6aa7199 100644
--- a/kogito-quarkus-examples/ocp-tryout/kogito-task-console/deployment-patch.yaml
+++ b/kogito-quarkus-examples/process-kafka-persistence-quarkus/src/test/resources/application.properties
@@ -17,26 +17,4 @@
# under the License.
#
-spec:
- template:
- spec:
- containers:
- - name: kogito-task-console
- env:
- - name: KOGITO_DATAINDEX_HTTP_URL
- valueFrom:
- configMapKeyRef:
- name: kogito-configs
- key: kogito.dataindex.httpurl.with.graphql
- - name: KOGITO_TASK_CONSOLE_PROPS
- valueFrom:
- configMapKeyRef:
- name: kogito-configs
- key: kogito.taskconsole.props
- resources:
- limits:
- cpu: '1'
- memory: 500Mi
- requests:
- cpu: 10m
- memory: 64Mi
\ No newline at end of file
+quarkus.kafka.devservices.image-name=${container.image.kafka}
\ No newline at end of file
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/README.md b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/README.md
index defb90fcf9..1ebac9f348 100644
--- a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/README.md
+++ b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/README.md
@@ -18,7 +18,6 @@ The required *Kogito and Infrastructure Services* for this example are:
- Kogito Data Index
- Kogito Jobs Service
- Kogito Management Console
-- Kogito Task Console
- Keycloak
## Running the Quickstart
@@ -63,13 +62,13 @@ You should start all the services before you execute any of the **Hiring** examp
3. Run the ```startServices.sh``` script
```bash
-sh ./startServices.sh
+./startServices.sh
```
or
```bash
-sh ./startServices.sh postgresql
+./startServices.sh postgresql
```
Once all services bootstrap, the following ports will be assigned on your local machine:
@@ -79,7 +78,6 @@ Once all services bootstrap, the following ports will be assigned on your local
- Data Index: 8180
- Jobs Service: 8580
- Management Console: 8280
-- Task Console: 8380
- Keycloak: 8480
- PgAdmin: 8055
@@ -157,7 +155,7 @@ You should start all the services before you execute any of the **Hiring** examp
3. Run the ```startServices.sh``` script with infinispan argument
```bash
-sh ./startServices.sh infinispan
+./startServices.sh infinispan
```
Once all services bootstrap, the following ports will be assigned on your local machine:
@@ -167,7 +165,6 @@ Once all services bootstrap, the following ports will be assigned on your local
- Data Index: 8180
- Jobs Service: 8580
- Management Console: 8280
-- Task Console: 8380
- Keycloak: 8480
> **_NOTE:_** This step requires the project to be compiled, please consider running a ```mvn clean install -Pinfinispan``` command on the project root before running the ```startServices.sh infinispan``` script for the first time or any time you modify the project.
@@ -216,7 +213,7 @@ mvn clean package -Pnative -Pinfinispan
To run the generated native executable, generated in `target/`, execute
```sh
-./target/./target/process-usertasks-timer-quarkus-with-console-runner
+./target/process-usertasks-timer-quarkus-with-console-runner
```
@@ -298,54 +295,6 @@ Job panel shows the job details related to the timer execution:
-### Execute IT Interview task at Kogito Task Console
-
-To access the Kogito Task Console just open your browser and navigate to ``http://localhost:8280``. You'll be redirected to the *Keycloak* log in page.
-
-
-
-
-
-Once there, log in using any of the users specified in the [Using Keycloak as Authentication Server](#using-keycloak-as-authentication-server)
-
-> **_NOTE:_** For more information about how to work with Kogito Task Console, please refer to the [Kogito Documentation](https://docs.jboss.org/kogito/release/latest/html_single/#con-task-console_kogito-developing-process-services) page.
-
-Access to Task Console again and verify IT Interview is available
-
-
-
-
-Access to IT Interview task, and complete.
-
-
-
-
-After complete the task, check the list of tasks show both completed tasks
-
-
-
-
-Check the process instance details to verify the instance have been completed
-
-
-
-
-
-Jobs can be accessed in two ways on Management console:
-
-You can navigate to the process details page which has a dedicated panel showing a list of jobs associated with the process instance.
-
-You can also check the list of all the jobs available by navigating to the Jobs section.
-
-
-
-
-
-Let's verify the HR interview has been avoided looking at application logs.
-
-
-
-
### Submit a new request to start new hiring
In a Terminal you can execute this command to start a **Hiring** process for the "Jon Snow" candidate:
@@ -361,38 +310,3 @@ curl -H "Content-Type: application/json" -H "Accept: application/json" -X POST h
}
EOF
```
-
-### Execute HR Interview task before timer expires at Kogito Task Console
-
-Access the Kogito Task Console.
-
-
-
-
-
-Access to HR Interview task and complete
-
-
-
-
-
-Check the process instance details at Kogito Management Console to see the execution path reflects the completed task
-
-
-
-
-
-Verify the job associated is displayed as cancelled regarding the HR Interview Task has been completed.
-
-Execute IT Interview task as it was described before, and access to the process instance details and see that it has been completed.
-
-
-
-
-
-Finally, verify the HR interview has been completed by looking at application logs.
-
-
-
-
-
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/README.md b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/README.md
index e27086f90d..55c93d3df6 100644
--- a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/README.md
+++ b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/README.md
@@ -7,7 +7,6 @@ To allow a quick setup of all services required to run this demo, we provide a d
- Kogito Data Index
- Kogito Jobs
- Kogito Management Console
-- Kogito Task Console
- Keycloak
In order to use it, please ensure you have Docker Compose installed on your machine, otherwise follow the instructions available
@@ -22,7 +21,6 @@ Once all services bootstrap, the following ports will be assigned on your local
- Data Index: 8180
- Jobs: 8580
- Management Console: 8280
-- Task Console: 8380
- Keycloak: 8480
### Postgresql deployment:
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/docker-compose-infinispan.yml b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/docker-compose-infinispan.yml
index c57fe3f3d3..f5faf3ac0c 100755
--- a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/docker-compose-infinispan.yml
+++ b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/docker-compose-infinispan.yml
@@ -138,21 +138,6 @@ services:
volumes:
- ./svg/:/home/kogito/data/svg/
environment:
- KOGITO_DATAINDEX_HTTP_URL: http://${DOCKER_GATEWAY_HOST:-host.docker.internal}:8180/graphql
+ KOGITO_DATAINDEX_HTTP_URL: http://127.0.0.1:8180/graphql
QUARKUS_HTTP_CORS_ORIGINS: "/.*/"
KOGITO_MANAGEMENT_CONSOLE_PROPS: -Dkogito.consoles.keycloak.config.url=http://localhost:8480/auth -Dkogito.consoles.keycloak.config.health-check-url=http://localhost:8480/auth/realms/kogito/.well-known/openid-configuration -Dkogito.svg.folder.path=/home/kogito/data/svg
-
- task-console:
- container_name: task-console
- image: quay.io/kiegroup/kogito-task-console:${KOGITO_VERSION}
- ports:
- - 8380:8080
- depends_on:
- data-index:
- condition: service_started
- keycloak:
- condition: service_healthy
- environment:
- KOGITO_DATAINDEX_HTTP_URL: http://${DOCKER_GATEWAY_HOST:-host.docker.internal}:8180/graphql
- QUARKUS_HTTP_CORS_ORIGINS: "/.*/"
- KOGITO_TASK_CONSOLE_PROPS: -Dkogito.consoles.keycloak.config.url=http://localhost:8480/auth -Dkogito.consoles.keycloak.config.health-check-url=http://localhost:8480/auth/realms/kogito/.well-known/openid-configuration
\ No newline at end of file
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/docker-compose-postgresql.yml b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/docker-compose-postgresql.yml
index e7055af034..743179f92d 100755
--- a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/docker-compose-postgresql.yml
+++ b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/docker-compose-postgresql.yml
@@ -175,26 +175,9 @@ services:
- ../target/classes/META-INF/processSVG/:/home/kogito/data/svg/
environment:
RUNTIME_TOOLS_MANAGEMENT_CONSOLE_KOGITO_ENV_MODE: "PROD"
- RUNTIME_TOOLS_MANAGEMENT_CONSOLE_DATA_INDEX_ENDPOINT: http://${DOCKER_GATEWAY_HOST:-host.docker.internal}:8180/graphql
+ RUNTIME_TOOLS_MANAGEMENT_CONSOLE_DATA_INDEX_ENDPOINT: http://127.0.0.1:8180/graphql
KOGITO_CONSOLES_KEYCLOAK_HEALTH_CHECK_URL: http://localhost:8480/auth/realms/kogito/.well-known/openid-configuration
KOGITO_CONSOLES_KEYCLOAK_URL: http://localhost:8480/auth
KOGITO_CONSOLES_KEYCLOAK_REALM: kogito
KOGITO_CONSOLES_KEYCLOAK_CLIENT_ID: kogito-console-quarkus
- task-console:
- container_name: task-console
- image: docker.io/apache/incubator-kie-kogito-task-console:${KOGITO_VERSION}
- ports:
- - "8380:8080"
- depends_on:
- data-index:
- condition: service_started
- keycloak:
- condition: service_healthy
- environment:
- RUNTIME_TOOLS_TASK_CONSOLE_KOGITO_ENV_MODE: "PROD"
- RUNTIME_TOOLS_TASK_CONSOLE_DATA_INDEX_ENDPOINT: http://${DOCKER_GATEWAY_HOST:-host.docker.internal}:8180/graphql
- KOGITO_CONSOLES_KEYCLOAK_HEALTH_CHECK_URL: http://localhost:8480/auth/realms/kogito/.well-known/openid-configuration
- KOGITO_CONSOLES_KEYCLOAK_URL: http://localhost:8480/auth
- KOGITO_CONSOLES_KEYCLOAK_REALM: kogito
- KOGITO_CONSOLES_KEYCLOAK_CLIENT_ID: kogito-console-quarkus
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/keycloak/kogito-realm.json b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/keycloak/kogito-realm.json
index fd3cdc0942..80e06bd07e 100644
--- a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/keycloak/kogito-realm.json
+++ b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docker-compose/keycloak/kogito-realm.json
@@ -816,15 +816,14 @@
},
{
"clientId": "kogito-console-quarkus",
- "rootUrl": "http://localhost:8380",
- "adminUrl": "http://localhost:8380/",
- "baseUrl": "http://localhost:8380/",
+ "rootUrl": "http://localhost:8280",
+ "adminUrl": "http://localhost:8280/",
+ "baseUrl": "http://localhost:8280/",
"surrogateAuthRequired": false,
"enabled": true,
"clientAuthenticatorType": "client-secret",
"secret": "**********",
"redirectUris": [
- "http://localhost:8380/*",
"http://localhost:8280/*"
],
"webOrigins": [
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/HR_interview_avoided_logs.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/HR_interview_avoided_logs.png
deleted file mode 100644
index 944f76845e..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/HR_interview_avoided_logs.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/HR_interview_completed_logs.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/HR_interview_completed_logs.png
deleted file mode 100644
index adf43b6fa5..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/HR_interview_completed_logs.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/HR_task.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/HR_task.png
deleted file mode 100644
index 12383edd0f..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/HR_task.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/IT_task.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/IT_task.png
deleted file mode 100644
index 6ce6fc19a8..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/IT_task.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/JobsManagement.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/JobsManagement.png
deleted file mode 100644
index c3f98b3be6..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/JobsManagement.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/MC_details_3_completed_executed_job.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/MC_details_3_completed_executed_job.png
deleted file mode 100644
index ca32022548..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/MC_details_3_completed_executed_job.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/MC_details_4_IT_no_job.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/MC_details_4_IT_no_job.png
deleted file mode 100644
index c2ebdc419e..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/MC_details_4_IT_no_job.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/MC_details_5_completed_no_job.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/MC_details_5_completed_no_job.png
deleted file mode 100644
index 2998f97725..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/MC_details_5_completed_no_job.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/TC_listHR.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/TC_listHR.png
deleted file mode 100644
index 21681f7a18..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/TC_listHR.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/TC_listIT.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/TC_listIT.png
deleted file mode 100644
index 3dfc84b0d5..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/TC_listIT.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/TC_listIT_completed.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/TC_listIT_completed.png
deleted file mode 100644
index 254d408ca8..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/TC_listIT_completed.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/keycloak-login.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/keycloak-login.png
deleted file mode 100644
index 58d85f1f43..0000000000
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/keycloak-login.png and /dev/null differ
diff --git a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/services.png b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/services.png
index 1836390cee..ce0c469432 100644
Binary files a/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/services.png and b/kogito-quarkus-examples/process-usertasks-timer-quarkus-with-console/docs/images/services.png differ
diff --git a/kogito-springboot-examples/pom.xml b/kogito-springboot-examples/pom.xml
index 9a82da6b9a..70e8cbcb48 100644
--- a/kogito-springboot-examples/pom.xml
+++ b/kogito-springboot-examples/pom.xml
@@ -68,6 +68,7 @@
onboarding-springboot
pmml-event-driven-springboot
pmml-springboot-example
+ process-business-calendar-springboot-example
process-business-rules-springboot
process-decisions-rest-springboot
process-decisions-rules-springboot
@@ -116,6 +117,7 @@
flexible-process-springboot
pmml-event-driven-springboot
pmml-springboot-example
+ process-business-calendar-springboot-example
process-business-rules-springboot
process-infinispan-persistence-springboot
process-kafka-multi-springboot
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/README.md b/kogito-springboot-examples/process-business-calendar-springboot-example/README.md
new file mode 100644
index 0000000000..916481386e
--- /dev/null
+++ b/kogito-springboot-examples/process-business-calendar-springboot-example/README.md
@@ -0,0 +1,278 @@
+# Process Business Calendar Example
+
+This example demonstrates the impact of a business calendar on process execution within a Springboot application. It showcases a business process involving credit card bill processing, which adapts to a business calendar defined in calendar.properties. This configuration modifies timer behaviors to respect working hours, holidays, and other schedule-based constraints.
+
+### Main Components
+
+**BPMN2-BusinessCalendarBankTransaction.bpmn2**:
+Defines the workflow for processing credit card transactions.
+Includes tasks such as processing the credit bill, verifying payment, handling timers, cancelling and bill settlement.
+
+**CreditCardService.java**:
+Implements the logic for handling credit card payment processes.
+
+**calendar.properties**:
+Configures business hours, holidays, and other calendar properties that affect scheduling and timer behavior.
+
+### BPMN Process Details
+
+The BPMN model (`BPMN2-BusinessCalendarBankTransaction.bpmn2`) defines a workflow that includes the following main elements:
+
+
+### Start Event
+
+The initial trigger that starts the credit card bill processing workflow.
+
+### Process Credit Bill
+* Process Credit Bill Properties (Top)
+
+
+* Process Credit Card Bill Assignments
+
+
+### Verify Payment
+A user task where the credit card details are validated, ensuring the payment is processed under valid terms.
+
+* Verify Payment
+
+
+### Timer
+
+Attached to a user task to simulate waiting for manual confirmation or user action. This timer can be configured to react differently based on the presence of the business calendar.
+
+
+### Cancel Payment
+Executed if the timer expires without human action, leading to the cancellation of the payment process.
+
+* Cancel Payment (Top)
+
+
+* Cancel Payment Assignments
+
+
+### Settle Payment
+
+The final step where the payment is settled successfully on manual verification.
+
+* Settle Payment (Top)
+
+
+* Settle Payment Assignments
+
+
+## Build and run
+
+### Prerequisites
+
+You will need:
+- Java 17+ installed
+- Environment variable JAVA_HOME set accordingly
+- Maven 3.9.6+ installed
+
+### Compile and Run in Local Dev Mode
+
+```sh
+mvn clean compile spring-boot:run
+```
+
+
+### Package and Run using uberjar
+
+```sh
+mvn clean package
+```
+
+To run the generated native executable, generated in `target/`, execute
+
+```sh
+java -jar target/process-business-rules-springboot.jar
+```
+
+### OpenAPI (Swagger) documentation
+[Specification at swagger.io](https://swagger.io/docs/specification/about/)
+
+You can take a look at the [OpenAPI definition](http://localhost:8080/v3/api-docs) - automatically generated and included in this service - to determine all available operations exposed by this service. For easy readability you can visualize the OpenAPI definition file using a UI tool like for example available [Swagger UI](https://editor.swagger.io).
+
+In addition, various clients to interact with this service can be easily generated using this OpenAPI definition.
+
+## Example Usage
+
+Once the service is up and running we can invoke the REST endpoints and examine the logic.
+
+### To start the process
+
+```sh
+curl -X POST http://localhost:8080/BusinessCalendarCreditBill \
+-H "Content-Type: application/json" \
+-d '{"creditCardNumber": null, "creditCardDetails": {"cardNumber": "434353433", "status": "Bill Due"}}'
+```
+
+### To retrieve instances
+
+```sh
+curl -X GET http://localhost:8080/BusinessCalendarCreditBill \
+-H "Content-Type: application/json" \
+-H "Accept: application/json"
+```
+### To retrieve status of particular instance using id
+
+```sh
+curl -X GET http://localhost:8080/BusinessCalendarCreditBill/{id} \
+-H "Content-Type: application/json" \
+-H "Accept: application/json"
+```
+
+## Understanding calendar.properties
+**Default Behavior**: If you do not input custom values in a calendar.properties file, the system will use the following default settings:
+
+* **business.days.per.week** defaults to 5, meaning only Monday to Friday are considered working days.
+
+* **business.hours.per.day** defaults to 8, representing an 8-hour workday.
+
+* **business.start.hour** defaults to 9, and business.end.hour defaults to 17 (i.e.,9 AM to 5 PM workday).
+
+* **business.weekend.days** defaults to Saturday and Sunday (Sunday-1, Monday-2, Tuesday-3, Wednesday-4, Thursday-5, Friday-6, Saturday-7).
+
+* **business.holiday.date.format** defaults to yyyy-MM-dd, (input must match format defined format).
+
+* **business.holidays** by default will be considered empty, meaning no predefined holidays unless specified, if specified, it should be in the format defined by business.holiday.date.format, Holidays can be specified as individual dates (e.g., 2024-12-25,2024-12-31) or as a range of dates (e.g., 2024-11-12:2024-11-14).
+
+* **business.cal.timezone** defaults to the system’s default timezone, if configured, valid time-zone as per Valid timezone as per https://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html should be specfied.
+
+**Behavior**:
+* Considering the default properties as mentioned above, if a task is executed after working hours i.e., non-working hours (e.g., at 7 PM), the system will delay its execution until the start of the next working hour/working day (9 AM). For example, if a task timer is set to trigger at 7 PM on a Friday, it will not execute until 9 AM on Monday (assuming a standard 5-day workweek).
+* If a task becomes due or is scheduled to start outside business hours, it will remain in a pending state until business hours resume.
+* If the business calendar is configured with a 5-day workweek (business.days.per.week=5), any tasks scheduled over the weekend will not resume until the following Monday at the start of business hours.
+
+
+## Configuring Custom Calendar.Properties
+### Note: Important Guidelines for Configuring `calendar.properties`
+To override default values, configure calendar.properties file based on requirements. In order to ensure more aligned functionality, please follow the rules outlined below. Adhering to these guidelines will help ensure that tasks are executed as expected. Incorrect configurations may result in unintended behavior, so it's recommended to input accurate values.
+
+| Property | Valid Range | Description |
+|------------------------------|------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `business.start.hour` | 0-23 | Start hour of the workday |
+| `business.end.hour` | 0-23 | End hour of the workday |
+| `business.hours.per.day` | 1-24 | Total working hours in a day |
+| `business.days.per.week` | 1-7 | Total working days per week |
+| `business.weekend.days` | 0-7 | Days considered as weekends (e.g., 1 = Sunday, 7 = Saturday). In case you want to consider all the days as working days i.e., no weekend days, input 0 as value considering working days as 7. |
+| `business.holiday.date.format` | (yyyy-MM-dd) | List of holidays |
+| `business.holidays` | Dates aligned with business.holiday.date.format | Date format for holidays |
+| `business.cal.timezone` | Valid timezone as per [Java TimeZone Documentation](https://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html) | Timezone for calculations |
+
+### Example of custom calendar.properties
+```Properties
+business.end.hour=23
+business.hours.per.day=24
+business.start.hour=0
+business.holiday.date.format=yyyy-MM-dd
+business.holidays=2024-10-30
+business.days.per.week=5
+business.weekend.days=6,7
+business.cal.timezone=America/Toronto
+```
+**Behavior**:
+* **Tasks within working hours**: When a task or timer is scheduled within the defined working hours (e.g., between business.start.hour=0 and business.end.hour=24), the task will be completed immediately once it becomes due. For example, if a task is scheduled to trigger at 10 AM on a Tuesday, and your working hours are from 0 to 24, the task will execute as expected at 10 AM.
+* **Handling custom working days**: If calendar.properties file specifies business.days.per.week=6, the system will treat these days as working days, tasks scheduled on any of these days will be processed during the defined working hours. For example, if a task is due at 10 AM on Saturday, and you’ve configured Saturday as a working day, the task will execute as completed.
+* **Weekend handling**: Even if a task is executed within the defined working hours, it will be delayed if it falls on a configured weekend. For example, if you have business.days.per.week =5 and business.weekend.days=6,7 the task will not execute on the weekend days mentioned. Instead, it will be postponed to the next working day at the defined business.start.hour. This ensures that no tasks are executed on days that are considered holidays, even if they fall within regular business hours.
+* **Holiday handling**: if a task is executed within the defined working hours, it will be delayed if it falls on a configured holiday. For example, if you have business.holdays = 2024-10-30 and a task is executed on the same day in a working hour, it will not execute, instead it will be postponed to the next working day at the defined business.start.hour. This ensures that no tasks are executed on days that are considered holidays, even if they fall within regular business hours.
+* **Timezone**: If you specify a timezone using business.cal.timezone, the calendar will adjust all scheduling based on this timezone, regardless of system time else systems time will be considered.
+
+## Testing with default calendar.properties (working hours)
+**Note**: The test was performed at 16:13 on Monday, which falls under default working hours
+
+* The timer for the Verify Payment task will follow a straightforward countdown based on real time. If the specified time elapses i.e., 1 second, it immediately moves to cancel payment task.
+
+* POST/ BusinessCalendarCreditBill
+```sh
+curl -X POST http://localhost:8080/BusinessCalendarCreditBill \
+-H "Content-Type: application/json" \
+-d '{"creditCardNumber": null, "creditCardDetails": {"cardNumber": "434353433", "status": "Bill Due"}}'
+
+```
+
+
+* After 1 second when we send request for GET/ BusinessCalendarCreditBill again we get empty array representing the cancellation.
+```sh
+curl -X GET http://localhost:8080/BusinessCalendarCreditBill \
+-H "Content-Type: application/json" \
+-H "Accept: application/json"
+
+```
+
+
+### Example of logs representing the process from start to completion
+
+
+* At 16:13:20,606, job 18e97326-897b-4f1b-8121-b09ea9eb37d7 was started, indicating that the timer was triggered approximately after one second as expected.
+
+## Testing with default calendar.properties (non-working hours)
+**Note**: The test was performed at 08:27 on Monday, which does not fall in the default working hours range
+
+* During non-working hours, the timer for the Verify Payment task will not trigger and the process remains in active state, does not move to cancel payment task.
+
+* POST/ BusinessCalendarCreditBill
+```sh
+curl -X POST http://localhost:8080/BusinessCalendarCreditBill \
+-H "Content-Type: application/json" \
+-d '{"creditCardNumber": null, "creditCardDetails": {"cardNumber": "434353433", "status": "Bill Due"}}'
+```
+
+
+
+* GET/ BusinessCalendarCreditBill
+```sh
+curl -X GET http://localhost:8080/BusinessCalendarCreditBill \
+-H "Content-Type: application/json" \
+-H "Accept: application/json"
+```
+* Now, even after 1 second, the process will be in Active State but not completed state.
+
+
+
+### Example of logs representing the active state during non-working hours
+
+
+
+## Testing with calendar.properties (During non-working hours/Specified Holiday)
+**Note**: The test was performed considering 24-hour workday properties with configured holiday i.e., business.holidays=2024-11-07
+
+* After calendar.properties file is added, build the example again "mvn clean compile quarkus:dev" or type 's' in the quarkus terminal and hit enter just to restart.
+
+* POST/ BusinessCalendarCreditBill
+```sh
+curl -X POST http://localhost:8080/BusinessCalendarCreditBill \
+-H "Content-Type: application/json" \
+-d '{"creditCardNumber": null, "creditCardDetails": {"cardNumber": "434353433", "status": "Bill Due"}}'
+```
+
+
+
+* GET/ BusinessCalendarCreditBill
+```sh
+curl -X GET http://localhost:8080/BusinessCalendarCreditBill \
+-H "Content-Type: application/json" \
+-H "Accept: application/json"
+```
+* Now, even after 1 second, the process will be in Active State.
+
+
+
+### Example of logs representing the active state during non-working hours/specified holiday
+
+
+
+* The node 'Start' for the process 'BusinessCalendarCreditBill', identified by 08ea5258-9d91-4f05-a8d8-184107c042ed, was triggered at 08:54:28,621.
+
+* At 08:54:28,629, the 'Process Credit Bill' node was activated.
+
+* At 08:54:28,653, verification step through the 'Verify Payment' node was started.
+
+* Subsequently, a human task was registered at 08:54:28,773.
+
+* The workflow transitioned to an 'Active' state at 08:54:28,808.
+
+* Due to mentioned "business.holidays property" in calendar.properties, timer does not trigger and the state remains active.
+
+* On next business day, timer will resume at the beginning of the next working hour/day, after the non-working hour/holiday has ended. The timer is set to fire after one second of active business time.
+
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/CancelPaymentAssign.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/CancelPaymentAssign.png
new file mode 100644
index 0000000000..9306de7df6
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/CancelPaymentAssign.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/CancelPaymentTop.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/CancelPaymentTop.png
new file mode 100644
index 0000000000..4ad4b8cb53
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/CancelPaymentTop.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/CreditCardModel.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/CreditCardModel.png
new file mode 100644
index 0000000000..c05c5e3e37
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/CreditCardModel.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Get1.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Get1.png
new file mode 100644
index 0000000000..936601bd78
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Get1.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Get2.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Get2.png
new file mode 100644
index 0000000000..ed77865a27
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Get2.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Get3.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Get3.png
new file mode 100644
index 0000000000..d1888c96c9
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Get3.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Post1.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Post1.png
new file mode 100644
index 0000000000..04686a9e71
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Post1.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Post2.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Post2.png
new file mode 100644
index 0000000000..610d6b040e
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Post2.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Post3.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Post3.png
new file mode 100644
index 0000000000..fed2c0c92e
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Post3.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/ProcessCreditBillAssign.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/ProcessCreditBillAssign.png
new file mode 100644
index 0000000000..05b50c61ab
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/ProcessCreditBillAssign.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/ProcessCreditBillTop.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/ProcessCreditBillTop.png
new file mode 100644
index 0000000000..97594f6d0d
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/ProcessCreditBillTop.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/SettlePaymentAssign.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/SettlePaymentAssign.png
new file mode 100644
index 0000000000..b3f5b205da
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/SettlePaymentAssign.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/SettlePaymentTop.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/SettlePaymentTop.png
new file mode 100644
index 0000000000..3f23e21187
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/SettlePaymentTop.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Timer.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Timer.png
new file mode 100644
index 0000000000..036c23649e
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/Timer.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/VerifyPayment.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/VerifyPayment.png
new file mode 100644
index 0000000000..5c40e3d571
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/VerifyPayment.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/WithPropertiesLogs.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/WithPropertiesLogs.png
new file mode 100644
index 0000000000..cfa3d7c0ec
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/WithPropertiesLogs.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/WithoutPropertiesLogs.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/WithoutPropertiesLogs.png
new file mode 100644
index 0000000000..ccfc797af4
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/WithoutPropertiesLogs.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/WithoutPropertiesLogsNW.png b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/WithoutPropertiesLogsNW.png
new file mode 100644
index 0000000000..fb73b2d62c
Binary files /dev/null and b/kogito-springboot-examples/process-business-calendar-springboot-example/docs/images/WithoutPropertiesLogsNW.png differ
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/pom.xml b/kogito-springboot-examples/process-business-calendar-springboot-example/pom.xml
new file mode 100644
index 0000000000..2845db14d4
--- /dev/null
+++ b/kogito-springboot-examples/process-business-calendar-springboot-example/pom.xml
@@ -0,0 +1,88 @@
+
+
+ 4.0.0
+
+ org.kie.kogito.examples
+ kogito-springboot-examples
+ 999-SNAPSHOT
+
+
+ Kogito Example :: Process Business Calendar Spring Boot
+ process-business-calendar-springboot-example
+ Kogito business calendar usage - Spring Boot
+
+
+ 999-SNAPSHOT
+ 999-SNAPSHOT
+
+
+
+
+
+ org.kie.kogito
+ kogito-spring-boot-bom
+ ${kogito.bom.version}
+ pom
+ import
+
+
+
+
+
+
+ org.jbpm
+ jbpm-spring-boot-starter
+
+
+
+ org.springframework.boot
+ spring-boot-starter-actuator
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+ io.rest-assured
+ rest-assured
+ test
+
+
+
+
+ ${project.artifactId}
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+ ${version.org.springframework.boot}
+
+
+
+ repackage
+
+
+
+
+
+ org.kie.kogito
+ kogito-maven-plugin
+ ${version.org.kie.kogito}
+
+
+ compile
+
+ generateModel
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/java/org/kie/kogito/calendar/KogitoSpringbootApplication.java b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/java/org/kie/kogito/calendar/KogitoSpringbootApplication.java
new file mode 100644
index 0000000000..93c67c6149
--- /dev/null
+++ b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/java/org/kie/kogito/calendar/KogitoSpringbootApplication.java
@@ -0,0 +1,31 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.kie.kogito.calendar;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+@SpringBootApplication(scanBasePackages = { "org.kie.kogito.app.**", "org.kie.kogito.calendar.**", "org.kie.kogito.**", "http**" })
+public class KogitoSpringbootApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(KogitoSpringbootApplication.class, args);
+ }
+
+}
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardDetails.java b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardDetails.java
new file mode 100644
index 0000000000..011beebf20
--- /dev/null
+++ b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardDetails.java
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.kie.kogito.calendar.bill;
+
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+@JsonIgnoreProperties(ignoreUnknown = true)
+public class CreditCardDetails {
+ private String cardNumber;
+ private String status = "Bill Due";
+
+ public CreditCardDetails() {
+ }
+
+ public CreditCardDetails(String cardNumber) {
+ this.cardNumber = cardNumber;
+ }
+
+ public String getCardNumber() {
+ return cardNumber;
+ }
+
+ public String getStatus() {
+ return status;
+ }
+
+ public void setCardNumber(String cardNumber) {
+ this.cardNumber = cardNumber;
+ }
+
+ public void setStatus(String status) {
+ this.status = status;
+ }
+}
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardService.java b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardService.java
new file mode 100644
index 0000000000..aa211c6d6a
--- /dev/null
+++ b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/java/org/kie/kogito/calendar/bill/CreditCardService.java
@@ -0,0 +1,50 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.kie.kogito.calendar.bill;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.config.ConfigurableBeanFactory;
+import org.springframework.context.annotation.Scope;
+import org.springframework.stereotype.Component;
+
+@Component
+@Scope(value = ConfigurableBeanFactory.SCOPE_SINGLETON)
+public class CreditCardService {
+
+ private Logger logger = LoggerFactory.getLogger(CreditCardService.class);
+
+ public CreditCardDetails processCreditBill(String creditCardNumber) {
+ logger.info("Paying credit card");
+ return new CreditCardDetails(creditCardNumber);
+ }
+
+ public CreditCardDetails settleBill(CreditCardDetails creditCardDetails) {
+ creditCardDetails.setStatus("Bill paid");
+ logger.info("settling bill");
+ return creditCardDetails;
+ }
+
+ public CreditCardDetails cancelPayment(CreditCardDetails creditCardDetails) {
+ creditCardDetails.setStatus("Payment cancelled, money will be refunded if it is debited");
+ logger.info("cancelling bill");
+ return creditCardDetails;
+ }
+}
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/resources/application.properties b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/resources/application.properties
new file mode 100644
index 0000000000..c17c39f905
--- /dev/null
+++ b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/resources/application.properties
@@ -0,0 +1,20 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+server.address=0.0.0.0
+server.port=8080
\ No newline at end of file
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/resources/calendar.properties b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/resources/calendar.properties
new file mode 100644
index 0000000000..eddf031d2c
--- /dev/null
+++ b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/resources/calendar.properties
@@ -0,0 +1,25 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+business.end.hour=23
+business.hours.per.day=24
+business.start.hour=0
+business.holiday.date.format=yyyy-MM-dd
+business.holidays=2024-11-07
+business.days.per.week=6
+business.weekend.days=1
+
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/resources/org/kie/kogito/calendar/bill/BPMN2-BusinessCalendarBankTransaction.bpmn2 b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/resources/org/kie/kogito/calendar/bill/BPMN2-BusinessCalendarBankTransaction.bpmn2
new file mode 100644
index 0000000000..c26518955c
--- /dev/null
+++ b/kogito-springboot-examples/process-business-calendar-springboot-example/src/main/resources/org/kie/kogito/calendar/bill/BPMN2-BusinessCalendarBankTransaction.bpmn2
@@ -0,0 +1,359 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ _9726CC54-817D-4EBD-BC63-A3DBED0183A5_InMessage
+ _9726CC54-817D-4EBD-BC63-A3DBED0183A5_OutMessage
+
+
+
+
+
+
+ _D350DC2A-D283-4357-9B87-3E295C348D50_InMessage
+ _D350DC2A-D283-4357-9B87-3E295C348D50_OutMessage
+
+
+
+
+
+
+ _049D6ACC-0D5B-4C91-9382-D5B8417F3902_InMessage
+ _049D6ACC-0D5B-4C91-9382-D5B8417F3902_OutMessage
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ _3319AF07-1259-4E0B-95FB-4D7439C2D1BB
+ _445DAFA9-C397-4051-B9A4-13673ACB2857
+
+
+
+
+ _049D6ACC-0D5B-4C91-9382-D5B8417F3902_creditCardDetailsInputX
+
+
+ _049D6ACC-0D5B-4C91-9382-D5B8417F3902_resultOutputX
+
+
+
+ creditCardDetails
+ _049D6ACC-0D5B-4C91-9382-D5B8417F3902_creditCardDetailsInputX
+
+
+ _049D6ACC-0D5B-4C91-9382-D5B8417F3902_resultOutputX
+ creditCardDetails
+
+
+
+ _E15E86A8-BF0E-400F-8147-9CDCA638DBF6
+
+
+
+
+
+
+
+
+ _1EA09C74-739D-41E1-A05A-E3C34942E6D2
+ _3319AF07-1259-4E0B-95FB-4D7439C2D1BB
+
+
+
+
+ _C10EDD5D-0C5F-4ADB-9B85-28D3B9C7D2A7_TaskNameInputX
+ _C10EDD5D-0C5F-4ADB-9B85-28D3B9C7D2A7_SkippableInputX
+
+
+
+ _C10EDD5D-0C5F-4ADB-9B85-28D3B9C7D2A7_TaskNameInputX
+
+
+
+
+
+
+ _C10EDD5D-0C5F-4ADB-9B85-28D3B9C7D2A7_SkippableInputX
+
+
+
+
+
+
+
+
+
+
+
+
+ _A60B1BA8-2BCB-4765-8C9C-EFFCA75D8CA9
+ _E15E86A8-BF0E-400F-8147-9CDCA638DBF6
+
+
+
+
+ _D350DC2A-D283-4357-9B87-3E295C348D50_creditCardDetailsInputX
+
+
+ _D350DC2A-D283-4357-9B87-3E295C348D50_resultOutputX
+
+
+
+ creditCardDetails
+ _D350DC2A-D283-4357-9B87-3E295C348D50_creditCardDetailsInputX
+
+
+ _D350DC2A-D283-4357-9B87-3E295C348D50_resultOutputX
+ creditCardDetails
+
+
+
+
+
+
+
+
+ _BD039EC9-BD1C-44EB-8DB7-347E412D0F7A
+ _1EA09C74-739D-41E1-A05A-E3C34942E6D2
+
+
+
+
+ _9726CC54-817D-4EBD-BC63-A3DBED0183A5_creditCardNumberInputX
+
+
+ _9726CC54-817D-4EBD-BC63-A3DBED0183A5_responseOutputX
+
+
+
+ _9726CC54-817D-4EBD-BC63-A3DBED0183A5_creditCardNumberInputX
+
+
+
+
+
+
+ _9726CC54-817D-4EBD-BC63-A3DBED0183A5_responseOutputX
+ creditCardDetails
+
+
+
+ _BD039EC9-BD1C-44EB-8DB7-347E412D0F7A
+
+
+ _445DAFA9-C397-4051-B9A4-13673ACB2857
+
+
+ _A60B1BA8-2BCB-4765-8C9C-EFFCA75D8CA9
+
+ PT1S
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ _qtlLMHyCED2WA6aH6h3CCg
+ _qtlLMHyCED2WA6aH6h3CCg
+
+
\ No newline at end of file
diff --git a/kogito-springboot-examples/process-business-calendar-springboot-example/src/test/java/org/kie/kogito/calendar/CreditCardProcessIT.java b/kogito-springboot-examples/process-business-calendar-springboot-example/src/test/java/org/kie/kogito/calendar/CreditCardProcessIT.java
new file mode 100644
index 0000000000..2d795c96a2
--- /dev/null
+++ b/kogito-springboot-examples/process-business-calendar-springboot-example/src/test/java/org/kie/kogito/calendar/CreditCardProcessIT.java
@@ -0,0 +1,97 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.kie.kogito.calendar;
+
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.kie.kogito.process.ProcessConfig;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.boot.test.web.server.LocalServerPort;
+import org.springframework.test.annotation.DirtiesContext;
+import org.springframework.test.context.junit.jupiter.SpringExtension;
+
+import io.restassured.RestAssured;
+import io.restassured.http.ContentType;
+
+import static io.restassured.RestAssured.given;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.hamcrest.Matchers.equalTo;
+import static org.hamcrest.Matchers.is;
+import static org.hamcrest.Matchers.notNullValue;
+
+@ExtendWith(SpringExtension.class)
+@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT, classes = KogitoSpringbootApplication.class)
+@DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_EACH_TEST_METHOD) // reset spring context after each test method
+public class CreditCardProcessIT {
+
+ private static final String PROCESS_ID = "BusinessCalendarCreditBill";
+ private static final String CARD_NUMBER = "434354343";
+
+ @LocalServerPort
+ private int port;
+
+ @Autowired
+ ProcessConfig processConfig;
+
+ @BeforeEach
+ public void setUp() {
+ RestAssured.port = port;
+ }
+
+ @Test
+ public void testCardPaymentInWorkingDay() throws Exception {
+ String id = given()
+ .contentType(ContentType.JSON)
+ .body("{}")
+ .when()
+ .post("/" + PROCESS_ID)
+ .then()
+ .statusCode(201)
+ .body("id", notNullValue())
+ .body("creditCardDetails.cardNumber", is(CARD_NUMBER))
+ .body("creditCardDetails.status", is("Bill Due"))
+ .extract()
+ .path("id");
+
+ Thread.sleep(2000);
+ BusinessCalendar businessCalendar = processConfig.getBusinessCalendar();
+ assertThat(businessCalendar).isNotNull();
+ long timeDuration = businessCalendar.calculateBusinessTimeAsDuration("1s");
+ if (timeDuration > 1000L) {
+ given()
+ .when()
+ .get("/" + PROCESS_ID + "/" + id)
+ .then()
+ .statusCode(200)
+ .body("id", is(id))
+ .body("creditCardDetails.cardNumber", is(CARD_NUMBER))
+ .body("creditCardDetails.status", is("Bill Due"));
+ } else {
+ given()
+ .when()
+ .get("/" + PROCESS_ID)
+ .then()
+ .statusCode(200)
+ .body(equalTo("[]"));
+ }
+
+ }
+}
diff --git a/pom.xml b/pom.xml
index 1626279866..fba27c9a93 100755
--- a/pom.xml
+++ b/pom.xml
@@ -410,6 +410,11 @@
org.apache.maven.plugins
maven-failsafe-plugin
+
+
+ ${container.image.kafka}
+
+
diff --git a/serverless-workflow-examples/serverless-workflow-callback-quarkus/pom.xml b/serverless-workflow-examples/serverless-workflow-callback-quarkus/pom.xml
index ea2d5d4bf8..0624ec72db 100644
--- a/serverless-workflow-examples/serverless-workflow-callback-quarkus/pom.xml
+++ b/serverless-workflow-examples/serverless-workflow-callback-quarkus/pom.xml
@@ -154,6 +154,7 @@
org.jboss.logmanager.LogManager
${maven.home}
+ ${container.image.kafka}
diff --git a/serverless-workflow-examples/serverless-workflow-callback-quarkus/src/test/resources/application.properties b/serverless-workflow-examples/serverless-workflow-callback-quarkus/src/test/resources/application.properties
index aa62062ff2..f88d69af54 100644
--- a/serverless-workflow-examples/serverless-workflow-callback-quarkus/src/test/resources/application.properties
+++ b/serverless-workflow-examples/serverless-workflow-callback-quarkus/src/test/resources/application.properties
@@ -21,3 +21,5 @@ quarkus.kogito.devservices.enabled=false
kie.flyway.enabled=true
quarkus.datasource.db-kind=postgresql
+
+quarkus.kafka.devservices.image-name=${container.image.kafka}
\ No newline at end of file
diff --git a/serverless-workflow-examples/serverless-workflow-correlation-quarkus-mongodb/pom.xml b/serverless-workflow-examples/serverless-workflow-correlation-quarkus-mongodb/pom.xml
index 07e78a31dc..09c9abff84 100644
--- a/serverless-workflow-examples/serverless-workflow-correlation-quarkus-mongodb/pom.xml
+++ b/serverless-workflow-examples/serverless-workflow-correlation-quarkus-mongodb/pom.xml
@@ -146,6 +146,7 @@
org.jboss.logmanager.LogManager
${maven.home}
+ ${container.image.kafka}
diff --git a/serverless-workflow-examples/serverless-workflow-correlation-quarkus-mongodb/src/test/resources/application.properties b/serverless-workflow-examples/serverless-workflow-correlation-quarkus-mongodb/src/test/resources/application.properties
index 50bf6c1154..f4a7c5c71b 100644
--- a/serverless-workflow-examples/serverless-workflow-correlation-quarkus-mongodb/src/test/resources/application.properties
+++ b/serverless-workflow-examples/serverless-workflow-correlation-quarkus-mongodb/src/test/resources/application.properties
@@ -21,4 +21,6 @@
quarkus.http.test-port=0
# Temporary fix for test to pass due to issue in Quarkus classloading resolver
-quarkus.class-loading.parent-first-artifacts=org.testcontainers:testcontainers
\ No newline at end of file
+quarkus.class-loading.parent-first-artifacts=org.testcontainers:testcontainers
+
+quarkus.kafka.devservices.image-name=${container.image.kafka}
\ No newline at end of file
diff --git a/serverless-workflow-examples/serverless-workflow-correlation-quarkus/pom.xml b/serverless-workflow-examples/serverless-workflow-correlation-quarkus/pom.xml
index 75736429f9..56d8c803a8 100644
--- a/serverless-workflow-examples/serverless-workflow-correlation-quarkus/pom.xml
+++ b/serverless-workflow-examples/serverless-workflow-correlation-quarkus/pom.xml
@@ -146,6 +146,7 @@
org.jboss.logmanager.LogManager
${maven.home}
+ ${container.image.kafka}
diff --git a/serverless-workflow-examples/serverless-workflow-correlation-quarkus/src/test/resources/application.properties b/serverless-workflow-examples/serverless-workflow-correlation-quarkus/src/test/resources/application.properties
index 50bf6c1154..f4a7c5c71b 100644
--- a/serverless-workflow-examples/serverless-workflow-correlation-quarkus/src/test/resources/application.properties
+++ b/serverless-workflow-examples/serverless-workflow-correlation-quarkus/src/test/resources/application.properties
@@ -21,4 +21,6 @@
quarkus.http.test-port=0
# Temporary fix for test to pass due to issue in Quarkus classloading resolver
-quarkus.class-loading.parent-first-artifacts=org.testcontainers:testcontainers
\ No newline at end of file
+quarkus.class-loading.parent-first-artifacts=org.testcontainers:testcontainers
+
+quarkus.kafka.devservices.image-name=${container.image.kafka}
\ No newline at end of file
diff --git a/serverless-workflow-examples/serverless-workflow-examples-parent/pom.xml b/serverless-workflow-examples/serverless-workflow-examples-parent/pom.xml
index b3135db6c7..ba95319075 100644
--- a/serverless-workflow-examples/serverless-workflow-examples-parent/pom.xml
+++ b/serverless-workflow-examples/serverless-workflow-examples-parent/pom.xml
@@ -35,6 +35,7 @@
2024-01-16T00:00:00Z
3.4.1
+ redpandadata/redpanda:v24.3.1
diff --git a/serverless-workflow-examples/serverless-workflow-qas-service-showcase/query-service/pom.xml b/serverless-workflow-examples/serverless-workflow-qas-service-showcase/query-service/pom.xml
index 52febe5d5c..63d414a42c 100644
--- a/serverless-workflow-examples/serverless-workflow-qas-service-showcase/query-service/pom.xml
+++ b/serverless-workflow-examples/serverless-workflow-qas-service-showcase/query-service/pom.xml
@@ -162,6 +162,7 @@
org.jboss.logmanager.LogManager
${maven.home}
+ ${container.image.kafka}
diff --git a/kogito-quarkus-examples/ocp-tryout/kogito-task-console/kogito-task-console.sh b/serverless-workflow-examples/serverless-workflow-qas-service-showcase/query-service/src/test/resources/application.properties
old mode 100755
new mode 100644
similarity index 54%
rename from kogito-quarkus-examples/ocp-tryout/kogito-task-console/kogito-task-console.sh
rename to serverless-workflow-examples/serverless-workflow-qas-service-showcase/query-service/src/test/resources/application.properties
index f6d84920b4..d0b6aa7199
--- a/kogito-quarkus-examples/ocp-tryout/kogito-task-console/kogito-task-console.sh
+++ b/serverless-workflow-examples/serverless-workflow-qas-service-showcase/query-service/src/test/resources/application.properties
@@ -1,4 +1,3 @@
-#!/bin/bash
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
@@ -18,20 +17,4 @@
# under the License.
#
-
-action=$1
-
-if [ "${action}" == "uninstall" ]; then
- echo "*** uninstalling task console"
- oc delete all,configmap --selector app=kogito-task-console -n $(getProjectName)
-
-elif [ "${action}" == "install" ]; then
- echo "*** installing task console"
- oc new-app quay.io/kiegroup/kogito-task-console:${KOGITO_VERSION} -n $(getProjectName) $(dryRun "NewApp")
- waitForPod kogito-task-console
- oc patch deployment kogito-task-console --patch "$(cat deployment-patch.yaml)" -n $(getProjectName) $(dryRun)
- waitForPod kogito-task-console
- oc expose service/kogito-task-console -n $(getProjectName) $(dryRun)
-else
- echo "*** no such action: $action"
-fi
\ No newline at end of file
+quarkus.kafka.devservices.image-name=${container.image.kafka}
\ No newline at end of file