Hi all,
We're a small team of three Power Platform developers, and we've set up dedicated environments for DEV, TEST, and PROD. We also want to be able to see and edit each other's work.
To keep things organized, we try to reuse connection references and environment variables across solutions whenever possible. This approach helps us maintain a tidy list of variables and makes bulk changes easier. Our connections include SharePoint, Excel Online, DataVerse, Outlook, and sFTP, while environment references cover file paths, email addresses, etc. Although these are consistent across solutions, they differ between DEV, TEST, and PROD.
Previously, we only had TEST and PROD environments, resulting in some unmanaged solutions in TEST. Recently, we pushed a managed solution from DEV to TEST, which caused several issues:
- All shared objects are now considered 'owned' by the managed solution.
- There are dependencies 'used by' all unmanaged components that utilize these shared objects.
To address this, we started creating all shared objects in the DEV environment and importing the unmanaged solutions from TEST to DEV. We then deleted everything unmanaged from TEST and reimported them as managed.
My question is: Are there any downsides to keeping shared objects within the solutions? While this allows us to push them as managed, it still creates dependencies between solutions. Could this cause issues in the future?
If this approach is not ideal, what are the alternatives? One alternative I considered is keeping all shared objects in a separate solution and deleting the actual objects (shared connection references and environment variables) from the solutions we migrate between DEV, TEST, and PROD.
I would love to hear your thoughts.