I'm migrating a microservices ci/cd pipeline from a teamcity+octopus setup to Azure Devops.
We currently have:
- Multiple repos for each service and web site.
- A teamcity ci build which triggers an octopus deployment for each build.
- An overnight scheduled set of integration tests run to test the whole platform and if they succeed then all the dev services are promoted to our nightly environment.
- A manually triggered promotion of all services from nightly->prod.
I'm trying to do something similar in azure devops but that concept of promoting many services/components together seems difficult and a bit ugly using the gates and some custom search for open bugs to prevent the deployment.
Is anyone able to suggest what is best practice for what I'm trying to achieve? Should I have a single release pipeline that pulls in all artifacts from all the repos?