The Microsoft Power Platform offers Developer environments such as Dataverse for Teams (DV4T) and Trial environments. However, their lifecycles may raise queries due to their "expiry date". This article aims to shed light on how these environments function and helps you prevent unwanted deletions.
Importantly, a Dataverse for Teams environment gets disabled after 90 idle days. If no action is taken within 30 days, the disabled environment gets permanently deleted. Recovery is possible within 7 days after deletion. As for Trial environments, they get removed 30 days post-creation. The challenge lies in tracking multiple environments with different periods of use.
To help users stay on top of this, the author of this article created a handy flow using the Power Platform for Admins connector. It helps track scheduledLifecycleOperations, which contain details about environment deletions and expirations.
Using Power Automate, the author listed all DV4T and Trial environments in an HTML table. The table can be transmitted via email or Excel, stored in SharePoint or Dataverse, or embedded into custom apps. It offers flexibility for developers to tailor it to specific needs.
Developers may use a recurrence trigger to launch the flow in the background. A properties/scheduledLifecycleOperations query enables access to essential expiry information. Subsequently, a JSON parse and filter array helps identify items prone to expiration and deletion.
The workflow will help differentiate between DV4T and Trial environments. This differentiation helps in storing specific values from the scheduledLifecycleOperations array for each environment. The ontology for disabling and deletion differs for DV4T and Trial. For instance, DV4T gets an array with Disable and Delete values while Trial only has a Delete value.
The array values need to be obtained by their index. The flow enhances read-through during testing by adding an optional compose action for environment displayName, name, environmentSku, and scheduledLifecycleOperations. A conditional check determines whether the iteration belongs to a DV4T or a Trial environment, easing the differentiation.
Post loop, the Pieter’s method is used to reference the compose inside the loop. A nicely formatted HTML table showing the listing is created. An expression is used to enhance the table's aesthetics, offering a clear and clean table view.
This flow helps in managing all developer environments on Power Platform more effectively. For more information on this, check out this detailed guide here.
Microsoft Power Platform continues to adapt and evolve to enhance user experience. By leveraging the implemented solutions, like the one shared in this blog, developers can navigate through Power Platform with increased ease and efficiency. The developer community can expect more such improvements and solutions in the future, making Power Platform an even more user-friendly environment.
Read the full article POWER PLATFORM - Developer environments will delete!
Microsoft's Power Platform offers various developer environments such as Dataverse for Teams (DV4T) and Trial environments. These environments differ from the usual Dataverse environments because they come with an 'expiry date'. DV4T environment gets disabled after 90 days of inactivity and if not reacted, can get entirely deleted in 30 days where it can then be recovered within 7 days. Simpler yet, Trials get deleted 30 days post-creation. The increasing number of environments and their infrequent use could become rather challenging to manage, thus leading to inevitable concerns about their 'expiry dates'.
By using Power Platform for Admin's connector's List Environments to periodically list and access environments, it is easier to keep track of imminent disablements or deletions. The flow created under this blog simplifies the management of DV4T and Trial environments by adding them to an HTML table and sending them in an email. While the email method is used here, these environments can be listed in Dataverse, Excel, or even a SharePoint list. It’s also possible to create a custom app to better manage your environments using the Centre of Excellence Starter Kit.
What makes this flow further useful is its ease in customization depending on the individual needs. For instance, it uses a recurrence trigger which makes it feasible to run this flow in the background at any given time of the day. The ease of customization even extends to actions such as parsing returned JSON, filtering the body of the parsed JSON, and looping through the filtered array. While checking for the iteration in the loop, the flow not only identifies if it's a DV4T or a Trial environment, but also pulls up their respective scheduledLifecycleOperations values.
The DV4T environment type returns values for both Disable and Delete, whereas, with a Trial environment, the Delete value is returned. The flow then applies different steps based on the type of environments. These steps include storing the values from scheduledLifecycleOperations and using a compose at the end of the loop (instead of a variable) to make the flow faster. In the final action stage, an HTML table is created, formatted, and made sure to be as elegance as possible by using regular expressions.
This flow further simplifies the task using a JSON schema for the Parse JSON action, allowing you to avoid spending too much time on configuring the schema. It also includes solution files (both managed and unmanaged) which contain the flow and can be directly downloaded from GitHub.
A deep dive into the above topic gives you better insight about managing different types of environments in Microsoft's Power Platform. There are several training courses available that can help you master this:
By undergoing these training courses, any questions you might have about managing developer environments in Power Platform should be addressed efficiently.
Power Platform, Developer Environments, Environment Delete, Power Apps, Microsoft Solutions, Power BI, Power Automate, Platform Development, Power Virtual Agents, Power Platform Administration