Camunda BPM SpringBoot 1.2.0 released

Good news for all users of the Spring Boot community extension (and those who want to become users):
Version 1.2.0 has been released!

The two major improvements are:

  • Support of latest (>7.4) engine features and
  • full utilisation of the camunda webapp.

You now can run a complete 7.5 webapp in your spring boot container and use embedded forms in your processes!

What’s new?

Let’s have a quick look at the main improvements. For the full list of changes, click here.

Features

  • support DMN
    • running dmn engine inside spring boot app
    • autodeployment of DMN files
  • support external tasks
    • spring boot app can run async service tasks and provides REST api to access them via external consumers
  • support webapp
    • you can now easily run all 3 camunda webapps (tasklist, cockpit, admin) inside a spring boot application.
    • This feature requires camunda bpm version 7.5.0, in 7.4.0 you will still have some flwas.
    • embedded forms in webapp can be used, just put them in
      src/main/resources/static
  • latest versions
    • spring boot: 1.3.5 (introducing spring 4.2)
    • camunda: 7.5.0
  • introduce SpringBootProcessApplication allowing deployment via processes.xml configuration

Fixes

  • using history-level "auto" now works, allowing multiple engines connected to a single datasource to automatically adopt to the configured history level
  • various bean problems in cloud context (hystrix, eureka) solved, it should now be save to use camunda spring boot application in complex multi-node setups.

The extension got more contributors during the last 6 month, so many thanks to Dimitri for the cloud configuration fixes and Ron and bkumar for the (still pending, sorry guys) security patches!

How to use it?

As always, the extension is published on maven central, so if you are using maven, just add the dependency:

<dependency>
  <groupId>org.camunda.bpm.extension</groupId>
  <artifactId>camunda-bpm-spring-boot-starter([-rest|-webapp])</artifactId>
  <version>1.2.0</version>
</dependency>

and then create a simple process application like this one:

@SpringBootApplication
@ProcessApplication
public class WebappExampleProcessApplication extends SpringBootProcessApplication {

  public static void main(String[] args) {
    SpringApplication.run(WebappExampleProcessApplication.class, args);
  }

}

Make sure to check out the examples and the documentation.

As always: If you like this extensions: Tell your friends and colleagues. If you find some bugs or missing features: Tell us.
And if you like to join or help out: we happily accept pull requests.

Finally a short personal note: I will give a short presentation and demo of this extension on the camunda community day in Berlin in september, so make sure to be there!

  • Orchestrating Cloud Events with Zeebe

    Disclaimer: This blog post is about Cloud-Native software, containers, Cloud Events, and Workflows. It describes a concrete example that you can run yourself using Kubernetes, Helm, and Zeebe.io. You should be familiar with Kubernetes and Helm to follow along and will learn about zeebe.io and cloudevents.io on your way. While working with Kubernetes the chances are quite high that you’ll find services written in different languages and using different technologies stacks. CloudEvents (cloudevents.io / CNCF spec) was born to enable these systems to exchange information by describing their events in a standard way, no matter which transports these services are using (HTTP, Messaging AMPQ/JMS, Protobuf, etc).  In such scenarios, where you have events being produced and consumed by different systems, there are common requirements that start to arise when...

    Read more
  • How we automatically keep our Documentation Screenshots...

    When you open the Camunda User Guide, you’ll see that there are many screenshots explaining the different functions and options the product offers. We hope that you, as a user, find those screenshots helpful. But for us as developers, creating and keeping those screenshots up to date has always been a pain. https://unsplash.com/photos/dDppsuM_UpE At the time of writing, the user guide for Camunda Optimize contained 94 screenshots. And with every release we add more functionality, which means the number of screenshots continuously grows. When we change the look of buttons or add a new section to the header, we need to update every screenshot that has a button or header in it. In practice, this meant we were manually recreating every...

    Read more
  • Git push to deploy to Camunda Cloud

    Using the Zeebe Action for GitHub, you can automate your GitHub repo to deploy BPMN models to Camunda Cloud when you push to a specific branch. In this quick tutorial, I show you how to configure your GitHub repo to deploy all BPMN models in the bpmn directory of your repo on a push to master. If you don’t have a Camunda Cloud account yet, you can join the public beta to get one. Create a client in Camunda Cloud Go into your Zeebe cluster in the Camunda Cloud console, and create a new client. You might want to name it “GitHub-Automation” so you know what it is for. Copy the “Connection Info” block by clicking the copy icon in the lower right-hand...

    Read more