Steps to migrate from zeebe-client 8.5 to 8.6 (using spring)

Hello everyone :wave:

I have a Spring service that uses Zeebe for process orchestration. Currently, I’m using version 8.5 of the Zeebe client along with its Spring dependencies. I’m looking to upgrade to version 8.6 of the Zeebe client and am running into some confusion with the migration steps.

Here’s my situation:
I see (due to spring-zeebe’s README in the community-hub) that I need to migrate from io.camunda.spring:spring-boot-starter-camunda (link) to io.camunda:spring-boot-starter-camunda-sdk (link). Is this assumption correct?

In context to the testing-repository
Additionally, I wanted to update the testing dependencies. Specifically, I was using io.camunda.spring:spring-boot-starter-camunda-test (link) - because some of my process-tests require spring-support.

However, I can’t find a version for 8.6, nor could i find a migration note, telling me that i need to migrate here as well. It seems like 8.6 is only available for zeebe-process-test (link) But in your documentation, there’s a note suggesting that if I want to use it in Spring, I also need to add spring-zeebe-test as a wrapper.

This leaves me unsure about how to proceed with the migration. My questions are:

  • Is there any migration guide I may have missed?
  • Is the note about using spring-zeebe-test as a wrapper still valid for 8.6 (does it need to be changed)?

Thanks in advance! :slight_smile:

I must be blind somehow :person_shrugging:
Have now found this on GitHub in zeebe-process-test

Heads up! We are building a new Java testing library for Camunda 8.6+. The new library will replace Zeebe Process Test eventually. New features: Access to Camunda’s new REST API, official Spring integration, process coverage, improved UX, and more (ref). Stay tuned for updates. :rocket:

Can I assume from this that I can’t meaningfully migrate to 8.6 until this library is available? Is there a plan for when this might be?

On GitHub its potential:8.8 - which could mean that we might must skip 8.6 and 8.7. Using zeebe-process-test alone will probably cause us to rewrite some of our tests.

Hello @emaarco ,

the new testing library is available as documented here:

The available versions are aligned with the platform/zeebe version.

I hope this helps

Jonathan

1 Like

Hi @jonathan.lukas

Thank you for your answer. Yes it helps :slight_smile:
(even if I’m not entirely happy with updating to an alpha version if I want to use 8.6 - and spring-support. But I think that’s a different point)

Having a look in the Getting-Started was probably too easy :see_no_evil:
Anyway - now I know where to find it next time :smiley:

Do you think it might be useful to link this information in the zeebe-process-test? I think that’s one main aspect that caused the initial confusion for me.

Because at the moment there is just this note, referencing to the old spring-library - which has no version 8.6 (and no link to a successor on mvnrepo)

NOTE: If you use Spring and want to write tests, please use spring-zeebe-test as a wrapper around Zeebe Process Test to hook everything into the Spring lifecycle. See Spring Zeebe: Writing test cases for details.

I could (re-)open a pull-request for this.

Hello @emaarco ,

thank you for the suggestion. As camunda-process-test is still in an “early-stage” (means it has not full feature parity with zeebe-process-test), we will not define it as a successor. However, I will forward your feedback to the docs team.

Best regards,
Jonathan

1 Like

Hi @jonathan.lukas

While looking at the docs, i also found that the best-practice testing-example linked here got not updated for zeebe v8.6.

The associated source code is still using zeebe-version 8.5.X (see pom.xml). Moreover i could see:

  • It is not using the spring-zeebe-sdk as described in step 2
  • It is using the spring-boot-starter-camunda-test which wouldn`t be available in 8.6


I would be interested to know how this example would look for 8.6 (or if it is even possible with 8.6) - as it could show how I could migrate to 8.6 & use Spring tests at the same time.

Hello @emaarco ,

thank you for bringing this up.

As far as I know, there is some work in progress here right now.

I forwarded this to our documentation team. At the same time, I am working on updating the payment example:

Here, I am also working on using camunda-process-test to complete the migration.

Best regards,
Jonathan