Revision 5a8648eb lib/client/gnt_cluster.py

b/lib/client/gnt_cluster.py
139 139
    ToStderr("Invalid primary ip version value: %s" % str(err))
140 140
    return 1
141 141

  
142
  master_netmask = opts.master_netmask
143
  try:
144
    if master_netmask is not None:
145
      master_netmask = int(master_netmask)
146
  except (ValueError, TypeError), err:
147
    ToStderr("Invalid master netmask value: %s" % str(err))
148
    return 1
149

  
142 150
  bootstrap.InitCluster(cluster_name=args[0],
143 151
                        secondary_ip=opts.secondary_ip,
144 152
                        vg_name=vg_name,
145 153
                        mac_prefix=opts.mac_prefix,
154
                        master_netmask=master_netmask,
146 155
                        master_netdev=master_netdev,
147 156
                        file_storage_dir=opts.file_storage_dir,
148 157
                        shared_file_storage_dir=opts.shared_file_storage_dir,
......
371 380
            compat.TryToRoman(result["candidate_pool_size"],
372 381
                              convert=opts.roman_integers))
373 382
  ToStdout("  - master netdev: %s", result["master_netdev"])
383
  ToStdout("  - master netmask: %s", result["master_netmask"])
374 384
  ToStdout("  - lvm volume group: %s", result["volume_group_name"])
375 385
  if result["reserved_lvs"]:
376 386
    reserved_lvs = utils.CommaJoin(result["reserved_lvs"])
......
867 877
          opts.default_iallocator is not None or
868 878
          opts.reserved_lvs is not None or
869 879
          opts.master_netdev is not None or
880
          opts.master_netmask is not None or
870 881
          opts.prealloc_wipe_disks is not None):
871 882
    ToStderr("Please give at least one of the parameters.")
872 883
    return 1
......
926 937
    else:
927 938
      opts.reserved_lvs = utils.UnescapeAndSplit(opts.reserved_lvs, sep=",")
928 939

  
940
  if opts.master_netmask is not None:
941
    try:
942
      opts.master_netmask = int(opts.master_netmask)
943
    except ValueError:
944
      ToStderr("The --master-netmask option expects an int parameter.")
945
      return 1
946

  
929 947
  op = opcodes.OpClusterSetParams(vg_name=vg_name,
930 948
                                  drbd_helper=drbd_helper,
931 949
                                  enabled_hypervisors=hvlist,
......
942 960
                                  default_iallocator=opts.default_iallocator,
943 961
                                  prealloc_wipe_disks=opts.prealloc_wipe_disks,
944 962
                                  master_netdev=opts.master_netdev,
963
                                  master_netmask=opts.master_netmask,
945 964
                                  reserved_lvs=opts.reserved_lvs)
946 965
  SubmitOpCode(op, opts=opts)
947 966
  return 0
......
1339 1358
  "init": (
1340 1359
    InitCluster, [ArgHost(min=1, max=1)],
1341 1360
    [BACKEND_OPT, CP_SIZE_OPT, ENABLED_HV_OPT, GLOBAL_FILEDIR_OPT,
1342
     HVLIST_OPT, MAC_PREFIX_OPT, MASTER_NETDEV_OPT, NIC_PARAMS_OPT,
1343
     NOLVM_STORAGE_OPT, NOMODIFY_ETCHOSTS_OPT, NOMODIFY_SSH_SETUP_OPT,
1344
     SECONDARY_IP_OPT, VG_NAME_OPT, MAINTAIN_NODE_HEALTH_OPT,
1345
     UIDPOOL_OPT, DRBD_HELPER_OPT, NODRBD_STORAGE_OPT,
1361
     HVLIST_OPT, MAC_PREFIX_OPT, MASTER_NETDEV_OPT, MASTER_NETMASK_OPT,
1362
     NIC_PARAMS_OPT, NOLVM_STORAGE_OPT, NOMODIFY_ETCHOSTS_OPT,
1363
     NOMODIFY_SSH_SETUP_OPT, SECONDARY_IP_OPT, VG_NAME_OPT,
1364
     MAINTAIN_NODE_HEALTH_OPT, UIDPOOL_OPT, DRBD_HELPER_OPT, NODRBD_STORAGE_OPT,
1346 1365
     DEFAULT_IALLOCATOR_OPT, PRIMARY_IP_VERSION_OPT, PREALLOC_WIPE_DISKS_OPT,
1347 1366
     NODE_PARAMS_OPT, GLOBAL_SHARED_FILEDIR_OPT],
1348 1367
    "[opts...] <cluster_name>", "Initialises a new cluster configuration"),
......
1417 1436
  "modify": (
1418 1437
    SetClusterParams, ARGS_NONE,
1419 1438
    [BACKEND_OPT, CP_SIZE_OPT, ENABLED_HV_OPT, HVLIST_OPT, MASTER_NETDEV_OPT,
1420
     NIC_PARAMS_OPT, NOLVM_STORAGE_OPT, VG_NAME_OPT, MAINTAIN_NODE_HEALTH_OPT,
1421
     UIDPOOL_OPT, ADD_UIDS_OPT, REMOVE_UIDS_OPT, DRBD_HELPER_OPT,
1422
     NODRBD_STORAGE_OPT, DEFAULT_IALLOCATOR_OPT, RESERVED_LVS_OPT,
1423
     DRY_RUN_OPT, PRIORITY_OPT, PREALLOC_WIPE_DISKS_OPT, NODE_PARAMS_OPT],
1439
     MASTER_NETMASK_OPT, NIC_PARAMS_OPT, NOLVM_STORAGE_OPT, VG_NAME_OPT,
1440
     MAINTAIN_NODE_HEALTH_OPT, UIDPOOL_OPT, ADD_UIDS_OPT, REMOVE_UIDS_OPT,
1441
     DRBD_HELPER_OPT, NODRBD_STORAGE_OPT, DEFAULT_IALLOCATOR_OPT,
1442
     RESERVED_LVS_OPT, DRY_RUN_OPT, PRIORITY_OPT, PREALLOC_WIPE_DISKS_OPT,
1443
     NODE_PARAMS_OPT],
1424 1444
    "[opts...]",
1425 1445
    "Alters the parameters of the cluster"),
1426 1446
  "renew-crypto": (

Also available in: Unified diff