Users with customizations to Microsoft Dynamics 365 for Commerce need to build a Retail Deployable Package. This package contains the Modern POS, Hardware station, and Self Service installer files. And until version 10.0.16, it also would contain the Retail Server files. However the Retail Server files are not built using another process. In this article I explain how to build a Retail Deployable Package.
Locating the Retail SDK
In order to build a Retail Deployable Package, you must start with getting the Retail SDK files. The Retail SDK files are deployed when you create a cloud hosted environment in LCS. And these files are updated when you apply any update packages to this environment. I will go over the steps.
First create a cloud hosted environment in LCS. This is your development environment for Microsoft Dynamics 365 F&O. Then remote desktop into the environment. Go to K:\RetailSDK. This is the folder that contains the Retail SDK files. That said, if you have applied packages to update the development environment, there will exist a folder K:\RetailSDK\Update. In this folder, find the folder with the most recent date. Inside this folder will also contain the most recent version of the Retail SDK files.
Open the Microsoft-version text file in this folder. It will show you what builder number of the Retail SDK you have. In my case, the Microsoft-version text file contains the number 10.0.689.20017. Go to this site to determine what Version number you have. I see that my build number corresponds with Version 10.0.16.
Next, the name of the folder you are currently in has a long name. Unfortunately it is so long that if you try to copy the contents of this folder anywhere, windows will have trouble. So first, re-name the folder you are in to something short. Then, I recommend copying the folder to a new location, such as C:\Retail\10-Dev. This way, the files in the K drive are left alone as a backup.
Building The Retail Deployable Package
The next step in the old process was to build the files in the Retail SDK. And doing so produces what is called a ‘Retail Deployable Package’. Again, the purpose of reviewing the old steps for you to understand what has changed.
Go to Windows>Start and type in developer command prompt. Right click the Developer CommandPrompt for VS 2017 application and select Run as administrator.
In the Developer Command Prompt window, type the following:
cd c:\retail\10-dev
If you put your RetailSDK files in another location, go to that directory instead.
Finally type the following to build the Retail SDK files:
msbuild /p:Configuration=Release
The system will run about 5 minutes. There is a lot that occurs during this process. But at a high level the system downloads any dlls that it needs, builds all the solutions, and finally generates the Retail Deployable package. You will likely receive warnings, but the important thing is that you do not receive error messages. If you receive error messages, then the package will not generate.
After the process has run, go the following location in a windows file explorer window to locate the Retail Deployable Package zip file. Your initial path may be different if you put the Retail SDK somewhere else. But the Retail Deployable package is in the Packages\RetailDeployablePackage folder.
C:\Retail\10-Dev\Packages\RetailDeployablePackage
Deploying the Retail Deployable Package
Open a browser and go to lcs.dynamics.com. Sign in. Then select your project.
Go to the three lines button, and select ‘Asset Library’. This is where the process is different depending on what version you are using.
Before Version 10.0.16
Before Version 10.0.16, in the Asset Library, go to the Software Deployable Packages tab. Click the plus button and upload the Retail Deployable Package zip file. This package then can be applied to your environment.
10.0.16 And Later
Starting with Version 10.0.16 and onward the process has changed. Now, after building a Retail Deployable Package, you no longer upload the package to the Asset Library and deploy to an environment. Instead, you need go to the Retail Self Service package tab in the Asset Library.
Once there, click the plus button to upload the installer files directly. The installer files are located in the Packages\RetailSelfService\content.folder\RetailSelfService\Packages after building a Retail Deployable Package. So in my case, the installers are located here:
C:\Retail\10-Dev\Packages\RetailSelfService\content.folder\RetailSelfService\Packages
Please see my article on to Deploy Commerce Self-Service Packages for the next steps after that.
To deploy the Retail Sever components, this process has changed starting in 10.0.16. These files are deployed using a Commerce Scale Unit Package. Please see this article for details on how to build and deploy this type of package.
Cloud POS
One disclaimer. If you have changes to the POS user interface, in order to update the Cloud POS on the Cloud Scale Unit, you do still need to upload the Retail Deployable Package to the asset library. Then apply the package directly the Cloud Scale Unit. You no longer apply this to the F&O environment. And you only need to do this if you have user interface changes in the POS.
Conclusion
In this article we went over the steps to generate the retail deployable package. This process is still needed to build the Modern POS, Hardware station, and Self Service installers. However starting with 10.0.16, it is no longer needed to build and generate the files needed when customizing the Retail Server. This is now done through generating a Commerce Scale Unit Package, and deploying this package.
Hi Peter
Great article
A doubt for database channel extensions (SQL scripts), I understand that they must be placed in the path “Database\Upgrade\Custom” before generating the package, these scripts should also be seen displayed somewhere in the path “Packages\RetailDeployablePackage\content.folder” ? Since I don’t place them anywhere.
Is this correct ? or something I’m doing wrong. My Channel Database Extensions are used by CPOS
(Version Before 10.0.16)
Thanks.