
Camunda Deploy
CertifiedDeploy BPMN, DMN and form resources to a Camunda cluster
Camunda Deploy
Deploy BPMN, DMN and form resources to a Camunda cluster
Sends one deployment command holding every resource, so either all of them are deployed or none is.
A resource value is either the file content itself or a kestra:// internal storage URI produced by an earlier task.
type: io.kestra.plugin.camunda.DeployExamples
Deploy a BPMN process stored as a Namespace File.
id: deploy_camunda_process
namespace: company.team
tasks:
- id: deploy
type: io.kestra.plugin.camunda.Deploy
restAddress: "{{ secret('CAMUNDA_REST_ADDRESS') }}"
clientId: "{{ secret('CAMUNDA_CLIENT_ID') }}"
clientSecret: "{{ secret('CAMUNDA_CLIENT_SECRET') }}"
authorizationServerUrl: "{{ secret('CAMUNDA_AUTH_SERVER_URL') }}"
audience: "{{ secret('CAMUNDA_AUDIENCE') }}"
resources:
order-fulfillment.bpmn: "{{ read('order-fulfillment.bpmn') }}"
Deploy a process and a decision table together against a local development cluster.
id: deploy_camunda_resources
namespace: company.team
tasks:
- id: deploy
type: io.kestra.plugin.camunda.Deploy
restAddress: http://localhost:8080
resources:
order-fulfillment.bpmn: "{{ read('order-fulfillment.bpmn') }}"
discount.dmn: "{{ read('discount.dmn') }}"
- id: log_deployment
type: io.kestra.plugin.core.log.Log
message: "Deployed {{ outputs.deploy.processes | length }} process(es) as deployment {{ outputs.deploy.deploymentKey }}"
Properties
resources *Requiredobject
Resources to deploy, keyed by resource name
The key is the resource name and must end with .bpmn or .xml for a process, .dmn for a decision, or .form for a form.
The value is either the resource content or a kestra:// internal storage URI.
audience string
OAuth2 audience
Required for OAuth2 against a self-managed cluster. The audience claim the identity provider must issue the token for, commonly zeebe-api. Derived from the cluster for Camunda SaaS, so leave it unset there.
clientId string
OAuth2 client ID
Set together with clientSecret and either authorizationServerUrl (self-managed) or clusterId (SaaS).
clientSecret string
OAuth2 client secret
Set together with clientId.
clusterId string
Camunda SaaS cluster ID
Switches the client to SaaS mode, where restAddress and grpcAddress are derived from the cluster ID and region.
grpcAddress string
gRPC gateway address of the Camunda cluster
For a self-managed cluster, for example http://localhost: 26500. Setting it without restAddress sends this task's commands over gRPC instead of REST.
password string
Password for Basic authentication
Must be set together with username.
region string
Camunda SaaS region
For example bru-2. Only used with clusterId.
restAddress string
REST API base URL of the Camunda cluster
For a self-managed cluster, the orchestration cluster address, for example http://localhost: 8080. Commands use the REST API unless only grpcAddress is set.
tenantId string
Camunda tenant ID
Camunda's own multi-tenancy identifier, unrelated to the Kestra tenant the flow runs in.
Applied to every command this task sends. Defaults to <default>, which is the only tenant
on a cluster that does not have multi-tenancy enabled.
transport string
RESTGRPCWhich API to send commands over
Defaults to gRPC on Camunda SaaS, and on a self-managed cluster to the API implied by
whichever address is set, falling back to REST when both or neither are.
SaaS defaults to gRPC because a default free-tier cluster answers 404 Not Found on the REST
base the client derives, while gRPC succeeds with the same credentials. Set REST to opt
back in if your cluster serves it.
username string
Username for Basic authentication
Must be set together with password. Mutually exclusive with the OAuth2 properties.
Outputs
decisions array
Decisions deployed by this command
io.kestra.plugin.camunda.Deploy-DeployedDecision
Key assigned to this decision
DMN decision ID
DMN decision name
Version of the decision
deploymentKey integer
Key of the created deployment
forms array
Forms deployed by this command
io.kestra.plugin.camunda.Deploy-DeployedForm
Form ID
Key assigned to this form
Name of the deployed resource
Version of the form
processes array
Processes deployed by this command
io.kestra.plugin.camunda.Deploy-DeployedProcess
BPMN process ID, the id attribute of the process element
Key assigned to this process definition
Name of the deployed resource
Version of the process definition
tenantId string
Tenant the deployment belongs to