Control de versiones de propiedades con Spring Cloud Config
Probablemente me falta algo aquí, pero ¿cuál es una buena solución para el control de versiones de propiedades?
Por ejemplo, en un escenario de implementación azul-verde con cambios en el valor de la propiedad (la versión anterior de la aplicación consume el valor anterior, la nueva versión requiere el nuevo valor), ¿cómo se asegura de que ambas versiones de su aplicación puedan coexistir con éxito (considerando posibles reinicios y retrocesos)?
Una opción sería crear nuevos nombres de propiedades para las propiedades que necesitan nuevos valores aplicados. Esto, por supuesto, no es una buena opción ya que necesitamos rastrear todos los usos de esa propiedad en la base del código y actualizar su referencia en consecuencia. Tampoco es agradable desde una perspectiva conceptual.
Otra opción es tener una rama para cada versión. Si bien esto podría funcionar muy bien para este escenario, imagino un infierno de rama / etiqueta a medida que escalamos al repositorio de configuración para múltiples aplicaciones y sus respectivas ramas evolucionan en diferentes direcciones.
Una solución al infierno de la rama sería tener un repositorio de configuración separado para cada aplicación. Pero, creo que esto en cierto sentido anula el propósito del servidor de configuración, ya que agrega sobrecarga.
¿Algún otro enfoque?