canonical / charm-advanced-routing

This subordinate charm allows for the configuration of policy routing rules on the deployed host, as well as routes to configured services.
0 stars 3 forks source link

Allow for automatically applying routes without running the apply-changes action #25

Closed jneo8 closed 10 months ago

jneo8 commented 10 months ago

The apply-changes action is potentially error-prone, in that if you are not expecting to need to run the action, you may end up deploying nodes which lack the routes you thought you had applied.

I expect there is likely a reason for having these changes be blocked behind an explicit action, but it seems this would be less error-prone, for environments which allow it, for these routes to simply be applied as soon as they are configured.

Without this, any time new nodes are added, the engineer adding the nodes has to remember to run the apply-changes action for any advanced-routing units, rather than just doing a "juju deploy" or "juju add-unit" and letting Juju handle everything.

(I've seen this on a customer cloud - new units of apps were added, but the apply-changes action was never run, resulting in unexpected partial outages when the VIP of those apps got moved to the newly-added units which lacked necessary routes.)


Imported from Launchpad using lp2gh.

jneo8 commented 10 months ago

(by vultaire) I missed this... This already exists.

There's a config option, action-managed-update, which is set to true by default and which requires the action to be run by hand. If we simply set this to false, the issue should be resolved.

However, we should note why the option exists. There was another bug (https://bugs.launchpad.net/charm-advanced-routing/+bug/1866867) which was created because it may not be desirable to have changes to the config trigger changes except explicitly during maintenance windows.

So, with that in mind, the default behavior actually makes sense.

Closing as invalid since the associated option is already implemented.