In addition to maintaining composure under pressure, tech support representatives must move swiftly. The time it takes to allocate the ticket to the appropriate person or team increases with the complexity of the process and the number of systems involved. You need an open line of communication going all the way back to software development if you want to help the troubleshooting service achieve its aims.
Every stage of the application lifecycle by DevOps includes planning, working together and testing, delivery, and beyond. When combined with Dynamics 365 CRM, Azure DevOps services can give your software engineering and technical support teams the complete project visibility they require if your company creates and/or hosts online or mobile apps.
Cloud hosting is used to host the majority of settings in Microsoft Dynamics 365 Ecommerce projects. Either Microsoft hosts them on a Microsoft subscription, or a customer subscription hosts them in the cloud. Environments are hosted by Microsoft by default. To give yourself more control over a production or build environment, consider cloud-hosted environments. Consult Stallions Solutions for more details.
Tier 1 Settings for Development
Tier 1 environments are those used for development. To host a development environment, you have three choices:
- One Sandbox Level 1 environment is included with the Commerce application.
- An environment hosted in the cloud that you manage using your personal Microsoft Azure Cloud Framework. The term “cloud-hosted” in Dynamics 365 Lifetime Services refers to this kind of setting (LCS).
- A virtual computer (VM) that you download and host wherever you like.
If your Commerce is actually placing code extensions, we recommend using a development platform with administrator capabilities. You probably wouldn’t be able to download development tools or customize the operating system on your development platform if you didn’t have administrative capabilities.
Your choice of hosting model will affect your finances. By employing Tier 1 infrastructure as a straightforward testing environment or “golden setup environment,” you can cut part of the hosting costs. Your Dynamics 365 license includes a cost-free Tier 1 environment. Even though this method isn’t perfect, it should function for the majority of tasks.
To understand how to set up a development environment so that it is ready for development if you wish to enhance channel elements, see Prep the development platform.
Note
Cloud-hosted environments can be terminated at any time. This ability lowers the cost of hosting.
Downloading a virtual hard disc (VHD) through LCS and hosting it remotely on a server is an alternate hosting method.
VHD images are equivalent to hosted VMs in terms of development capability. The sole distinction is that LCS installations on VHDs are not supported. However, deployments via the command line are supported.
The benefits and drawbacks of each hosting strategy are listed in the following table. You can use Azure data Warehouse to determine the strategy that will serve your project the best.
You can shut down cloud-hosted environments at any time. This capability helps reduce the hosting cost.
A hosting alternative is to download a virtual hard disk (VHD) from LCS and host it locally on a server. From a development perspective, VHD images have the same capabilities as a hosted VM. The only difference is that LCS deployments aren’t supported on VHDs. However, command-line deployments are supported.
Build definitions, environments, and branches
The practice of branching is crucial in software development. The article Branching and Merge Primer outlines the benefits of branching:
Note
Risk and productivity must be balanced in a branch and merging strategy. Working with others increases productivity, therefore you give up the security of working alone. The added work needed to merge software assets in the future comes at a cost to the productivity gains.
Because team members can work simultaneously while using branches, individual software assets are more isolated and under better control However, because you must eventually reconstruct branches into a whole, using branches also necessitates an expansion in merge activities and, thus, risk.
There is no single best method for branching. The project and the scope of its implementation will determine the strategy.
Three code branches are displayed in the accompanying diagram: Dev, Principal, and ProdRel1. The setup order is indicated by the numbers.
The setup is explained in the following. The numbers between brackets are the same as those in the figure above:
Daily work that has to be communicated with other developers but isn’t reliable enough for testing is done on the Dev branch. You could want to have many development branches for various features or goals for larger teams.
The main line is for revisions that have reached a predetermined standard of quality and are prepared for external testing. User acceptability tests, test procedures, integration with the system, and sanity tests following hotfixes may be part of this testing. This branch requires the creation of deployable packages via a build environment. As recommended, you shouldn’t create X++ products in a Level 1 environment.
The ProdRel1 line contains all source code in exactly the same form as it is currently deployed in a manufacturing environment. Although not necessary, a build system can be utilized. The code must be integrated (from Main to ProdRel1) following a production deployment if items from the flagship store are used. By creating a branch for massive capacity, you can provide official builds as needed in the future.
The Retail development kit (SDK) is present in Retailed files on all three branches, along with X++ code (lines, patches, and updates in Metadata directories. Microsoft’s basic code and code modifications are both included in the Retail SDK. Each branch may have a different base code as well as different code extensions.
The Retailed-mirror subdirectory is not used for research or building purposes; rather, it is used to import Microsoft updates to the Retail SDK. Only when the latest version or patch is applied should it be updated.
For small projects, having only two branches (the main branch and the development branch) is fine. The reliability of test builds might be adversely affected by any code submission; therefore, developers must exercise greater discipline.Deployable packages can be created from multiple branches. For every branch that may be built in this situation, you must have a separate build definition. When a build system is deployed, the initial build specification is automatically constructed (the main branch). The builds for other branches can be copied. Small changes must be made to accommodate the
The following high-level actions are used to provide the necessary conditions for development activity to start.
- In Microsoft Azure Divots, deploy a build setup and a blank Main branch.
- Develop environment deployment.
- Make a release branch (such as ProdRel1 in the preceding example) and a development branch (Dev)
- Retail SDK should be included.
- Set up the working environment.
- Optional: Set up a distinct release branch’s build environment.
- Get the build definitions ready.