Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Allow enable-ha to work regardless of selected model #6421
Conversation
mjs
added some commits
Oct 10, 2016
wallyworld
approved these changes
Oct 11, 2016
Did you also test with a rc3 client which still expects the facade to be a model facade? To simulate what externals clients would be calling.
| @@ -54,23 +54,32 @@ func NewHighAvailabilityAPI(st *state.State, resources facade.Resources, authori | ||
| }, nil | ||
| } | ||
| +// EnableHA adds controller machines as necessary to ensure the | ||
| +// controller has the number of machine specified. |
| @@ -27,6 +27,7 @@ var controllerFacadeNames = set.NewStrings( | ||
| var commonFacadeNames = set.NewStrings( | ||
| "Pinger", | ||
| "Bundle", | ||
| + "HighAvailability", // Exposed for model logins for backwards compatibility. |
wallyworld
Oct 11, 2016
Owner
Can you make this a bug TODO to fix once we very that no external clients use it. Target the bug to 2.0.1
| -to ensure that the specified number of controllers are made available. | ||
| +must itself be highly available. The enable-ha command will ensure | ||
| +that the specified number of controller machines are used to make up the | ||
| +controller. |
wallyworld
Oct 11, 2016
Owner
... are used to make up the controller cluster.
Perhaps? TBH, "...the specified number of controllers...." reads ok to me.
mjs
Oct 11, 2016
Contributor
As per IRC, I'm pretty sure that "controller" is supposed to refer to the cluster (if any).
mjs
added some commits
Oct 11, 2016
|
$$merge$$ |
|
Status: merge request accepted. Url: http://juju-ci.vapour.ws:8080/job/github-merge-juju |
jujubot
merged commit 0a51043
into
juju:master
Oct 11, 2016
mjs
deleted the
mjs:1607170-enable-ha-args
branch
Oct 11, 2016
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
mjs commentedOct 11, 2016
•
Edited 1 time
-
mjs
Oct 11, 2016
juju enable-hanow just works without requiring the controller model be selected.There were a number of things done to make this work and some cleanup too:
apiserver.highavailability.EnableHASinglefunction has been hidden.EnableHAAPI call will now fail if given more than one controller spec. Passing more than one makes no sense. This allowedEnableHAto be somewhat simplified.model-tagfield previously validated (but not used) by theEnableHAAPI. This will not break old clients if they send it, but it is no longer checked.juju enable-hacommand is now a controller command instead of a model command. This means that-m controlleris no longer necessary and the-carg is now available if needed.Fixes https://bugs.launchpad.net/juju/+bug/1607170
QA
Ran
juju enable-hawith various arguments when thedefaultmodel was selected.Also confirmed that an rc3 client can enable HA as before using
juju enable-ha -m controller.