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
- 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
- Remove the old component, install the new component. This will show the new service name as XYZService:1.1
The problem with this is
- Its a manual process that takes time
- 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?