Free tool

Camunda 7 migration check

What has to change in your Camunda 7 setup, depending on where it moves? Answer up to 18 questions, and the result shows what each answer means for Camunda 8, CIB seven, Operaton and staying on Camunda 7 Enterprise.

Your answers stay in your browser. Nothing is sent and nothing is stored.

The migration page names nine destinations. This check reads your answers against four of them. For all nine, Fluxnova, EximeeBPMS, OrqueIO, CadenzaFlow and Flowable included, we read your Camunda 7 setup and tell you in writing which destination fits and why the other eight do not. We do not quote an effort figure for a migration before we have read your setup.

The questions

  1. 1. Which Camunda 7 edition do you run?
    How to find out

    Enterprise runs with a license key, and its patch versions carry the suffix -ee, for example 7.24.6-ee.

  2. 2. Which minor version does the engine run?
    How to find out

    The version of the camunda-bom or camunda-engine dependency in your pom.xml or build.gradle.

  3. 3. How is the engine set up?
    How to find out

    Embedded means the engine starts with your application, for example through the Spring Boot starter. Shared means it runs in the application server and several applications use it. Remote means your code only calls it over REST.

  4. 4. Does your code rely on running in the same transaction as the engine?
    How to find out

    For example Spring or JTA transactions that commit or roll back your application's database writes together with engine calls.

  5. 5. Do your BPMN models call Java delegates?
    How to find out

    Search the .bpmn files for camunda:class and camunda:delegateExpression.

  6. 6. Do expressions in your models call Spring beans or Java methods?
    How to find out

    Expressions such as ${myService.check(order)} in camunda:expression, on gateways or in listeners.

  7. 7. Does your code use engine internals?
    How to find out

    Casts to classes in org.camunda.bpm.engine.impl, ThreadLocal state such as Context, or the engine's transaction manager. A search for "engine.impl" in the code shows it fast.

  8. 8. Do you have external task workers?
    How to find out

    Service tasks with camunda:type="external" in the models, and programs that fetch those tasks through the REST API.

  9. 9. Do you run process engine plugins, or your own Cockpit, Tasklist or Admin plugins?
    How to find out

    Engine plugins implement ProcessEnginePlugin. Webapp plugins usually ship as their own JAR or as scripts in the webapp folder.

  10. 10. Which forms do your user tasks use?
    How to find out

    The camunda:formKey or camunda:formRef attribute on the user tasks shows it. Generated forms show up as a camunda:formData element in the extension elements.

  11. 11. Do you use CMMN case models?
    How to find out

    Files ending in .cmmn in the project.

  12. 12. Do you run one engine per tenant?
    How to find out

    Several process engines in one configuration, one for each tenant.

  13. 13. What happens to instances that are still running when you switch?
    How to find out

    Cockpit shows the running instances per process and how old the oldest ones are.

  14. 14. Must the history of completed instances move too?
    How to find out

    For example because audits or reports rely on it.

  15. 15. Do process variables hold serialized Java objects?
    How to find out

    In Cockpit: variables of type Object with the format application/x-java-serialized-object.

  16. 16. Which database does the engine run on?
    How to find out

    The JDBC URL in the engine's configuration.

  17. 17. Which Java version does the application run on?
    How to find out

    java -version on the server, or maven.compiler.release in the pom.xml.

  18. 18. Do you have automated tests that run your processes?
    How to find out

    JUnit tests with ProcessEngineRule, ProcessEngineExtension or camunda-bpm-assert.

Your result

As soon as you answer the first question, this shows what your answers mean for each destination.

Have your setup read

We have migrated multiple, different applications off Camunda 7.

In The Migration Roadmap we go through your Camunda 7 setup together with you and tell you in writing which of the nine destinations fits and why the other eight do not. The recommendation can also be to stay on Camunda 7 Enterprise.

Book the roadmap session