Skip to main content

Notifications

Announcements

No record found.

Microsoft Dynamics CRM (Archived)

CRM upgrade in production - Manual patch creation

Posted on by

Hi All,

In my current company, we are having MS Dynamics 365.  We deliver projects working on multiple front ends and use CRM as a backend system.

For the production updates, currently we prepare only patches from the solution and apply the same to upgrade the Production environment.  This is totally developer dependent and manual.


I am looking for some options to automate this patch creation process.   Please advise if we have any options.

*This post is locked for comments

  • Kokulan Profile Picture
    Kokulan 18,048 on at
    RE: CRM upgrade in production - Manual patch creation

    Yes sure, i will try my best :)

  • Mustaque Profile Picture
    Mustaque on at
    RE: CRM upgrade in production - Manual patch creation

    Thanks Kokulan.   I will check with my development team and confirm how this suggestion helps us.  Will give you an update in a week or two as we are in middle of sprint delivery.

  • Verified answer
    Kokulan Profile Picture
    Kokulan 18,048 on at
    RE: CRM upgrade in production - Manual patch creation

    Hi Mustaque,

    You could consider the following steps to get rid of the Excel Sheet first.

    01. On all your Dev environments, you could ask your Devs to have the same solution name. If they do, when the solution is imported on your SIT environment from different DEV environments, it will automatically merge. if the solution names are different, they just have to manually edit the unique name of the solution as described in the link below

    rajeevpentyala.com/.../merging-solutions-in-crm-2011

    Once you successfully done the above step, you should now have just on solution on your SIT that has all the changes

    Next challenge is how to create a standard patch with all the changes in.

    I did not get time to try this out but here how you could do that i think

    Assumptions : Final solution on Dev is called  lets say MarchChanges,  base solution on SIT is called lets say  BaseSolution

    01. If you click a Clone A Patch, it will create the  Empty Patch Solution. Now we need to get the all the components from MarchChanges to this Patch solution. You can add manually but looking at all the components from MarchChanges but then there is room for mistakes so what about if you try the following

    • Export both March Changes and Empty Patch solution from SIT as un-managed.
    • Delete the Patch Solution from SIT
    • Unzip both solutions and copy Unique Name, Version and Description from  Empty Patch Solution to March Changes solution.xml, zip the MarchChanges and Import back to SIT

    You should now have a Patch solution with all the components.

    Next step you can export this as managed patch and import on to UAT or Live

    The above suggestion is one way  to improve your process but it does have manual steps involved.

    If you want a clean process all the way through to Live, you could do the following

    01. Have the base solution in all your Dev environments

    02. Changes made by Devs on each Dev is a patch -  Devs will have to be in Sync so that they dont use the same Patch version number when they create patch

    03. On your SIT you will have  multiple Patches - Dev1Patch, Dev2Patch, Dev3Patch

    04. When its ready to go UAT or Live, you will have to export the each as separate patches and deploy them to target environments

    Once benefit to keeping separate patch is that Dev1Patch might be rejected by your UAT testing but 2 and 3 can still go Live

    Hope this makes sense

  • Mustaque Profile Picture
    Mustaque on at
    RE: CRM upgrade in production - Manual patch creation

    Hi Kokulan,

    Yes as you said, currently we use the Contact Management Solution as shared across 3 projects – individual CRM developers working separately and then updating SIT from the Dev environment directly.

    Thanks,

    Mustaque  

  • Kokulan Profile Picture
    Kokulan 18,048 on at
    RE: CRM upgrade in production - Manual patch creation

    Hi

    Just wanted check the following before I respond with my suggestions.

    Am I correct in assuming that the CRM Customizations or Extensions is done by your developers on multiple Dev instances and then the changes they make are exported from each environment and deployed to SIT (using un-manged patch solutions). And then they also keep the excel file up-to-date with the list of components that changed?

  • Mustaque Profile Picture
    Mustaque on at
    RE: CRM upgrade in production - Manual patch creation

    Thanks Gokul. Nandri!

    But I would like you to review the below patch creation process in my current organization and let me know your suggestions where we can automate.

    1.  All CRM changes are documented in an excel file (all entities that are changed / added)

    2.  Create a temporary solution in the SIT environment where all the release items are qualified.

    3.  Copy the specific changes into the Solution based on the excel file list.

    4.  Export the solution as Unmanaged using MS OOB.

    5.  Publish into the patch instance (copy of production)

    6.  Clone the patch.

    7.  Add all the components related to the released based on the excel file list.

    8.  Export the solution as Managed using MS OOB.

    9.  Import this into UAT for business sign-off.


    The team informed that they cannot do a full Solution Upgrade into production as they cannot confirm what are the changes from MS that will go along with the project specific changes and they strongly recommend to follow only this patch creation process which is currently manual and driven by the excel file list.

    Please give your suggestions.


    Thanks

  • Verified answer
    Kokulan Profile Picture
    Kokulan 18,048 on at
    RE: CRM upgrade in production - Manual patch creation

    Hi

    You can certainly automate this process using Build tools.

    The following is one of the best tools you could use with TFS (On Prem) or AzureDev Ops (Online).

    I would recommend you use AzureDev  and the following build tool to automate this

    marketplace.visualstudio.com/items

    For your automation requirement, you may have to use the following task in your build and release

    marketplace.visualstudio.com/items

    01. MSCRM Backup Online Instance - Safe to take backup before any updates

    02. MSCRM Export Solution - Pach created by your developer - you could follow some naming convention for the task to pick up patches

    03. MSCRM Import Solution

    You may also use MSCRM Set Version,

    Some other useful links

    www.youtube.com/watch

    blogs.msdn.microsoft.com/.../introduction-to-devops-for-dynamics-365-customer-engagement-using-yaml-based-azure-pipelines

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

December Spotlight Star - Muhammad Affan

Congratulations to a top community star!

Top 10 leaders for November!

Congratulations to our November super stars!

Tips for Writing Effective Suggested Answers

Best practices for providing successful forum answers ✍️

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 291,280 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 230,214 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,156

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans