Expand my Community achievements bar.

Enhance your AEM Assets & Boost Your Development: [AEM Gems | June 19, 2024] Improving the Developer Experience with New APIs and Events

Best Practices - Deploying DSC updates


Former Community Member

FYI, I am using ES1.

When I want to move all my updates from a DEV instance to a PROD instance, I create an LCA.  I am careful to update the version numbers on all my processes so that when I import the LCA, the updated processes will be imported into PROD.  If the process in the LCA has the same version number as the process on PROD, it won't import.

I have not been able to figure out how to accomplish the same thing with a DSC.  At this time, I move my components manually from DEV to PROD and I either

  1. Patch an installed component, which will update the component version (look at AdminUI), but does not update the version in the name.  It will still say XYZService:1.0
  2. Remove the old component, install the new component.  This will show the new service name as XYZService:1.1

The problem with this is

  1. Its a manual process that takes time
  2. if I ever had a need to roll back a component, I can't.  To solve this, I keep a copy of each version of the JAR file I used to install the component.  I can always roll back "manually".  This is completely different than processes of course, which is a simple matter of deactivating the latest version.

One of my thoughts was to create a 2nd <service/> element in my component.xml, but that seems like a lot of work.  What happens when I am on version 1.12?

Anyone have any thoughts on best practices in managing components between DEV and PROD instances?

2 Replies


Level 4

Have you looked into using ANT to deploy your DSC to your livecycle server?  That way you can uninstall and re-install with the new version of the DSC whenever you build/compile the component.