I am using Spring Boot with embedded process engine. I am also using an empty processes.xml file and process the engine configuration in java code like following:
@Configuration
public class CamundaConfig extends AbstractCamundaConfiguration {
@Override
public void preInit(SpringProcessEngineConfiguration processEngineConfiguration) {
processEngineConfiguration.setGroupResourceWhitelistPattern("[a-zA-Z0-9-]+");
processEngineConfiguration.setDeployChangedOnly(true);
}
}
In my case, the delivered application bundles all needed workflows and deploys all on application start. I want the application to only deploy changed workflows. So i want to set DeployChangedOnly to true.
However, setting this at SpringProcessEngineConfiguration does not have the intended effect. When there is a change in one workflow, it deploys new versions of all workflows.
When i set this property at processes.xml, it works:
<process-application
xmlns="http://www.camunda.org/schema/1.0/ProcessApplication"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<process-archive>
<properties>
<property name="isDeployChangedOnly">true</property>
</properties>
</process-archive>
</process-application>
So i need to move this config into that file, which i wanted to avoid.
Any idea what i am doing wrong, or is this a bug?
I am using version 7.21 of camunda-bpm-spring-boot-starter-webapp