Recently I received a less than usual but quite valid request from one of my clients. The client’s application has a weekly change window when production releases take place, and yes it is in the early morning. Client’s release pipeline has multiple stages, therefore the business owner is often confident about the new build a couple of days before the change window. So the request is that the Production Release could be approved before the change window, say when testers signed off UAT; but the actual deployment would still take place during the change window, say between Thursday 8am and 9am. In this way, the client doesn’t need to approve the change during the change window perhaps while eating breakfast or stuck in traffic.
I took it as a very reasonable request, and I decided to implement it to make the customer happy. After spending sometime on the web, to my surprise, there is no MSFT provided solution to it. The closest one would be a Agentless Delay task which pauses the release for a specified amount of time. Since customer wouldn’t know how much time the release needs to wait till change window, it doesn’t fits our scenario.
There is another feature in ADO Releases called Gates.
“Gates allow automatic collection of health signals from external services, and then promote the release when all the…