__all__ = [
# Command line options
"ALL_OPT",
+ "AUTO_REPLACE_OPT",
"BACKEND_OPT",
"CLEANUP_OPT",
"CONFIRM_OPT",
"DISKIDX_OPT",
"DISK_OPT",
"DISK_TEMPLATE_OPT",
+ "DRAINED_OPT",
"FIELDS_OPT",
"FILESTORE_DIR_OPT",
"FILESTORE_DRIVER_OPT",
"IALLOCATOR_OPT",
"IGNORE_CONSIST_OPT",
"IGNORE_FAILURES_OPT",
+ "IGNORE_SIZE_OPT",
"FORCE_OPT",
+ "MC_OPT",
"NET_OPT",
"NEW_SECONDARY_OPT",
"NODE_LIST_OPT",
"NONICS_OPT",
"NONLIVE_OPT",
"NOSTART_OPT",
+ "NOSSH_KEYCHECK_OPT",
"NWSYNC_OPT",
+ "ON_PRIMARY_OPT",
+ "ON_SECONDARY_OPT",
+ "OFFLINE_OPT",
"OS_OPT",
"OS_SIZE_OPT",
+ "READD_OPT",
+ "SECONDARY_IP_OPT",
"SELECT_OS_OPT",
"SEP_OPT",
"SHOWCMD_OPT",
"SINGLE_NODE_OPT",
+ "SRC_DIR_OPT",
+ "SRC_NODE_OPT",
"SUBMIT_OPT",
"STATIC_OPT",
"SYNC_OPT",
cli_option = CliOption
+_YESNO = ("yes", "no")
+_YORNO = "yes|no"
+
DEBUG_OPT = cli_option("-d", "--debug", default=False,
action="store_true",
help="Turn debugging on")
metavar="NODE", default=None,
completion_suggest=OPT_COMPL_ONE_NODE)
+ON_PRIMARY_OPT = cli_option("-p", "--on-primary", dest="on_primary",
+ default=False, action="store_true",
+ help="Replace the disk(s) on the primary"
+ " node (only for the drbd template)")
+
+ON_SECONDARY_OPT = cli_option("-s", "--on-secondary", dest="on_secondary",
+ default=False, action="store_true",
+ help="Replace the disk(s) on the secondary"
+ " node (only for the drbd template)")
+
+AUTO_REPLACE_OPT = cli_option("-a", "--auto", dest="auto",
+ default=False, action="store_true",
+ help="Automatically replace faulty disks"
+ " (only for the drbd template)")
+
+IGNORE_SIZE_OPT = cli_option("--ignore-size", dest="ignore_size",
+ default=False, action="store_true",
+ help="Ignore current recorded size"
+ " (useful for forcing activation when"
+ " the recorded size is wrong)")
+
+SRC_NODE_OPT = cli_option("--src-node", dest="src_node", help="Source node",
+ metavar="<node>",
+ completion_suggest=OPT_COMPL_ONE_NODE)
+
+SRC_DIR_OPT = cli_option("--src-dir", dest="src_dir", help="Source directory",
+ metavar="<dir>")
+
+SECONDARY_IP_OPT = cli_option("-s", "--secondary-ip", dest="secondary_ip",
+ help="Specify the secondary ip for the node",
+ metavar="ADDRESS", default=None)
+
+READD_OPT = cli_option("--readd", dest="readd",
+ default=False, action="store_true",
+ help="Readd old node after replacing it")
+
+NOSSH_KEYCHECK_OPT = cli_option("--no-ssh-key-check", dest="ssh_key_check",
+ default=True, action="store_false",
+ help="Disable SSH key fingerprint checking")
+
+
+MC_OPT = cli_option("-C", "--master-candidate", dest="master_candidate",
+ choices=_YESNO, default=None, metavar=_YORNO,
+ help="Set the master_candidate flag on the node")
+
+OFFLINE_OPT = cli_option("-O", "--offline", dest="offline", metavar=_YORNO,
+ choices=_YESNO, default=None,
+ help="Set the offline flag on the node")
+
+DRAINED_OPT = cli_option("-D", "--drained", dest="drained", metavar=_YORNO,
+ choices=_YESNO, default=None,
+ help="Set the drained flag on the node")
+
def _ParseArgs(argv, commands, aliases):
"""Parser for the command line arguments.