Fetching bpmn/dmn from remote location like github or confluence api

We don’t want to store our BPMN/DMN directly in the app, rather, on startup of the spring application context, we want to fetch the DMN from confluence using confluence API for fetching attachments. Also when we hit the spring boot actuator /refresh endpoint, it will allow us to hotload an updated dmn file on the fly to the app.

We are using spring boot with camunda, and we use the config server to fetch our properties from git.

Is this a correct approach, or does camunda have a more native way of fetching the bpmn/dmn from remote locations?

Hi @bwarnock,

this sounds good so far. Currently, Camunda provides no native way to fetch definitions from remote locations. Note that you can also deploy a new definition via REST API anytime without restarting the app.

However, you should ensure that the job executor is not deployment-aware or your app is registered for the deployment.

Best regards,
Philipp

@bwarnock building on the rest API comment of @Philipp_Ossler, here is a template for having Jenkins deploy to camunda when changes are made to your Git repo
https://github.com/StephenOTT/ProcessProjectTemplate

See the jenkinsfile and the deploy.json