Configuration property reference
Reference for all Data Migrator configuration properties, set in the configuration/application.yml file.
camunda.client
Prefix: camunda.client
Read more about Camunda Client configuration options.
| Property | Type | Description |
|---|---|---|
.mode | string | Operation mode of the Camunda 8 client. Options: self-managed or saas. Default: self-managed |
.grpc-address | string | The gRPC API endpoint for Camunda 8 Platform. Default: http://localhost:26500 |
.rest-address | string | The REST API endpoint for Camunda 8 Platform. Default: http://localhost:8080 |
camunda.migrator
Prefix: camunda.migrator
| Property | Type | Description |
|---|---|---|
.page-size | number | Number of records processed per page. Default: 100. |
.job-type | string | Job type used for job activation. Default: migrator. |
.validation-job-type | string | Job type for validation purposes. Optional: falls back to job-type if not defined. Set to DISABLED to disable job type execution listener validation entirely. |
.auto-ddl | boolean | Automatically create/update migrator database schema. Default: false. |
.table-prefix | string | Optional prefix for migrator database tables. Default: (empty). |
.tenant-ids | string | Comma-separated list of tenant ids for which process instances should be migrated during runtime migration. For more information, read tenant in runtime. Default: (empty) (migrate only process instances without assigned tenant id). |
.database-vendor | string | Database vendor for migrator schema. Options: h2, postgresql, oracle. Default: Automatically detected. |
.interceptors | array | List of variable interceptors (built-in and custom) to configure during migration. |
.save-skip-reason | boolean | Whether to persist skip reasons for entities that could not be migrated. Required when using the Cockpit plugin. Default: false. |
.history.partition-count | number | Number of partitions to use for distributing history data. When set, this value takes precedence over querying the topology from the Camunda REST API, so the migrator does not require REST connectivity to a running Camunda 8 cluster (but still requires access to the Camunda 8 database). If not set, the partition count is automatically fetched from the Camunda REST API. |
.history.auto-cancel.cleanup | object | Configuration for history auto-cancel cleanup behavior. See camunda.migrator.history.auto-cancel.cleanup for details. |
.identity.skip-users | boolean | Skip the migration of users (enable when IdP is configured for users). Default: false. |
.identity.skip-groups | boolean | Skip the migration of groups (enable when IdP is configured for groups). Default: false. |
.identity.sync.timeout | number | Timeout for identity sync operations in millis. Default: 3000. |
.identity.sync.poll-interval | number | Polling interval for identity sync operations in millis. Default: 250. |
camunda.migrator.history.auto-cancel.cleanup
Prefix: camunda.migrator.history.auto-cancel.cleanup
Configuration for history cleanup of auto-canceled instances.
| Property | Type | Description |
|---|---|---|
.enabled | boolean | Whether to populate cleanup dates for auto-canceled entities. When false, history cleanup dates are set to null for all auto-canceled instances. Default: true. |
.ttl | period | Time-to-live for auto-canceled history records. The cleanup date is calculated as end_date + ttl. Accepts ISO-8601 duration format (e.g., P6M for 6 months, P1Y for 1 year, P90D for 90 days). Default: P6M (6 months). |
camunda.migrator.interceptors.[n]
Prefix: camunda.migrator.interceptors.[n]
There are two types of interceptors:
- VariableInterceptors for runtime migration
- EntityInterceptors for history migration
The configuration is the same for both types.
| Property | Type | Description |
|---|---|---|
class-name | string | Required. Fully qualified class name of the interceptor (built-in or custom). |
enabled | boolean | Whether the interceptor is enabled. Default: true for all interceptors. |
properties | map | Custom properties (key:value pairs) to configure the interceptor. Properties call setter methods on the interceptor class and pass the value. |
Built-in interceptors
The following built-in interceptors are available and can be disabled:
Validators (reject unsupported types):
io.camunda.migration.data.impl.interceptor.ByteArrayVariableValidatorio.camunda.migration.data.impl.interceptor.FileVariableValidatorio.camunda.migration.data.impl.interceptor.ObjectJavaVariableValidator
Transformers (convert supported types):
io.camunda.migration.data.impl.interceptor.PrimitiveVariableTransformerio.camunda.migration.data.impl.interceptor.StringVariableTransformerio.camunda.migration.data.impl.interceptor.NullVariableTransformerio.camunda.migration.data.impl.interceptor.DateVariableTransformerio.camunda.migration.data.impl.interceptor.ObjectJsonVariableTransformerio.camunda.migration.data.impl.interceptor.ObjectXmlVariableTransformerio.camunda.migration.data.impl.interceptor.SpinJsonVariableTransformerio.camunda.migration.data.impl.interceptor.SpinXmlVariableTransformer
Entity transformers:
io.camunda.migration.data.impl.interceptor.history.entity.ProcessInstanceTransformerio.camunda.migration.data.impl.interceptor.history.entity.ProcessDefinitionTransformerio.camunda.migration.data.impl.interceptor.history.entity.FlowNodeTransformerio.camunda.migration.data.impl.interceptor.history.entity.UserTaskTransformerio.camunda.migration.data.impl.interceptor.history.entity.IncidentTransformerio.camunda.migration.data.impl.interceptor.history.entity.VariableTransformerio.camunda.migration.data.impl.interceptor.history.entity.DecisionInstanceTransformerio.camunda.migration.data.impl.interceptor.history.entity.DecisionDefinitionTransformerio.camunda.migration.data.impl.interceptor.history.entity.DecisionRequirementsDefinitionTransformer
camunda.migrator.c7.data-source
Prefix: camunda.migrator.c7.data-source
| Property | Type | Description |
|---|---|---|
.table-prefix | string | Optional prefix for Camunda 7 database tables. Default: (empty) |
.auto-ddl | boolean | Automatically create/update Camunda 7 database schema. Default: false |
.database-vendor | string | The database vendor is automatically detected and can currently not be overridden. |
.* | You can apply all HikariConfig properties. | |
.jdbc-url | string | JDBC connection URL for the source Camunda 7 database. Default: jdbc:h2:mem:migrator |
.username | string | Username for Camunda 7 database connection. Default: sa |
.password | string | Password for Camunda 7 database connection. Default: sa |
.driver-class-name | string | JDBC driver class for Camunda 7 database. Default: org.h2.Driver |
camunda.migrator.c8
Prefix: camunda.migrator.c8
| Property | Type | Description |
|---|---|---|
.deployment-dir | string | Define directory which resources like BPMN processes are automatically deployed to C8. In case multi-tenancy is enabled, please perform a manual deployment. |
camunda.migrator.c8.data-source
Prefix: camunda.migrator.c8.data-source
If the c8.data-source configuration is absent, the RDBMS history data migrator is disabled.
| Property | Type | Description |
|---|---|---|
.table-prefix | string | Optional prefix for Camunda 8 RDBMS database tables. Default: (empty) |
.auto-ddl | boolean | Automatically create/update Camunda 8 RDBMS database schema. Default: false |
.database-vendor | string | Database vendor for Camunda 8 schema. Options: h2, postgresql, oracle. Default: Automatically detected. |
.* | You can apply all HikariConfig properties. For example: | |
.jdbc-url | string | JDBC connection URL for the target Camunda 8 RDBMS database. Default: jdbc:h2:mem:migrator |
.username | string | Username for Camunda 8 database connection. Default: sa |
.password | string | Password for Camunda 8 database connection. Default: sa |
.driver-class-name | string | JDBC driver class for Camunda 8 database. Default: org.h2.Driver |
logging
Prefix: logging
| Property | Type | Description |
|---|---|---|
.level.root | string | Root logger level. Default: INFO |
.level.io.camunda.migration.data | string | Migrator logging level. Default: INFO |
.file.name | string | Log file location. Set to: logs/camunda-7-to-8-data-migrator.log. If not specified, logs are output to the console. |