Netflix / mantis

A platform that makes it easy for developers to build realtime, cost-effective, operations-focused applications
Apache License 2.0
1.42k stars 202 forks source link

[WIP] Add a way to overwrite existing disable task cluster requests #678

Closed serbay-stripe closed 4 months ago

serbay-stripe commented 4 months ago

Context

At Stripe, we're looking to use blue-green deploys for the mantis agents and have drafted a workflow that goes as below. This PR adds the capability to enable a set of agents that were previously disabled using a DisableTaskExecutorsRequest. This is done through adding an optional field overwriteExisting to the request. I tried to keep the changes minimal and backwards compatible. If the overwriteExisting is missing in the request, everything should behave as it did before.

The orchestration workflow we have drafted is as follows:

This kicks off the part of the code that issues ExpireDisableTaskExecutorsRequest and removes the DisableTaskExecutorsRequest stored as we have the overwriteExisting set to true.

Checklist