Single deployable package creation from customization and ISV package – Microsoft Dynamics 365 for Finance and operations

Posted by

Upgrade Dynamics 365 Finance and operations environment – Third-Party ISVs(No Source code) and custom model(source code)

Scenario:

2 ISV packages(no source code)

2 Custom models(source)

Sandbox Environment is on Application release 8.0 and PU 24

Target version for sandbox environment Application release 10.0.4 and PU 28

The problem in the simple upgrade:

unable to merge 4 packages(2 ISVs, 1 custom model and 1 application release 10.0.4 ,PU28 package)

Maximum only 2 packages can be merged in the asset library.

Solution:

To create one package for ISVs and custom model, need build environment and code should be under source control

Then one package of latest application release and custom package can be merged into one package and apply to a sandbox environment to upgrade

 

Steps:

  1. Custom models source code add to source control
    1. After you install the custom model, follow these steps to add the new model to source control.
    2. Open Source Control Explorer by clicking View > Other Windows > Source Control Explorer.
    3. Navigate to the metadata folder that is mapped on this development VM, such as MyProject/Trunk/Main/Metadata.
    4. In the metadata folder, find the folder for the package that contains the new model. Right-click the package folder, and then click Add Items to Folder.
    5. In the Add to Source Control dialog box, select the Descriptor folder and the folder that has the name of the model. Some models may also contain referenced DLLs in the bin folder. If these exist you’ll need to also include the appropriate DLL files from the bin folder. Once all files have been selected, click Next.
    6. Review the items that will be added, and then, when you’re ready, click Finish.
    7. Open the Pending Changes window from the Team Explorer pane or by clicking View > Other Windows > Pending Changes.
    8. Review the changes, enter a check-in comment, and then click Check In.
  2. Add ISVs package to source control follow below steps
    1. After you install the deployable package on a development VM, follow these steps to add the package to the source control.
    2. Open Source Control Explorer by clicking View > Other Windows > Source Control Explorer.
    3. Navigate to the metadata folder that is mapped on this development VM, such as MyProject/Trunk/Main/Metadata.
    4. Right-click the Metadata folder, and then click Add Items to Folder.
    5. In the Add to Source Control dialog, double-click the folder that has the package name that you want to add to source control.
    6. Select all the folders except XppMetadata and Descriptor, if they exist, and then click Next.
    7. On the next page, on the Excluded items tab, select all files by clicking one of the files and then pressing Ctrl+A. At the bottom of the selection window, click Include item(s). When you’re ready, click Finish.
    8. Open the Pending Changes window from the Team Explorer pane or by clicking View > Other Windows > Pending Changes.
    9. Review the changes, enter a check-in comment, and then click Check-In.
  3. Deploy build environment
    1. During deployment, Build Agent Name keep the same as the build environment name
    2.  Branch Name should be a source control branch name of the project
  4. Use DevOps pipeline to create one package
    1. Click on Pipeline -> pipeline and then click on run pipelineScreen Shot 2019-09-05 at 10.52.56 AM.png
    2. Screen Shot 2019-09-05 at 10.54.29 AM.png
  5. Once pipeline is completed the one deployable package will be created on the build VM.
  6. Upload the build package on the Asset library, validate
  7. Apply on the UAT environment and production as well if all goes well.

 

Please comment if you need any clarification or you are facing some issue on any step.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.