Revision 0ec2ce46 lib/client/gnt_node.py
b/lib/client/gnt_node.py | ||
---|---|---|
827 | 827 |
all_changes = [opts.master_candidate, opts.drained, opts.offline, |
828 | 828 |
opts.master_capable, opts.vm_capable, opts.secondary_ip, |
829 | 829 |
opts.ndparams] |
830 |
if all_changes.count(None) == len(all_changes): |
|
830 |
if (all_changes.count(None) == len(all_changes) and |
|
831 |
not (opts.hv_state or opts.disk_state)): |
|
831 | 832 |
ToStderr("Please give at least one of the parameters.") |
832 | 833 |
return 1 |
833 | 834 |
|
835 |
if opts.disk_state: |
|
836 |
disk_state = utils.FlatToDict(opts.disk_state) |
|
837 |
else: |
|
838 |
disk_state = {} |
|
839 |
|
|
840 |
hv_state = dict(opts.hv_state) |
|
841 |
|
|
834 | 842 |
op = opcodes.OpNodeSetParams(node_name=args[0], |
835 | 843 |
master_candidate=opts.master_candidate, |
836 | 844 |
offline=opts.offline, |
... | ... | |
841 | 849 |
force=opts.force, |
842 | 850 |
ndparams=opts.ndparams, |
843 | 851 |
auto_promote=opts.auto_promote, |
844 |
powered=opts.node_powered) |
|
852 |
powered=opts.node_powered, |
|
853 |
hv_state=hv_state, |
|
854 |
disk_state=disk_state) |
|
845 | 855 |
|
846 | 856 |
# even if here we process the result, we allow submit only |
847 | 857 |
result = SubmitOrSend(op, opts) |
... | ... | |
905 | 915 |
[FORCE_OPT, SUBMIT_OPT, MC_OPT, DRAINED_OPT, OFFLINE_OPT, |
906 | 916 |
CAPAB_MASTER_OPT, CAPAB_VM_OPT, SECONDARY_IP_OPT, |
907 | 917 |
AUTO_PROMOTE_OPT, DRY_RUN_OPT, PRIORITY_OPT, NODE_PARAMS_OPT, |
908 |
NODE_POWERED_OPT], |
|
918 |
NODE_POWERED_OPT, HV_STATE_OPT, DISK_STATE_OPT],
|
|
909 | 919 |
"<node_name>", "Alters the parameters of a node"), |
910 | 920 |
"powercycle": ( |
911 | 921 |
PowercycleNode, ARGS_ONE_NODE, |
Also available in: Unified diff