I'm setting up a VSTS CI environment for the first time. Our application has several components including a Web App and several API apps. We are using development, testing and production environments.
I currently have separate release definitions for each component on each environment. Recently, someone suggested running a single release definition that took all of the artifacts and deployed them across multiple environments.
What's best practice in a situation like this? Maintaining several definitions is a pain when something in our environment changes, because I need to edit each of the definitions to correct it. On the other hand, an all-in-one release generates a new release and deploys 5 apps to dev any time any component's repo is updated, which seems a big waste of resources. Any advice welcomed.