On Mon, 15 Jun 2015 at 18:16 'Klaus Aehlig' via ganeti-devel <
[email protected]> wrote:

> When converting an instance from plain to DRBD, a secondary
> node has to be chosen. Allow using an IAllocator to do this
> choice.
>
> Signed-off-by: Klaus Aehlig <[email protected]>
> ---
>  lib/client/gnt_instance.py | 11 ++++-------
>  1 file changed, 4 insertions(+), 7 deletions(-)
>
> diff --git a/lib/client/gnt_instance.py b/lib/client/gnt_instance.py
> index 7a49d60..224ee44 100644
> --- a/lib/client/gnt_instance.py
> +++ b/lib/client/gnt_instance.py
> @@ -1399,12 +1399,7 @@ def SetInstanceParams(opts, args):
>
>    # verify the user provided parameters for disk template conversions
>    if opts.disk_template:
> -    if (not opts.node and
> -        opts.disk_template in constants.DTS_INT_MIRROR):
> -      ToStderr("Changing the disk template to a mirrored one requires"
> -               " specifying a secondary node")
> -      return 1
> -    elif (opts.ext_params and
> +    if (opts.ext_params and
>            opts.disk_template != constants.DT_EXT):
>        ToStderr("Specifying ExtStorage parameters requires converting"
>                 " to the '%s' disk template" % constants.DT_EXT)
> @@ -1443,6 +1438,7 @@ def SetInstanceParams(opts, args):
>                                     file_driver=opts.file_driver,
>                                     file_storage_dir=opts.file_storage_dir,
>                                     remote_node=opts.node,
> +                                   iallocator=opts.iallocator,
>                                     pnode=opts.new_primary_node,
>                                     hvparams=opts.hvparams,
>                                     beparams=opts.beparams,
> @@ -1659,7 +1655,8 @@ commands = {
>    "modify": (
>      SetInstanceParams, ARGS_ONE_INSTANCE,
>      [BACKEND_OPT, DISK_OPT, FORCE_OPT, HVOPTS_OPT, NET_OPT] + SUBMIT_OPTS
> +
> -    [DISK_TEMPLATE_OPT, SINGLE_NODE_OPT, OS_OPT, FORCE_VARIANT_OPT,
> +    [DISK_TEMPLATE_OPT, SINGLE_NODE_OPT, IALLOCATOR_OPT,
> +     OS_OPT, FORCE_VARIANT_OPT,
>       OSPARAMS_OPT, OSPARAMS_PRIVATE_OPT, DRY_RUN_OPT, PRIORITY_OPT,
> NWSYNC_OPT,
>       OFFLINE_INST_OPT, ONLINE_INST_OPT, IGNORE_IPOLICY_OPT,
> RUNTIME_MEM_OPT,
>       NOCONFLICTSCHECK_OPT, NEW_PRIMARY_OPT, HOTPLUG_OPT,
> --
> 2.2.0.rc0.207.ga3a616c
>
>
LGTM, thanks

Reply via email to