Revision d3cfe525

b/scripts/gnt-cluster
34 34
from ganeti import utils
35 35
from ganeti import bootstrap
36 36
from ganeti import ssh
37
from ganeti import objects
37 38

  
38 39

  
39 40
@UsesRPC
......
70 71
    return 1
71 72

  
72 73
  hvparams = dict(opts.hvparams)
73

  
74 74
  beparams = opts.beparams
75
  # check for invalid parameters
76
  for parameter in beparams:
77
    if parameter not in constants.BES_PARAMETERS:
78
      ToStderr("Invalid backend parameter: %s", parameter)
79
      return 1
80 75

  
81 76
  # prepare beparams dict
82
  for parameter in constants.BES_PARAMETERS:
83
    if parameter not in beparams:
84
      beparams[parameter] = constants.BEC_DEFAULTS[parameter]
77
  beparams = objects.FillDict(constants.BEC_DEFAULTS, beparams)
85 78
  utils.ForceDictType(beparams, constants.BES_PARAMETER_TYPES)
86 79

  
87 80
  # prepare hvparams dict
88 81
  for hv in constants.HYPER_TYPES:
89 82
    if hv not in hvparams:
90 83
      hvparams[hv] = {}
91
    for parameter in constants.HVC_DEFAULTS[hv]:
92
      if parameter not in hvparams[hv]:
93
        hvparams[hv][parameter] = constants.HVC_DEFAULTS[hv][parameter]
84
    hvparams[hv] = objects.FillDict(constants.HVC_DEFAULTS[hv], hvparams[hv])
94 85
    utils.ForceDictType(hvparams[hv], constants.HVS_PARAMETER_TYPES)
95 86

  
96 87
  for hv in hvlist:

Also available in: Unified diff