Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2431891100
##
addons/common/process-migration/src/test/java/org/kie/kogito/process/migration/BaseProcessInstanceMigrationResourceTest.java:
##
@@ -0,0 +1,199 @@
+/*
+ * 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.process.migration;
+
+/*
+ * 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.
+ */
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+
+import org.jbpm.ruleflow.core.Metadata;
+import org.jbpm.ruleflow.core.WorkflowElementIdentifierFactory;
+import org.jbpm.workflow.core.Node;
+import org.jbpm.workflow.core.WorkflowModelValidator;
+import org.jbpm.workflow.core.WorkflowProcess;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.kie.kogito.Application;
+import org.kie.kogito.process.ProcessError;
+import org.kie.kogito.process.ProcessInstance;
+import org.kie.kogito.process.ProcessInstances;
+import org.kie.kogito.process.Processes;
+import org.kie.kogito.process.impl.AbstractProcess;
+import org.kie.kogito.services.uow.CollectingUnitOfWorkFactory;
+import org.kie.kogito.services.uow.DefaultUnitOfWorkManager;
+import org.mockito.Mock;
+import org.mockito.junit.jupiter.MockitoExtension;
+
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.node.NullNode;
+
+import static java.util.Collections.singletonList;
+import static java.util.Collections.singletonMap;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.jbpm.ruleflow.core.Metadata.UNIQUE_ID;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.lenient;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+
+@ExtendWith(MockitoExtension.class)
+class BaseProcessInstanceManagementResourceTest {
+
+public static final String PROCESS_ID = "processId";
+public static final String PROCESS_INSTANCE_ID = "processInstanceId";
+public static final String NODE_ID_ERROR = "processInstanceIdError";
+public static final String NODE_ID = "nodeId";
+public static final String NODE_UNIQUE_ID = "nodeUniqueId";
+private BaseProcessInstanceMigrationResource tested;
+
+@Mock
+private Processes processes;
+
+@Mock
+private Application application;
+
+@Mock
+private ProcessInstance processInstance;
+
+@Mock
+private ProcessError error;
+
+@Mock
+private ProcessInstances instances;
+
+@Mock
+private AbstractProcess process;
+
+@Mock
+private WorkflowProcess workflowProcess;
+
+@Mock
+private WorkflowModelValidator workflowValidator;
+
+@Mock
+private Node node;
+
+@Mock
+private ProcessMigrationSpec processMigrationSpec;
+
+@Mock
+private Object variables;
+
+@BeforeEach
+void setUp() {
+
lenient().when(node.getId()).thenReturn(WorkflowElementIdentifierFactory.fromExternalFormat("one"));
+lenient().when(node.getName()).thenReturn("node");
+lenient().when(node.getUniqueId()).thenReturn(NODE_ID);
+lenient().when(node.getMetaData()).thenReturn(singletonMap(UNIQUE_ID,
NODE_UNIQUE_ID));
+
lenient().when(workflowProcess.get
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2429922928 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,31 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds process migration capability to Kogito projects and are also part of the integration with the +[Kogito Management Console](https://github.com/kiegroup/kogito-apps/tree/main/management-console). Review Comment: what does this mean exactly? > and are also part of the integration with the [Kogito Management Console] IMO, the migration add-on is affecting the Swagger UI only. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2431881916 ## .rat-excludes: ## @@ -222,3 +222,6 @@ PMMLRegression.pmml .gitignore # springboot/integration-tests/integration-tests-springboot-processes-persistence-it/integration-tests-springboot-processes-persistence-common/src/main/resources/transactional_error.bpmn transactional_error.bpmn +# quarkus/addons/process-migration/integration-tests/src/main/resources/signal.bpmn Review Comment: Added the name of files also. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2433902231
##
addons/common/process-migration/README.md:
##
@@ -0,0 +1,131 @@
+
+
+# Kogito Process Migration Add-on
+
+The Kogito Process Migration Add-ons adds (e.g.
kogito-addons-quarkus-process-migration) which provides REST endpoints for
migrating the running processes.
+Process instance migration (PIM) in Kogito refers to the capability of moving
an active process instance from one process definition version to another.
+
+Following two endpoints can be used to migrate active process instances:
+
+1. Endpoint to migrate all active process instances of a given processId to a
new target process
+
+Endpoint : POST /management/processes/{processId}/migrate:
+
+Request body :
+
+```json
+{
+"targetProcessId": "<>",
+"targetProcessVersion": "<>"
+}
+```
+
+Input parameters:
+1. processId: source process identifier (path parameter)
+2. targetProcessId : target process identifier(query parameter)
+3. targetProcessVersion : target process version(query parameter)
+
+Output:
+
+ The response JSON Schema includes details of processInstanceId migrated to
new process:
+
+```json
+{
+"message": <>,
+"numberOfProcessInstanceMigrated": <>
+ }
+```
+Sample JSON Response :
+
+```json
+{
+"message": "All instances migrated",
+"numberOfProcessInstanceMigrated": 1
+ }
+```
+
+2. Endpoint to migrate all active process instances of a given processId to a
new target process
+
+Endpoint. : POST
/management/processes/{processId}/instances/{processInstanceId}/migrate:
+
+Request body :
+```json
+{
+"targetProcessId": "<>",
+"targetProcessVersion": "<>"
+}
+```
+Input parameters:
+
+1. processId: source process identifier (path parameter)
+2. processInstanceId: source process instance identifier (path parameter)
+3. targetProcessId : target process identifier(query parameter)
+4. targetProcessVersion : target process version(query parameter)
+
+Output:
+
+The response JSON Schema includes details of the processInstanceId migrated to
new process
+```json
+{
+"processInstanceId": <>,
+"message": <>
+}
+```
+Sample JSON Response Example :
+
+```json
+{
+"processInstanceId": "1c67ac14-e26a-4f5f-8d42-f4c3bdb691e5",
+"message": "1c67ac14-e26a-4f5f-8d42-f4c3bdb691e5 instance migrated"
+}
+```
+### Usage
+
+Add this section to your `pom.xml` file:
+
+1. Quarkus:
+```xml
+
+
Review Comment:
Please remove the `` tags, they are not required.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
-
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2433914225 ## addons/common/process-migration/pom.xml: ## @@ -0,0 +1,68 @@ + + +http://maven.apache.org/POM/4.0.0"; + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd";> + +kogito-addons-common-parent +org.kie +999-SNAPSHOT + + 4.0.0 + + kie-addons-process-migration Review Comment: Please replace `process-migration` with `process-instance-migration` in all artifact ids. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2431884884 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,31 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds process migration capability to Kogito projects and are also part of the integration with the +[Kogito Management Console](https://github.com/kiegroup/kogito-apps/tree/main/management-console). Review Comment: Removed the mgmt console details and link.README document updated. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
pefernan commented on PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#issuecomment-3410473974 Test failures are unrelated to this change -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2434844221 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,131 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds (e.g. kogito-addons-quarkus-process-migration) which provides REST endpoints for migrating the running processes. Review Comment: Updated the details as above -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2431889926 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,31 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds process migration capability to Kogito projects and are also part of the integration with the +[Kogito Management Console](https://github.com/kiegroup/kogito-apps/tree/main/management-console). +See the [official documentation](https://docs.jboss.org/kogito/release/latest/html_single/#con-bpmn-process-management-addon_kogito-developing-process-services) +to find out more. + +## Examples + +See the following examples to explore more about this capability: + [process-instance-migration-quarkus](https://github.com/kiegroup/kogito-examples/tree/main/kogito-quarkus-examples/process-instance-migration-quarkus) Review Comment: PR raised for updating the example : https://github.com/apache/incubator-kie-kogito-examples/pull/2136 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
kie-ci3 commented on PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#issuecomment-3410459304
**PR job** `#7` was: **UNSTABLE**
Possible explanation: This should be test failures
Reproducer
build-chain build full_downstream -f
'https://raw.githubusercontent.com/${AUTHOR:apache}/incubator-kie-kogito-pipelines/${BRANCH:main}/.ci/buildchain-config-pr-cdb.yaml'
-o 'bc' -p apache/incubator-kie-kogito-runtimes -u
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093
--skipParallelCheckout
NOTE: To install the build-chain tool, please refer to
https://github.com/kiegroup/github-action-build-chain#local-execution
Please look here:
https://ci-builds.apache.org/job/KIE/job/kogito/job/main/job/pullrequest_jobs/job/kogito-runtimes-pr/job/PR-4093/7/display/redirect
**Test results:**
- PASSED: 3658
- FAILED: 3
Those are the test failures:
https://ci-builds.apache.org/job/KIE/job/kogito/job/main/job/pullrequest_jobs/job/kogito-runtimes-pr/job/PR-4093/7/testReport/org.kie.kogito.addons.quarkus.knative.serving.customfunctions.it/KnativeServingAddonIT/___/";>org.kie.kogito.addons.quarkus.knative.serving.customfunctions.it.KnativeServingAddonIT.(?)
java.lang.RuntimeException: io.quarkus.builder.BuildException: Build
failure: Build failed due to errors [error]: Build step
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor#startKeycloakContainer
threw an exception: java.lang.RuntimeException:
org.testcontainers.containers.ContainerLaunchException: Container startup
failed for image quay.io/keycloak/keycloak:26.1.3 at
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor.startKeycloakContainer(KeycloakDevServicesProcessor.java:250)
at
java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:732)
at
io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:856)
at io.quarkus.builder.BuildContext.run(BuildContext.java:255) at
org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18) at
org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2675)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQu
eueExecutor.java:2654) at
org.jboss.threads.EnhancedQueueExecutor.runThreadBody(EnhancedQueueExecutor.java:1627)
at
org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1594)
at java.base/java.lang.Thread.run(Thread.java:840) at
org.jboss.threads.JBossThread.run(JBossThread.java:499)Caused by:
org.testcontainers.containers.ContainerLaunchException: Container startup
failed for image quay.io/keycloak/keycloak:26.1.3 at
org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:351)
at
org.testcontainers.containers.GenericContainer.start(GenericContainer.java:322)
at
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor.lambda$startContainer$4(KeycloakDevServicesProcessor.java:421)
at java.base/java.util.Optional.orElseGet(Optional.java:364) at
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor.startContainer(KeycloakDevServicesProcessor.java:447)
at io.quarkus.devser
vices.keycloak.KeycloakDevServicesProcessor.startKeycloakContainer(KeycloakDevServicesProcessor.java:200)
... 10 moreCaused by: org.rnorth.ducttape.RetryCountExceededException:
Retry limit hit with exception at
org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:88)
at
org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:336)
... 15 moreCaused by:
org.testcontainers.containers.ContainerLaunchException: Could not create/start
container at
org.testcontainers.containers.GenericContainer.tryStart(GenericContainer.java:556)
at
org.testcontainers.containers.GenericContainer.lambda$doStart$0(GenericContainer.java:346)
at
org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:81)
... 16 moreCaused by:
org.testcontainers.containers.ContainerLaunchException: Timed out waiting for
log output matching '.*Keycloak.*started.*' at
org.testcontainers.containers.wait
.strategy.LogMessageWaitStrategy.waitUntilReady(LogMessageWaitStrategy.java:47)
at
org.testcontainers.containers.wait.strategy.AbstractWaitStrategy.waitUntilReady(AbstractWaitStrategy.java:52)
at
org.testcontainers.containers.GenericContainer.waitUntilContainerStarted(GenericContainer.java:909)
at
org.testcontainers.containers.GenericContainer.tryStart(GenericContainer.java:492)
... 18 more
https://ci-builds.apache.org/job/KIE/job/kogito/job/main/job/pullrequest_jobs/job/kogito-runtimes-pr/job/PR-4093/7/testReport/org.kie.kogito.addons.quarkus.kubernetes/ConfigValueExpanderIT/test/";>org.kie.kogito.addons.quarkus.kubernetes.ConfigValueExpanderIT.test
java.lang.RuntimeException: io.quarkus.builder.BuildException: Build
failure: Build failed due to errors [error]: Build step
io.q
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2431887117 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,31 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds process migration capability to Kogito projects and are also part of the integration with the +[Kogito Management Console](https://github.com/kiegroup/kogito-apps/tree/main/management-console). +See the [official documentation](https://docs.jboss.org/kogito/release/latest/html_single/#con-bpmn-process-management-addon_kogito-developing-process-services) +to find out more. Review Comment: Link removed and updated the README document. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2433910567 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,131 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds (e.g. kogito-addons-quarkus-process-migration) which provides REST endpoints for migrating the running processes. Review Comment: This sentence is not clear to me. Maybe change it to: > The Kogito Process Instance Migration (PIM) Add-on adds functionality for migrating active processes. [then the 2nd sentence] This functionality is exposed through management REST endpoints after adding the platform specific dependencies as specified below. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2433916106
##
kogito-bom/pom.xml:
##
@@ -1215,6 +1215,50 @@
${project.version}
sources
+
+org.kie
+kie-addons-process-migration
Review Comment:
See earlier comment, it would be better to use the name
`xyz-process-instance-migration` instead of just `process-migration`. Thanks!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
-
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2434923657 ## springboot/pom.xml: ## @@ -40,7 +40,7 @@ starters archetype test - addons/process-migration + addons/process-instance-migration Review Comment: Added the `process-instance-migration` to the springboot - addon- pom.xml. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2429931227 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,31 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds process migration capability to Kogito projects and are also part of the integration with the +[Kogito Management Console](https://github.com/kiegroup/kogito-apps/tree/main/management-console). +See the [official documentation](https://docs.jboss.org/kogito/release/latest/html_single/#con-bpmn-process-management-addon_kogito-developing-process-services) +to find out more. + Review Comment: Could you please add a ## Usage section where you add the required dependencies for Quarkus and Spring Boot? Thanks! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2434840511
##
addons/common/process-migration/README.md:
##
@@ -0,0 +1,131 @@
+
+
+# Kogito Process Migration Add-on
+
+The Kogito Process Migration Add-ons adds (e.g.
kogito-addons-quarkus-process-migration) which provides REST endpoints for
migrating the running processes.
+Process instance migration (PIM) in Kogito refers to the capability of moving
an active process instance from one process definition version to another.
+
+Following two endpoints can be used to migrate active process instances:
+
+1. Endpoint to migrate all active process instances of a given processId to a
new target process
+
+Endpoint : POST /management/processes/{processId}/migrate:
+
+Request body :
+
+```json
+{
+"targetProcessId": "<>",
+"targetProcessVersion": "<>"
+}
+```
+
+Input parameters:
+1. processId: source process identifier (path parameter)
+2. targetProcessId : target process identifier(query parameter)
+3. targetProcessVersion : target process version(query parameter)
+
+Output:
+
+ The response JSON Schema includes details of processInstanceId migrated to
new process:
+
+```json
+{
+"message": <>,
+"numberOfProcessInstanceMigrated": <>
+ }
+```
+Sample JSON Response :
+
+```json
+{
+"message": "All instances migrated",
+"numberOfProcessInstanceMigrated": 1
+ }
+```
+
+2. Endpoint to migrate all active process instances of a given processId to a
new target process
+
+Endpoint. : POST
/management/processes/{processId}/instances/{processInstanceId}/migrate:
+
+Request body :
+```json
+{
+"targetProcessId": "<>",
+"targetProcessVersion": "<>"
+}
+```
+Input parameters:
+
+1. processId: source process identifier (path parameter)
+2. processInstanceId: source process instance identifier (path parameter)
+3. targetProcessId : target process identifier(query parameter)
+4. targetProcessVersion : target process version(query parameter)
+
+Output:
+
+The response JSON Schema includes details of the processInstanceId migrated to
new process
+```json
+{
+"processInstanceId": <>,
+"message": <>
+}
+```
+Sample JSON Response Example :
+
+```json
+{
+"processInstanceId": "1c67ac14-e26a-4f5f-8d42-f4c3bdb691e5",
+"message": "1c67ac14-e26a-4f5f-8d42-f4c3bdb691e5 instance migrated"
+}
+```
+### Usage
+
+Add this section to your `pom.xml` file:
+
+1. Quarkus:
+```xml
+
+
Review Comment:
Removed
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
-
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2429928389 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,31 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds process migration capability to Kogito projects and are also part of the integration with the +[Kogito Management Console](https://github.com/kiegroup/kogito-apps/tree/main/management-console). +See the [official documentation](https://docs.jboss.org/kogito/release/latest/html_single/#con-bpmn-process-management-addon_kogito-developing-process-services) +to find out more. Review Comment: What are users expected to > find out more when following this link? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2434836287 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,131 @@ + + +# Kogito Process Migration Add-on Review Comment: Updated as Process Instance Migration -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
pefernan commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2426704155 ## .rat-excludes: ## @@ -222,3 +222,6 @@ PMMLRegression.pmml .gitignore # springboot/integration-tests/integration-tests-springboot-processes-persistence-it/integration-tests-springboot-processes-persistence-common/src/main/resources/transactional_error.bpmn transactional_error.bpmn +# quarkus/addons/process-migration/integration-tests/src/main/resources/signal.bpmn Review Comment: @Christine-Jose I think you need to add the file name here aswell -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2433899081 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,131 @@ + + +# Kogito Process Migration Add-on Review Comment: Kogito Process Instance Migration (PIM) Add-on -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2434840511
##
addons/common/process-migration/README.md:
##
@@ -0,0 +1,131 @@
+
+
+# Kogito Process Migration Add-on
+
+The Kogito Process Migration Add-ons adds (e.g.
kogito-addons-quarkus-process-migration) which provides REST endpoints for
migrating the running processes.
+Process instance migration (PIM) in Kogito refers to the capability of moving
an active process instance from one process definition version to another.
+
+Following two endpoints can be used to migrate active process instances:
+
+1. Endpoint to migrate all active process instances of a given processId to a
new target process
+
+Endpoint : POST /management/processes/{processId}/migrate:
+
+Request body :
+
+```json
+{
+"targetProcessId": "<>",
+"targetProcessVersion": "<>"
+}
+```
+
+Input parameters:
+1. processId: source process identifier (path parameter)
+2. targetProcessId : target process identifier(query parameter)
+3. targetProcessVersion : target process version(query parameter)
+
+Output:
+
+ The response JSON Schema includes details of processInstanceId migrated to
new process:
+
+```json
+{
+"message": <>,
+"numberOfProcessInstanceMigrated": <>
+ }
+```
+Sample JSON Response :
+
+```json
+{
+"message": "All instances migrated",
+"numberOfProcessInstanceMigrated": 1
+ }
+```
+
+2. Endpoint to migrate all active process instances of a given processId to a
new target process
+
+Endpoint. : POST
/management/processes/{processId}/instances/{processInstanceId}/migrate:
+
+Request body :
+```json
+{
+"targetProcessId": "<>",
+"targetProcessVersion": "<>"
+}
+```
+Input parameters:
+
+1. processId: source process identifier (path parameter)
+2. processInstanceId: source process instance identifier (path parameter)
+3. targetProcessId : target process identifier(query parameter)
+4. targetProcessVersion : target process version(query parameter)
+
+Output:
+
+The response JSON Schema includes details of the processInstanceId migrated to
new process
+```json
+{
+"processInstanceId": <>,
+"message": <>
+}
+```
+Sample JSON Response Example :
+
+```json
+{
+"processInstanceId": "1c67ac14-e26a-4f5f-8d42-f4c3bdb691e5",
+"message": "1c67ac14-e26a-4f5f-8d42-f4c3bdb691e5 instance migrated"
+}
+```
+### Usage
+
+Add this section to your `pom.xml` file:
+
+1. Quarkus:
+```xml
+
+
Review Comment:
Removed the tag
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
-
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2429938696 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,31 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds process migration capability to Kogito projects and are also part of the integration with the +[Kogito Management Console](https://github.com/kiegroup/kogito-apps/tree/main/management-console). +See the [official documentation](https://docs.jboss.org/kogito/release/latest/html_single/#con-bpmn-process-management-addon_kogito-developing-process-services) +to find out more. + +## Examples + +See the following examples to explore more about this capability: + [process-instance-migration-quarkus](https://github.com/kiegroup/kogito-examples/tree/main/kogito-quarkus-examples/process-instance-migration-quarkus) Review Comment: Good point referencing this example. Please create another PR for the `kogito-examples` repo with the following required changes: * Add `org.kie:kie-addons-quarkus-process-migration` dependency to the application's pom.xml file * Add a note to the example's README file about this required dependency The rest of the example should work the same. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
pefernan commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2434879764 ## springboot/pom.xml: ## @@ -40,7 +40,7 @@ starters archetype test - addons/process-migration + addons/process-instance-migration Review Comment: @Christine-Jose This dependency should be added in the addons module not in the springboot parent -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
kie-ci3 commented on PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#issuecomment-3406390585
**PR job** `#5` was: **UNSTABLE**
Possible explanation: This should be test failures
Reproducer
build-chain build full_downstream -f
'https://raw.githubusercontent.com/${AUTHOR:apache}/incubator-kie-kogito-pipelines/${BRANCH:main}/.ci/buildchain-config-pr-cdb.yaml'
-o 'bc' -p apache/incubator-kie-kogito-runtimes -u
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093
--skipParallelCheckout
NOTE: To install the build-chain tool, please refer to
https://github.com/kiegroup/github-action-build-chain#local-execution
Please look here:
https://ci-builds.apache.org/job/KIE/job/kogito/job/main/job/pullrequest_jobs/job/kogito-runtimes-pr/job/PR-4093/5/display/redirect
**Test results:**
- PASSED: 3663
- FAILED: 2
Those are the test failures:
https://ci-builds.apache.org/job/KIE/job/kogito/job/main/job/pullrequest_jobs/job/kogito-runtimes-pr/job/PR-4093/5/testReport/org.kie.kogito.addons.quarkus.kubernetes/ConfigValueExpanderIT/test/";>org.kie.kogito.addons.quarkus.kubernetes.ConfigValueExpanderIT.test
java.lang.RuntimeException: io.quarkus.builder.BuildException: Build
failure: Build failed due to errors [error]: Build step
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor#startKeycloakContainer
threw an exception: java.lang.RuntimeException:
org.testcontainers.containers.ContainerLaunchException: Container startup
failed for image quay.io/keycloak/keycloak:26.1.3 at
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor.startKeycloakContainer(KeycloakDevServicesProcessor.java:250)
at
java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:732)
at
io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:856)
at io.quarkus.builder.BuildContext.run(BuildContext.java:255) at
org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18) at
org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2675)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQu
eueExecutor.java:2654) at
org.jboss.threads.EnhancedQueueExecutor.runThreadBody(EnhancedQueueExecutor.java:1627)
at
org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1594)
at java.base/java.lang.Thread.run(Thread.java:840) at
org.jboss.threads.JBossThread.run(JBossThread.java:499)Caused by:
org.testcontainers.containers.ContainerLaunchException: Container startup
failed for image quay.io/keycloak/keycloak:26.1.3 at
org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:351)
at
org.testcontainers.containers.GenericContainer.start(GenericContainer.java:322)
at
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor.lambda$startContainer$4(KeycloakDevServicesProcessor.java:421)
at java.base/java.util.Optional.orElseGet(Optional.java:364) at
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor.startContainer(KeycloakDevServicesProcessor.java:447)
at io.quarkus.devser
vices.keycloak.KeycloakDevServicesProcessor.startKeycloakContainer(KeycloakDevServicesProcessor.java:200)
... 10 moreCaused by: org.rnorth.ducttape.RetryCountExceededException:
Retry limit hit with exception at
org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:88)
at
org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:336)
... 15 moreCaused by:
org.testcontainers.containers.ContainerLaunchException: Could not create/start
container at
org.testcontainers.containers.GenericContainer.tryStart(GenericContainer.java:556)
at
org.testcontainers.containers.GenericContainer.lambda$doStart$0(GenericContainer.java:346)
at
org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:81)
... 16 moreCaused by:
org.testcontainers.containers.ContainerLaunchException: Timed out waiting for
log output matching '.*Keycloak.*started.*' at
org.testcontainers.containers.wait
.strategy.LogMessageWaitStrategy.waitUntilReady(LogMessageWaitStrategy.java:47)
at
org.testcontainers.containers.wait.strategy.AbstractWaitStrategy.waitUntilReady(AbstractWaitStrategy.java:52)
at
org.testcontainers.containers.GenericContainer.waitUntilContainerStarted(GenericContainer.java:909)
at
org.testcontainers.containers.GenericContainer.tryStart(GenericContainer.java:492)
... 18 more
https://ci-builds.apache.org/job/KIE/job/kogito/job/main/job/pullrequest_jobs/job/kogito-runtimes-pr/job/PR-4093/5/testReport/org.kie.kogito.quarkus.token.persistence.workflows/TokenExchangeIT/tokenExchange/";>org.kie.kogito.quarkus.token.persistence.workflows.TokenExchangeIT.tokenExchange
java.lang.RuntimeException: io.quarkus.builder.BuildException: Build
failure: Build failed due to errors [error]: Build step
io.quarkus.devservices.k
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2429943505
##
addons/common/process-migration/src/test/java/org/kie/kogito/process/migration/BaseProcessInstanceMigrationResourceTest.java:
##
@@ -0,0 +1,199 @@
+/*
+ * 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.process.migration;
+
+/*
+ * 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.
+ */
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+
+import org.jbpm.ruleflow.core.Metadata;
+import org.jbpm.ruleflow.core.WorkflowElementIdentifierFactory;
+import org.jbpm.workflow.core.Node;
+import org.jbpm.workflow.core.WorkflowModelValidator;
+import org.jbpm.workflow.core.WorkflowProcess;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.kie.kogito.Application;
+import org.kie.kogito.process.ProcessError;
+import org.kie.kogito.process.ProcessInstance;
+import org.kie.kogito.process.ProcessInstances;
+import org.kie.kogito.process.Processes;
+import org.kie.kogito.process.impl.AbstractProcess;
+import org.kie.kogito.services.uow.CollectingUnitOfWorkFactory;
+import org.kie.kogito.services.uow.DefaultUnitOfWorkManager;
+import org.mockito.Mock;
+import org.mockito.junit.jupiter.MockitoExtension;
+
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.node.NullNode;
+
+import static java.util.Collections.singletonList;
+import static java.util.Collections.singletonMap;
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.jbpm.ruleflow.core.Metadata.UNIQUE_ID;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.lenient;
+import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.verify;
+
+@ExtendWith(MockitoExtension.class)
+class BaseProcessInstanceManagementResourceTest {
+
+public static final String PROCESS_ID = "processId";
+public static final String PROCESS_INSTANCE_ID = "processInstanceId";
+public static final String NODE_ID_ERROR = "processInstanceIdError";
+public static final String NODE_ID = "nodeId";
+public static final String NODE_UNIQUE_ID = "nodeUniqueId";
+private BaseProcessInstanceMigrationResource tested;
+
+@Mock
+private Processes processes;
+
+@Mock
+private Application application;
+
+@Mock
+private ProcessInstance processInstance;
+
+@Mock
+private ProcessError error;
+
+@Mock
+private ProcessInstances instances;
+
+@Mock
+private AbstractProcess process;
+
+@Mock
+private WorkflowProcess workflowProcess;
+
+@Mock
+private WorkflowModelValidator workflowValidator;
+
+@Mock
+private Node node;
+
+@Mock
+private ProcessMigrationSpec processMigrationSpec;
+
+@Mock
+private Object variables;
+
+@BeforeEach
+void setUp() {
+
lenient().when(node.getId()).thenReturn(WorkflowElementIdentifierFactory.fromExternalFormat("one"));
+lenient().when(node.getName()).thenReturn("node");
+lenient().when(node.getUniqueId()).thenReturn(NODE_ID);
+lenient().when(node.getMetaData()).thenReturn(singletonMap(UNIQUE_ID,
NODE_UNIQUE_ID));
+
lenient().when(workflowProcess.getNo
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler merged PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2433911849 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,31 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds process migration capability to Kogito projects and are also part of the integration with the +[Kogito Management Console](https://github.com/kiegroup/kogito-apps/tree/main/management-console). +See the [official documentation](https://docs.jboss.org/kogito/release/latest/html_single/#con-bpmn-process-management-addon_kogito-developing-process-services) +to find out more. + +## Examples + +See the following examples to explore more about this capability: + [process-instance-migration-quarkus](https://github.com/kiegroup/kogito-examples/tree/main/kogito-quarkus-examples/process-instance-migration-quarkus) Review Comment: Thank you! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2434846079
##
kogito-bom/pom.xml:
##
@@ -1215,6 +1215,50 @@
${project.version}
sources
+
+org.kie
+kie-addons-process-migration
Review Comment:
Updated with process-instance-migration in all artifact ids.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
-
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2434845382 ## addons/common/process-migration/pom.xml: ## @@ -0,0 +1,68 @@ + + +http://maven.apache.org/POM/4.0.0"; + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd";> + +kogito-addons-common-parent +org.kie +999-SNAPSHOT + + 4.0.0 + + kie-addons-process-migration Review Comment: Updated with `process-instance-migration` in all artifact ids. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2434832877 ## addons/common/pom.xml: ## @@ -41,6 +41,7 @@ rest-exception-handler process-svg process-management +process-migration Review Comment: Updated as `process-instance-migration` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2433896969 ## addons/common/pom.xml: ## @@ -41,6 +41,7 @@ rest-exception-handler process-svg process-management +process-migration Review Comment: As we are referring to this feature as PIM, I think the module should be called `process-instance-migration`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2432116468
##
quarkus/addons/process-migration/runtime/src/test/java/org/kie/kogito/process/migration/ProcessInstanceMigrationResourceTest.java:
##
@@ -0,0 +1,168 @@
+/*
+ * 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.process.migration;
+
+import java.util.Optional;
+
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.kie.kogito.Application;
+import org.kie.kogito.internal.process.runtime.KogitoProcessInstance;
+import org.kie.kogito.internal.process.runtime.KogitoWorkflowProcess;
+import org.kie.kogito.process.ProcessError;
+import org.kie.kogito.process.ProcessInstance;
+import org.kie.kogito.process.ProcessInstances;
+import org.kie.kogito.process.Processes;
+import org.kie.kogito.process.impl.AbstractProcess;
+import org.kie.kogito.services.uow.CollectingUnitOfWorkFactory;
+import org.kie.kogito.services.uow.DefaultUnitOfWorkManager;
+import org.mockito.Mock;
+import org.mockito.junit.jupiter.MockitoExtension;
+
+import jakarta.enterprise.inject.Instance;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.Response.ResponseBuilder;
+import jakarta.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.ext.RuntimeDelegate;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.verify;
+
+@ExtendWith(MockitoExtension.class)
+public class ProcessInstanceMigrationResourceTest {
+
+public static final String MESSAGE = "message";
+public static final String PROCESS_ID = "test";
Review Comment:
Test cases updated.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
-
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2431891879 ## quarkus/addons/process-migration/integration-tests/src/main/resources/timers.bpmn: ## @@ -0,0 +1,178 @@ + Review Comment: File was not used, so removed. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
Christine-Jose commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2431888148 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,31 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds process migration capability to Kogito projects and are also part of the integration with the +[Kogito Management Console](https://github.com/kiegroup/kogito-apps/tree/main/management-console). +See the [official documentation](https://docs.jboss.org/kogito/release/latest/html_single/#con-bpmn-process-management-addon_kogito-developing-process-services) +to find out more. + Review Comment: Added the "usage" section. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
pefernan commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2431531623 ## addons/common/process-migration/README.md: ## @@ -0,0 +1,31 @@ + + +# Kogito Process Migration Add-on + +The Kogito Process Migration Add-ons adds process migration capability to Kogito projects and are also part of the integration with the +[Kogito Management Console](https://github.com/kiegroup/kogito-apps/tree/main/management-console). Review Comment: + 1 I'd remove the reference to mgmt console, it's no longer hosted in kogito-apps -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2429960215
##
quarkus/addons/process-migration/runtime/src/test/java/org/kie/kogito/process/migration/ProcessInstanceMigrationResourceTest.java:
##
@@ -0,0 +1,168 @@
+/*
+ * 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.process.migration;
+
+import java.util.Optional;
+
+import org.junit.jupiter.api.BeforeAll;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.ExtendWith;
+import org.kie.kogito.Application;
+import org.kie.kogito.internal.process.runtime.KogitoProcessInstance;
+import org.kie.kogito.internal.process.runtime.KogitoWorkflowProcess;
+import org.kie.kogito.process.ProcessError;
+import org.kie.kogito.process.ProcessInstance;
+import org.kie.kogito.process.ProcessInstances;
+import org.kie.kogito.process.Processes;
+import org.kie.kogito.process.impl.AbstractProcess;
+import org.kie.kogito.services.uow.CollectingUnitOfWorkFactory;
+import org.kie.kogito.services.uow.DefaultUnitOfWorkManager;
+import org.mockito.Mock;
+import org.mockito.junit.jupiter.MockitoExtension;
+
+import jakarta.enterprise.inject.Instance;
+import jakarta.ws.rs.core.Response;
+import jakarta.ws.rs.core.Response.ResponseBuilder;
+import jakarta.ws.rs.core.Response.StatusType;
+import jakarta.ws.rs.ext.RuntimeDelegate;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.mockito.ArgumentMatchers.any;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.*;
+import static org.mockito.Mockito.verify;
+
+@ExtendWith(MockitoExtension.class)
+public class ProcessInstanceMigrationResourceTest {
+
+public static final String MESSAGE = "message";
+public static final String PROCESS_ID = "test";
Review Comment:
Maybe I fail to completely understand this test, but wouldn't it be required
to have another `TARGET_PROCESS_ID = "test2"` to verify the migration from
`test` to `test2`?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
-
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
martinweiler commented on code in PR #4093: URL: https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#discussion_r2429950576 ## quarkus/addons/process-migration/integration-tests/src/main/resources/timers.bpmn: ## @@ -0,0 +1,178 @@ + Review Comment: Is this file needed / used anywhere? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] - To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
Re: [PR] [kie-issue#2142]Extract Process Instance Migration(PIM) to an independent addon [incubator-kie-kogito-runtimes]
kie-ci3 commented on PR #4093:
URL:
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093#issuecomment-3398129155
**PR job** `#3` was: **UNSTABLE**
Possible explanation: This should be test failures
Reproducer
build-chain build full_downstream -f
'https://raw.githubusercontent.com/${AUTHOR:apache}/incubator-kie-kogito-pipelines/${BRANCH:main}/.ci/buildchain-config-pr-cdb.yaml'
-o 'bc' -p apache/incubator-kie-kogito-runtimes -u
https://github.com/apache/incubator-kie-kogito-runtimes/pull/4093
--skipParallelCheckout
NOTE: To install the build-chain tool, please refer to
https://github.com/kiegroup/github-action-build-chain#local-execution
Please look here:
https://ci-builds.apache.org/job/KIE/job/kogito/job/main/job/pullrequest_jobs/job/kogito-runtimes-pr/job/PR-4093/3/display/redirect
**Test results:**
- PASSED: 3659
- FAILED: 4
Those are the test failures:
https://ci-builds.apache.org/job/KIE/job/kogito/job/main/job/pullrequest_jobs/job/kogito-runtimes-pr/job/PR-4093/3/testReport/org.kie.kogito.addons.quarkus.knative.serving.customfunctions.it/KnativeServingAddonIT/___/";>org.kie.kogito.addons.quarkus.knative.serving.customfunctions.it.KnativeServingAddonIT.(?)
java.lang.RuntimeException: io.quarkus.builder.BuildException: Build
failure: Build failed due to errors [error]: Build step
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor#startKeycloakContainer
threw an exception: java.lang.RuntimeException:
org.testcontainers.containers.ContainerLaunchException: Container startup
failed for image quay.io/keycloak/keycloak:26.1.3 at
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor.startKeycloakContainer(KeycloakDevServicesProcessor.java:250)
at
java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:732)
at
io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:856)
at io.quarkus.builder.BuildContext.run(BuildContext.java:255) at
org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18) at
org.jboss.threads.EnhancedQueueExecutor$Task.doRunWith(EnhancedQueueExecutor.java:2675)
at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQu
eueExecutor.java:2654) at
org.jboss.threads.EnhancedQueueExecutor.runThreadBody(EnhancedQueueExecutor.java:1627)
at
org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1594)
at java.base/java.lang.Thread.run(Thread.java:840) at
org.jboss.threads.JBossThread.run(JBossThread.java:499)Caused by:
org.testcontainers.containers.ContainerLaunchException: Container startup
failed for image quay.io/keycloak/keycloak:26.1.3 at
org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:351)
at
org.testcontainers.containers.GenericContainer.start(GenericContainer.java:322)
at
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor.lambda$startContainer$4(KeycloakDevServicesProcessor.java:421)
at java.base/java.util.Optional.orElseGet(Optional.java:364) at
io.quarkus.devservices.keycloak.KeycloakDevServicesProcessor.startContainer(KeycloakDevServicesProcessor.java:447)
at io.quarkus.devser
vices.keycloak.KeycloakDevServicesProcessor.startKeycloakContainer(KeycloakDevServicesProcessor.java:200)
... 10 moreCaused by: org.rnorth.ducttape.RetryCountExceededException:
Retry limit hit with exception at
org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:88)
at
org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:336)
... 15 moreCaused by:
org.testcontainers.containers.ContainerLaunchException: Could not create/start
container at
org.testcontainers.containers.GenericContainer.tryStart(GenericContainer.java:556)
at
org.testcontainers.containers.GenericContainer.lambda$doStart$0(GenericContainer.java:346)
at
org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:81)
... 16 moreCaused by:
org.testcontainers.containers.ContainerLaunchException: Timed out waiting for
log output matching '.*Keycloak.*started.*' at
org.testcontainers.containers.wait
.strategy.LogMessageWaitStrategy.waitUntilReady(LogMessageWaitStrategy.java:47)
at
org.testcontainers.containers.wait.strategy.AbstractWaitStrategy.waitUntilReady(AbstractWaitStrategy.java:52)
at
org.testcontainers.containers.GenericContainer.waitUntilContainerStarted(GenericContainer.java:909)
at
org.testcontainers.containers.GenericContainer.tryStart(GenericContainer.java:492)
... 18 more
https://ci-builds.apache.org/job/KIE/job/kogito/job/main/job/pullrequest_jobs/job/kogito-runtimes-pr/job/PR-4093/3/testReport/org.kie.kogito.addons.quarkus.kubernetes/ConfigValueExpanderIT/test/";>org.kie.kogito.addons.quarkus.kubernetes.ConfigValueExpanderIT.test
java.lang.RuntimeException: io.quarkus.builder.BuildException: Build
failure: Build failed due to errors [error]: Build step
io.q
