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
