def stonith_cmd(argv): if len(argv) == 0: argv = ["show"] sub_cmd = argv.pop(0) if (sub_cmd == "help"): usage.stonith() elif (sub_cmd == "create"): stn_id = argv.pop(0) stn_type = "stonith:"+argv.pop(0) st_values = [] op_values = [] op_args = False for arg in argv: if op_args: op_values.append(arg) else: if arg == "op": op_args = True else: st_values.append(arg) resource.resource_create(stn_id, stn_type, st_values, op_values) elif (sub_cmd == "update"): stn_id = argv.pop(0) resource.resource_update(stn_id,argv) elif (sub_cmd == "delete"): stn_id = argv.pop(0) resource_remove(stn_id) elif (sub_cmd == "list" or sub_cmd == "show"): stonith_show(argv) else: usage.stonith()
def stonith_cmd(argv): if len(argv) == 0: argv = ["show"] sub_cmd = argv.pop(0) if (sub_cmd == "help"): usage.stonith(argv) elif (sub_cmd == "list"): stonith_list_available(argv) elif (sub_cmd == "describe"): if len(argv) == 1: stonith_list_options(argv[0]) else: usage.stonith() sys.exit(1) elif (sub_cmd == "create"): if len(argv) < 2: usage.stonith() sys.exit(1) stn_id = argv.pop(0) stn_type = "stonith:"+argv.pop(0) st_values, op_values, meta_values = resource.parse_resource_options( argv, with_clone=False ) resource.resource_create(stn_id, stn_type, st_values, op_values, meta_values) elif (sub_cmd == "update"): stn_id = argv.pop(0) resource.resource_update(stn_id,argv) elif (sub_cmd == "delete"): if len(argv) == 1: stn_id = argv.pop(0) utils.replace_cib_configuration( stonith_level_rm_device(utils.get_cib_dom(), stn_id) ) resource.resource_remove(stn_id) else: usage.stonith(["delete"]) sys.exit(1) elif (sub_cmd == "show"): resource.resource_show(argv, True) stonith_level([]) elif (sub_cmd == "level"): stonith_level(argv) elif (sub_cmd == "fence"): stonith_fence(argv) elif (sub_cmd == "cleanup"): if len(argv) == 0: resource.resource_cleanup_all() else: res_id = argv.pop(0) resource.resource_cleanup(res_id) elif (sub_cmd == "confirm"): stonith_confirm(argv) else: usage.stonith() sys.exit(1)
def stonith_cmd(argv): if len(argv) == 0: argv = ["show"] sub_cmd = argv.pop(0) if (sub_cmd == "help"): usage.stonith(argv) elif (sub_cmd == "list"): stonith_list_available(argv) elif (sub_cmd == "describe"): if len(argv) == 1: stonith_list_options(argv[0]) else: usage.stonith() sys.exit(1) elif (sub_cmd == "create"): if len(argv) < 2: usage.stonith() sys.exit(1) stn_id = argv.pop(0) stn_type = "stonith:" + argv.pop(0) st_values, op_values, meta_values = resource.parse_resource_options( argv, with_clone=False) resource.resource_create(stn_id, stn_type, st_values, op_values, meta_values) elif (sub_cmd == "update"): stn_id = argv.pop(0) resource.resource_update(stn_id, argv) elif (sub_cmd == "delete"): if len(argv) == 1: stn_id = argv.pop(0) utils.replace_cib_configuration( stonith_level_rm_device(utils.get_cib_dom(), stn_id)) resource.resource_remove(stn_id) else: usage.stonith(["delete"]) sys.exit(1) elif (sub_cmd == "show"): resource.resource_show(argv, True) stonith_level([]) elif (sub_cmd == "level"): stonith_level(argv) elif (sub_cmd == "fence"): stonith_fence(argv) elif (sub_cmd == "cleanup"): if len(argv) == 0: resource.resource_cleanup_all() else: res_id = argv.pop(0) resource.resource_cleanup(res_id) elif (sub_cmd == "confirm"): stonith_confirm(argv) else: usage.stonith() sys.exit(1)
def stonith_cmd(argv): if len(argv) == 0: argv = ["show"] sub_cmd = argv.pop(0) if (sub_cmd == "help"): usage.stonith() elif (sub_cmd == "list"): stonith_list_available(argv) elif (sub_cmd == "describe"): if len(argv) == 1: stonith_list_options(argv[0]) else: usage.stonith() sys.exit(1) elif (sub_cmd == "create"): if len(argv) < 2: usage.stonith() sys.exit(1) stn_id = argv.pop(0) stn_type = "stonith:"+argv.pop(0) st_values = [] op_values = [] op_args = False for arg in argv: if op_args: op_values.append(arg) else: if arg == "op": op_args = True else: st_values.append(arg) resource.resource_create(stn_id, stn_type, st_values, op_values) elif (sub_cmd == "update"): stn_id = argv.pop(0) resource.resource_update(stn_id,argv) elif (sub_cmd == "delete"): if len(argv) > 0: stn_id = argv.pop(0) resource.resource_remove(stn_id) else: usage.stonith() sys.exit(1) elif (sub_cmd == "show"): stonith_show(argv) else: usage.stonith() sys.exit(1)
def stonith_create(argv): if len(argv) < 2: usage.stonith(["create"]) sys.exit(1) stonith_id = argv.pop(0) stonith_type = argv.pop(0) st_values, op_values, meta_values = resource.parse_resource_options( argv, with_clone=False ) metadata = utils.get_stonith_metadata("/usr/sbin/" + stonith_type) if metadata: if stonith_does_agent_provide_unfencing(metadata): meta_values = [ meta for meta in meta_values if not meta.startswith("provides=") ] meta_values.append("provides=unfencing") resource.resource_create( stonith_id, "stonith:" + stonith_type, st_values, op_values, meta_values )
def stonith_cmd(argv): if len(argv) == 0: argv = ["show"] sub_cmd = argv.pop(0) if (sub_cmd == "help"): usage.stonith(argv) elif (sub_cmd == "list"): stonith_list_available(argv) elif (sub_cmd == "describe"): if len(argv) == 1: stonith_list_options(argv[0]) else: usage.stonith() sys.exit(1) elif (sub_cmd == "create"): if len(argv) < 2: usage.stonith() sys.exit(1) stn_id = argv.pop(0) stn_type = "stonith:"+argv.pop(0) st_values = [] op_values = [[]] meta_values=[] op_args = False meta_args = False for arg in argv: if arg == "op": op_args = True meta_args = False elif arg == "meta": meta_args = True op_args = False else: if op_args: if arg == "op": op_values.append([]) elif "=" not in arg and len(op_values[-1]) != 0: op_values.append([]) op_values[-1].append(arg) else: op_values[-1].append(arg) elif meta_args: if "=" in arg: meta_values.append(arg) else: st_values.append(arg) resource.resource_create(stn_id, stn_type, st_values, op_values, meta_values) elif (sub_cmd == "update"): stn_id = argv.pop(0) resource.resource_update(stn_id,argv) elif (sub_cmd == "delete"): if len(argv) > 0: stn_id = argv.pop(0) resource.resource_remove(stn_id) else: usage.stonith() sys.exit(1) elif (sub_cmd == "show"): resource.resource_show(argv, True) stonith_level([]) elif (sub_cmd == "level"): stonith_level(argv) elif (sub_cmd == "fence"): stonith_fence(argv) elif (sub_cmd == "cleanup"): if len(argv) < 1: usage.stonith(["cleanup"]) sys.exit(1) res_id = argv.pop(0) resource.resource_cleanup(res_id) elif (sub_cmd == "confirm"): stonith_confirm(argv) else: usage.stonith() sys.exit(1)
def stonith_cmd(argv): if len(argv) == 0: argv = ["show"] sub_cmd = argv.pop(0) if (sub_cmd == "help"): usage.stonith(argv) elif (sub_cmd == "list"): stonith_list_available(argv) elif (sub_cmd == "describe"): if len(argv) == 1: stonith_list_options(argv[0]) else: usage.stonith() sys.exit(1) elif (sub_cmd == "create"): if len(argv) < 2: usage.stonith() sys.exit(1) stn_id = argv.pop(0) stn_type = "stonith:"+argv.pop(0) st_values = [] op_values = [[]] meta_values=[] op_args = False meta_args = False for arg in argv: if arg == "op": op_args = True meta_args = False elif arg == "meta": meta_args = True op_args = False else: if op_args: if arg == "op": op_values.append([]) elif "=" not in arg and len(op_values[-1]) != 0: op_values.append([]) op_values[-1].append(arg) else: op_values[-1].append(arg) elif meta_args: if "=" in arg: meta_values.append(arg) else: st_values.append(arg) resource.resource_create(stn_id, stn_type, st_values, op_values, meta_values) elif (sub_cmd == "update"): stn_id = argv.pop(0) resource.resource_update(stn_id,argv) elif (sub_cmd == "delete"): if len(argv) > 0: stn_id = argv.pop(0) resource.resource_remove(stn_id) else: usage.stonith() sys.exit(1) elif (sub_cmd == "show"): resource.resource_show(argv, True) stonith_level([]) elif (sub_cmd == "level"): stonith_level(argv) elif (sub_cmd == "fence"): stonith_fence(argv) elif (sub_cmd == "confirm"): stonith_confirm(argv) else: usage.stonith() sys.exit(1)