locked
Register and Deploy Plug-Ins RRS feed

  • Question

  • Hi everyone,

    I've read guidelines about assembly versioning and solution in SDK:

    The build or revision assembly version number is changed.
    This is considered an in-place upgrade. The older version of the assembly is removed when the solution containing the updated assembly is imported. Any pre-existing steps from the older solution are automatically changed to refer to the newer version of the assembly.

    The major or minor assembly version number, except for the build or revision numbers, is changed.
    When an updated solution containing the revised assembly is imported, the assembly is considered a completely different assembly than the previous version of that assembly in the existing solution. Plug-in registration steps in the existing solution will continue to refer to the previous version of the assembly. If you want existing plug-in registration steps for the previous assembly to point to the revised assembly, you will need to use the Plug-in Registration tool to manually change the step configuration to refer to the revised assembly type. This should be done before exporting the updated assembly into a solution for later import.

    I have some question for the bold one: (CRM Online and On-premise mode)

    For a organization have 2 solution A which has plug-in assembly A. Now I want to update plug-in (Add/Update/Modify registration steps) with solution B which has plug-in assembly B.

    1. Does it mean that after changing the plug-in registration steps to point to newer assembly manually and exporting the solution B as managed (in DEV organization). When I import that managed solution B to PRD organization, I don't need to change the plug-in registration steps again?

    2. If I uninstall solution B, do I need to change the the plug-in registration steps to fallback point to assembly A manually?

    Thanks for your help.


    • Edited by Linh Giang Monday, April 16, 2012 4:25 AM
    Monday, April 16, 2012 4:24 AM

Answers

  • For the question 1, you can include the "Sdk Message Processing Steps" in your solution together with your Plugin Assembly when you export the solution B so that you don't need to change the plug-in registration steps again after importing to the PRD organization.

    Before you import the solution B, you may export and backup the previous assembly A and "Sdk Message Processing Steps" from the PRD organization so that you can simply re-import from that backup after uninstalling the solution B.

    • Marked as answer by Linh Giang Monday, April 16, 2012 8:51 AM
    Monday, April 16, 2012 5:20 AM

All replies

  • For the question 1, you can include the "Sdk Message Processing Steps" in your solution together with your Plugin Assembly when you export the solution B so that you don't need to change the plug-in registration steps again after importing to the PRD organization.

    Before you import the solution B, you may export and backup the previous assembly A and "Sdk Message Processing Steps" from the PRD organization so that you can simply re-import from that backup after uninstalling the solution B.

    • Marked as answer by Linh Giang Monday, April 16, 2012 8:51 AM
    Monday, April 16, 2012 5:20 AM
  • Thanks for your help, Linn Zaw Win!

    For your suggestion 1st: It won't work if assembly B doesn't have one plug-in step registration or more (it might happened). And I wonder if the plug-in step registration can be overwritten by other assembly.

    For your suggestion 2nd: I think that's a good idea:D.

    I'll give it a try, thank you, I really appreciate that.

    Monday, April 16, 2012 8:51 AM
  • Plug-in step registration will be overwritten by other assembly because each "Sdk Message Processing Steps" are unique by Assembly, Entity and Message.

    e.g. There is an Sdk Message Processing Step for Create message of Contact entity with Assembly ABC and when you import Create message of Contact entity with Assembly XYZ, the first step won't be overwritten and those two message will be there in the system as a separate steps.


    Monday, April 16, 2012 9:45 AM