Closed jason-magnetic-io closed 6 years ago
@dragoslav how can this be best achieved?
During deployment sync these changes can be detected and specific request can be sent to container driver. Now it is only about updating/deleting, this should be a restart (or update with restart) - new feature. In case of ports, environment variables etc. scheduler must restart existing instances (containers). In case of changing the scale just number of instances is changed and traffic is not interrupted - assuming at least one instance can still handle it.
In case of Rest API, when a blueprint is edited there is no side effect on any deployment. That means if blueprint is later merged again, in this example with change of ports, vars etc. deployment services may be restarted unintentionally. I would add an extra check, e.g. only if restart=true
flag is set proceed, otherwise request is invalid - in case of UI an user would need to confirm the restart.
Goal:
Editing one or more of the following parameters in a deployment should trigger an update of the associated service or services in Marathon
Current Behaviour:
scale
(cpu
,memory
,instances
) trigger an update to the service in Marathon.services.breed.environment_variables
, are changed at the same timescale
is changed. The changes to the other parameters are not passed to Marathon.scale
results in the deployment showing asdeploying
in the UI. Eventually the deployment transitions todeployed
but the service in Marathon is not updated.