What is the purpose of process definition and process deplyoment?


Can someone please explain what is process definition and what is process deployment?
How those two are connected?
Is there any article describing it?



Here is a link to documentation on process deinition [1]. I like to think of a process defintion as a template for creating process instances…

There are two meanings to process deployment, there is the verb or the act of deploying and there is the noun or deployment. For a process definition to be used, it needs to be deployed to the engine. When deployed to the engine, the process definition will be parsed, stored and references and version management created. Deployment can occur through an API or part of an application container (eg Tomcat) application deployment process.

As a noun, I tend to think of a deployment as a packaging concept. A deployment can contain one or more process definitions or resources. Similar to namespace or classloader, it can be used to resolve particular resource versions. Deployments can be managed through Cockpit. A link to documentation can be found here [2]



[1] https://docs.camunda.org/manual/7.6/user-guide/process-engine/process-engine-concepts/#process-definitions
[2] https://docs.camunda.org/manual/7.6/webapps/cockpit/deployment-view/

1 Like