The Migration Analyzer & Diagram Converter:
- Analyzes Camunda 7 models (BPMN & DMN) to identify tasks required for migration to Camunda 8.
- Converts those models.
The conversion process can be extended to accommodate special requirements.
See it in action in the Camunda 7 to 8 Migration Example.
To understand what conversions will be applied, have a look at the BPMN Conversion Test Cases YAML - as this lists given Camunda 7 BPMN snippets, and the expected Camunda 8 snippet of the transformed BPMN. For example:
- name: Service Task with delegateExpression
givenBpmn: |
<bpmn:serviceTask id="serviceTask" name="Service Task" camunda:delegateExpression="${myDelegate}" />
expectedBpmn: |
<bpmn:serviceTask completionQuantity="1" id="serviceTask" implementation="##WebService" isForCompensation="false" name="Service Task" startQuantity="1">
<extensionElements>
<zeebe:taskHeaders>
<zeebe:header key="delegateExpression" value="${myDelegate}"/>
</zeebe:taskHeaders>
<zeebe:taskDefinition type="myDelegate"/>
</extensionElements>
</bpmn:serviceTask>
expectedMessages: |
<conversion:message severity="REVIEW">Delegate class or expression '${myDelegate}' has been transformed to job type 'myDelegate'.</conversion:message>
- Installation
- How to Use (Refers to the Camunda Migration Guide)
- How to Extend
You can use the Migration Analyzer & Diagram Converter in the following ways:
- Web Interface: A locally installed web-based wizard for the Migration Analyzer & Diagram Converter, implemented as a Java Spring application. This can be installed
- locally as Java jar,
- using Docker, or
- consumed as SaaS from our free hosted version.
- CLI: A Command-Line Interface for the Migration Analyzer & Diagram Converter, implemented as a Java application.
A free hosted version of the Migration Analyzer & Diagram Converter is available at https://migration-analyzer.consulting-sandbox.camunda.cloud/.
Note that your models are not stored on this platform, and given there is https on transit, your models are safe. However, we don't give any gurantees on this free SaaS version.
You can also install the web application locally.
Requirements:
- Java 17 or higher
Steps:
-
Download the latest Migration Analyzer & Diagram Converter web application: camunda-7-to-8-migration-analyzer-webapp.jar.
-
Run the application. Navigate to the directory where the
.jar
file was downloaded and execute the following command:java -jar camunda-7-to-8-migration-analyzer-webapp.jar
-
Access the web application at http://localhost:8080/.
To run the application on a different port, use the following command:
java -Dserver.port=8090 -jar camunda-7-to-8-migration-analyzer-webapp.jar
You can also run the Migration Analyzer & Diagram Converter using Docker.
-
Pull the latest version of the Docker image:
docker pull ghcr.io/camunda-community-hub/camunda-7-to-8-migration/migration-analyzer:latest
-
Run the Docker container and expose port 8080:
docker run -p 8080:8080 ghcr.io/camunda-community-hub/camunda-7-to-8-migration/migration-analyzer:latest
-
Access the web application at http://localhost:8080/.
The CLI is a standalone Java application.
Steps:
-
Download the latest Migration Analyzer & Diagram Converter CLI application: camunda-7-to-8-migration-analyzer-cli.jar.
-
Run the CLI with the following command:
java -jar camunda-7-to-8-migration-analyzer-cli.jar --help
The typical way is to run it in local
mode and reference your BPMN model file:
java -jar camunda-7-to-8-migration-analyzer-cli.jar local myBpmnModel.bpmn
You can build this project from source using Maven.
Steps:
-
Clone the repository.
-
Run the following command to build the project:
mvn clean package
You can also embed the core diagram conversion as library into your own Java application. This is explained here.
You can extend diagram conversion by leveraging the SPI. You can find an example in the extension example project.
This project is licensed under the Apache License, Version 2.0.