When working with Adobe Experience Manager (AEM), many teams encounter challenges while migrating existing workflows from an on-premise setup to the new cloud-based or modern AEM structure. One of the most common issues stems from the changes in workflow storage and runtime model generation.
This article outlines the key steps required to successfully migrate AEM
workflows from the traditional /etc
location to the newer /conf/global/settings/workflows
structure.
Note:
Legacy workflow designs (both design-time and runtime) are held under the following path:
/etc/workflow/models/
Custom workflow designs are held under:
/conf/global/settings/workflow/models/...
Runtime workflow designs (both out-of-the-box and custom) are held under the following path:
/var/workflow/models/
Out-of-the-box workflow launchers are held under the following path:
/libs/settings/workflow/launcher/
Custom workflow launchers are held under:
/conf/global/settings/workflow/launcher/...
Legacy workflow launchers are held under the following path:
/etc/workflow/launcher/
Legacy workflow scripts are held under the following path:
/etc/workflow/scripts/
Custom workflow scripts are held under:
/apps/workflow/scripts/...
1. Verify Existing Workflows in the Legacy Location
Before starting the migration, confirm that all your current workflows exist in the legacy path:
/etc/workflow/models
This ensures you know exactly which models need to be transitioned and helps avoid missing dependencies during migration.
2. Update Workflow Locations
For each workflow model you plan to migrate, update its location reference
from the old /etc
structure to the new /conf
path. The recommended destination is:
/conf/global/settings/workflows/models
You can perform this migration one workflow at a time to minimize potential
errors. Be sure to update any internal or hardcoded URLs or references that
point to the old /etc
path.
3. Synchronize Workflow Models
Once the workflow has been moved to its new location, open it in the AEM Workflow Console and click on the Sync button.
This step is crucial : it generates the corresponding runtime models required for execution in the new environment.
4. Integrate Runtime Models into Your Source Code
After synchronization, locate the newly created runtime models. These are typically stored under the following paths:
/conf/global/settings/workflows/models
/var/workflow/models
Download or export these models and integrate them into your project’s source code repository. This ensures that your workflows are version-controlled and properly deployed across environments.
Now your filter looks as below,
Your filter could look like this (assuming you have your workflow model design and runtime version under appropriate paths)
<filter root="/conf/global/settings/workflow/models/your-workflow-model"/><filter root="/var/workflow/models/your-workflow-model"/>
Conclusion
Migrating workflows from /etc
to /conf may seem complex
at first, but by following these structured steps, you can ensure a smooth
transition. The key is to migrate one workflow at a time, validate
synchronization, and keep your runtime models aligned with your codebase.
This process not only modernizes your workflow architecture but also ensures full compatibility with AEM’s latest standards and best practices.
No comments:
Post a Comment