Whenever a configuration changes, we propagate the changes to the consuming applications. Consider a case where PORT_NUMBER changes. We would want our CLI to reload the application on the new port. For this, we would like to introduce a new field called requireRestart to both the Secret and Variable entities.
Solution
Update the Secret and Variable models to store the new field. It should be a boolean value, with the default set to false.
Update the service classes to reflect the changes.
In places where we use Redis to emit the changes in configurations (when rolling back or creating a new revision), add another key called requiresRestart to the body.
Description
Whenever a configuration changes, we propagate the changes to the consuming applications. Consider a case where
PORT_NUMBER
changes. We would want our CLI to reload the application on the new port. For this, we would like to introduce a new field calledrequireRestart
to both theSecret
andVariable
entities.Solution
Secret
andVariable
models to store the new field. It should be a boolean value, with the default set tofalse
.create.secret.ts
andcreate.variable.ts
. The fields should be marked optional.requiresRestart
to the body.