Gitweb: http://git.fedorahosted.org/git/?p=fence-agents.git;a=commitdiff;h=b0303c783... Commit: b0303c783b9ee4d4214828d88344547549a04d11 Parent: 9851b2aec92f30456fb88a1c69ca964fae58e1ec Author: Marek 'marx' Grac mgrac@redhat.com AuthorDate: Mon Oct 29 12:24:36 2012 +0100 Committer: Marek 'marx' Grac mgrac@redhat.com CommitterDate: Mon Oct 29 12:24:36 2012 +0100
fence-agents: Use default values for device options instead of per-agent solutions
Majority of these changes concern: * (-x / ssh) to be turn on by default * command prompt default which differs across fence agents --- fence/agents/alom/fence_alom.py | 12 ++++-------- fence/agents/apc/fence_apc.py | 11 +++-------- fence/agents/drac5/fence_drac5.py | 8 ++------ fence/agents/eaton_snmp/fence_eaton_snmp.py | 8 ++------ fence/agents/ibmblade/fence_ibmblade.py | 6 +----- fence/agents/ifmib/fence_ifmib.py | 5 +---- fence/agents/ilo/fence_ilo.py | 7 ++----- fence/agents/ipdu/fence_ipdu.py | 14 +++++--------- fence/agents/ldom/fence_ldom.py | 15 +++++---------- fence/agents/lpar/fence_lpar.py | 7 +------ fence/agents/rsa/fence_rsa.py | 8 ++------ fence/agents/rsb/fence_rsb.py | 2 -- fence/agents/sanbox2/fence_sanbox2.py | 8 ++------ fence/agents/virsh/fence_virsh.py | 11 ++++------- fence/agents/vmware/fence_vmware.py | 10 ++-------- fence/agents/wti/fence_wti.py | 8 ++------ fence/agents/xenapi/fence_xenapi.py | 4 +--- 17 files changed, 39 insertions(+), 105 deletions(-)
diff --git a/fence/agents/alom/fence_alom.py b/fence/agents/alom/fence_alom.py index 6d62d73..0f68050 100644 --- a/fence/agents/alom/fence_alom.py +++ b/fence/agents/alom/fence_alom.py @@ -43,19 +43,15 @@ def set_power_status(conn, options): fail(EC_TIMED_OUT) def main(): - device_opt = [ "ipaddr", "login", "passwd", "passwd_script", "secure", + device_opt = [ "ipaddr", "login", "passwd", "passwd_script", "cmd_prompt", "secure", "identity_file", "test", "inet4_only", "inet6_only", "ipport" ]
atexit.register(atexit_handler) - - pinput = process_input(device_opt) - pinput["-x"] = 1 - options = check_input(device_opt, pinput)
- # Default command is sc> - if (not options.has_key("-c")): - options["-c"] = "sc>\ " + all_opt["secure"]["default"] = "1" + all_opt["cmd_prompt"]["default"] = [ "sc>\ " ]
+ options = check_input(device_opt, process_input(device_opt)) options["telnet_over_ssh"] = 1 docs = { } diff --git a/fence/agents/apc/fence_apc.py b/fence/agents/apc/fence_apc.py index 46f8b84..0406955 100644 --- a/fence/agents/apc/fence_apc.py +++ b/fence/agents/apc/fence_apc.py @@ -182,22 +182,17 @@ def set_power_status(conn, options): fail(EC_TIMED_OUT)
def main(): - device_opt = [ "ipaddr", "login", "passwd", "passwd_script", + device_opt = [ "ipaddr", "login", "passwd", "passwd_script", "cmd_prompt", "secure", "port", "identity_file", "switch", "test", "separator", "inet4_only", "inet6_only", "ipport" ]
atexit.register(atexit_handler)
- options = check_input(device_opt, process_input(device_opt)) + all_opt["cmd_prompt"]["default"] = "\n>"
- ## - ## Fence agent specific defaults - ##### + options = check_input(device_opt, process_input(device_opt)) options["ssh_options"] = "-1 -c blowfish"
- if 0 == options.has_key("-c"): - options["-c"] = "\n>" - docs = { } docs["shortdesc"] = "Fence agent for APC over telnet/ssh" docs["longdesc"] = "fence_apc is an I/O Fencing agent \ diff --git a/fence/agents/drac5/fence_drac5.py b/fence/agents/drac5/fence_drac5.py index 755f2b4..b261e50 100644 --- a/fence/agents/drac5/fence_drac5.py +++ b/fence/agents/drac5/fence_drac5.py @@ -91,13 +91,9 @@ def main():
atexit.register(atexit_handler)
- options = check_input(device_opt, process_input(device_opt)) + all_opt["cmd_prompt"]["default"] = [ "$" ]
- ## - ## Fence agent specific defaults - ##### - if 0 == options.has_key("-c"): - options["-c"] = "$" + options = check_input(device_opt, process_input(device_opt))
docs = { } docs["shortdesc"] = "Fence agent for Dell DRAC CMC/5" diff --git a/fence/agents/eaton_snmp/fence_eaton_snmp.py b/fence/agents/eaton_snmp/fence_eaton_snmp.py index 2c0b54e..e4c3ea3 100644 --- a/fence/agents/eaton_snmp/fence_eaton_snmp.py +++ b/fence/agents/eaton_snmp/fence_eaton_snmp.py @@ -197,11 +197,6 @@ def get_outlets_status(conn, options):
return result
-# Define new options -def eaton_snmp_define_defaults(): - all_opt["snmp_version"]["default"]="1" - all_opt["community"]["default"]="private" - # Main agent method def main(): device_opt = [ "ipaddr", "login", "passwd", "passwd_script", @@ -213,10 +208,11 @@ def main(): atexit.register(atexit_handler)
snmp_define_defaults () - eaton_snmp_define_defaults()
all_opt["switch"]["default"] = 1 all_opt["power_wait"]["default"] = 2 + all_opt["snmp_version"]["default"] = "1" + all_opt["community"]["default"] = "private" options=check_input(device_opt,process_input(device_opt))
# Plug indexing start from zero on ePDU Managed, so we substract '1' from diff --git a/fence/agents/ibmblade/fence_ibmblade.py b/fence/agents/ibmblade/fence_ibmblade.py index 96d2a76..ec992f4 100644 --- a/fence/agents/ibmblade/fence_ibmblade.py +++ b/fence/agents/ibmblade/fence_ibmblade.py @@ -48,10 +48,6 @@ def get_outlets_status(conn, options):
return result
-# Define new options -def ibmblade_define_defaults(): - all_opt["snmp_version"]["default"]="1" - # Main agent method def main(): global port_oid @@ -65,7 +61,7 @@ def main(): atexit.register(atexit_handler)
snmp_define_defaults () - ibmblade_define_defaults() + all_opt["snmp_version"]["default"]="1"
options=check_input(device_opt,process_input(device_opt))
diff --git a/fence/agents/ifmib/fence_ifmib.py b/fence/agents/ifmib/fence_ifmib.py index bbbec22..a43bf38 100644 --- a/fence/agents/ifmib/fence_ifmib.py +++ b/fence/agents/ifmib/fence_ifmib.py @@ -93,10 +93,6 @@ def get_outlets_status(conn, options):
return result
-# Define new options -def ifmib_define_defaults(): - all_opt["snmp_version"]["default"]="2c" - # Main agent method def main(): global port_oid @@ -110,6 +106,7 @@ def main(): atexit.register(atexit_handler)
snmp_define_defaults () + all_opt["snmp_version"]["default"]="2c"
options=process_input(device_opt)
diff --git a/fence/agents/ilo/fence_ilo.py b/fence/agents/ilo/fence_ilo.py index 4c8f7ca..fca72a7 100644 --- a/fence/agents/ilo/fence_ilo.py +++ b/fence/agents/ilo/fence_ilo.py @@ -65,12 +65,9 @@ def main():
all_opt["login_timeout"]["default"] = "10" all_opt["retry_on"]["default"] = "3" + all_opt["ssl"]["default"] = "1"
- pinput = process_input(device_opt) - pinput["-z"] = 1 - options = check_input(device_opt, pinput) - - LOGIN_TIMEOUT = 10 + options = check_input(device_opt, process_input(device_opt))
docs = { } docs["shortdesc"] = "Fence agent for HP iLO" diff --git a/fence/agents/ipdu/fence_ipdu.py b/fence/agents/ipdu/fence_ipdu.py index 2749e44..0243afd 100644 --- a/fence/agents/ipdu/fence_ipdu.py +++ b/fence/agents/ipdu/fence_ipdu.py @@ -129,13 +129,6 @@ def get_outlets_status(conn, options):
return result
-# Define new options -def ipdu_snmp_define_defaults(): - all_opt["snmp_version"]["default"]="3" - all_opt["community"]["default"]="private" - all_opt["switch"]["default"]="1" - device=IBMiPDU - # Main agent method def main(): device_opt = [ "ipaddr", "login", "passwd", "passwd_script", @@ -147,9 +140,12 @@ def main(): atexit.register(atexit_handler)
snmp_define_defaults () - ipdu_snmp_define_defaults() + all_opt["snmp_version"]["default"] = "3" + all_opt["community"]["default"] = "private" + all_opt["switch"]["default"] = "1" + device = IBMiPDU
- options=check_input(device_opt,process_input(device_opt)) + options = check_input(device_opt,process_input(device_opt))
docs = { } docs["shortdesc"] = "Fence agent for iPDU over SNMP" diff --git a/fence/agents/ldom/fence_ldom.py b/fence/agents/ldom/fence_ldom.py index d106255..498d0d7 100644 --- a/fence/agents/ldom/fence_ldom.py +++ b/fence/agents/ldom/fence_ldom.py @@ -87,16 +87,11 @@ def main():
atexit.register(atexit_handler)
- pinput = process_input(device_opt) - pinput["-x"] = 1 - options = check_input(device_opt, pinput) - - ## - ## Fence agent specific defaults - ##### - if (not options.has_key("-c")): - options["-c"] = "\ $" - + all_opt["secure"]["default"] = "1" + all_opt["cmd_prompt"]["default"] = [ "\ $" ] + + options = check_input(device_opt, process_input(device_opt)) + docs = { } docs["shortdesc"] = "Fence agent for Sun LDOM" docs["longdesc"] = "fence_ldom is an I/O Fencing agent \ diff --git a/fence/agents/lpar/fence_lpar.py b/fence/agents/lpar/fence_lpar.py index b9121e4..a5d4195 100644 --- a/fence/agents/lpar/fence_lpar.py +++ b/fence/agents/lpar/fence_lpar.py @@ -138,15 +138,10 @@ def main():
all_opt["login_timeout"]["default"] = "15" all_opt["secure"]["default"] = "1" + all_opt["cmd_prompt"]["default"] = [ ":~>", "]$", "$ " ]
options = check_input(device_opt, process_input(device_opt))
- ## - ## Fence agent specific settings and default values - ##### - if 0 == options.has_key("-c"): - options["-c"] = [ ":~>", "]$", "$ " ] - docs = { } docs["shortdesc"] = "Fence agent for IBM LPAR" docs["longdesc"] = "" diff --git a/fence/agents/rsa/fence_rsa.py b/fence/agents/rsa/fence_rsa.py index 3ba2c80..44ad33f 100644 --- a/fence/agents/rsa/fence_rsa.py +++ b/fence/agents/rsa/fence_rsa.py @@ -50,14 +50,10 @@ def main(): atexit.register(atexit_handler)
all_opt["login_timeout"]["default"] = 10 + all_opt["cmd_prompt"]["default"] = [ ">" ] + options = check_input(device_opt, process_input(device_opt))
- ## - ## Fence agent specific defaults - ##### - if 0 == options.has_key("-c"): - options["-c"] = ">" - # This device will not allow us to login even with LANG=C options["ssh_options"] = "-F /dev/null"
diff --git a/fence/agents/rsb/fence_rsb.py b/fence/agents/rsb/fence_rsb.py index bc3df9a..f8cd827 100755 --- a/fence/agents/rsb/fence_rsb.py +++ b/fence/agents/rsb/fence_rsb.py @@ -85,8 +85,6 @@ will block any necessary fencing actions." ## ## Operate the fencing device #### - print options["-u"] - conn = fence_login(options) result = fence_action(conn, options, set_power_status, get_power_status, None)
diff --git a/fence/agents/sanbox2/fence_sanbox2.py b/fence/agents/sanbox2/fence_sanbox2.py index 8c67ac2..fdbea06 100644 --- a/fence/agents/sanbox2/fence_sanbox2.py +++ b/fence/agents/sanbox2/fence_sanbox2.py @@ -113,13 +113,9 @@ def main():
atexit.register(atexit_handler)
- options = check_input(device_opt, process_input(device_opt)) + all_opt["cmd_prompt"]["default"] = [ " #> " ]
- ## - ## Fence agent specific defaults - ##### - if 0 == options.has_key("-c"): - options["-c"] = [ " #> " ] + options = check_input(device_opt, process_input(device_opt))
docs = { } docs["shortdesc"] = "Fence agent for QLogic SANBox2 FC switches" diff --git a/fence/agents/virsh/fence_virsh.py b/fence/agents/virsh/fence_virsh.py index 6e6a43d..ebf6666 100644 --- a/fence/agents/virsh/fence_virsh.py +++ b/fence/agents/virsh/fence_virsh.py @@ -71,19 +71,16 @@ def set_power_status(conn, options): fail(EC_TIMED_OUT)
def main(): - device_opt = [ "ipaddr", "login", "passwd", "passwd_script", + device_opt = [ "ipaddr", "login", "passwd", "passwd_script", "cmd_prompt", "secure", "identity_file", "test", "port", "separator", "inet4_only", "inet6_only", "ipport", "sudo" ]
atexit.register(atexit_handler)
- pinput = process_input(device_opt) - pinput["-x"] = 1 - options = check_input(device_opt, pinput) + all_opt["secure"]["default"] = "1" + all_opt["cmd_prompt"]["default"] = [ "[EXPECT]#\ " ]
- ## Defaults for fence agent - if 0 == options.has_key("-c"): - options["-c"] = "[EXPECT]#\ " + options = check_input(device_opt, process_input(device_opt))
options["ssh_options"]="-t '/bin/bash -c "PS1=[EXPECT]#\ /bin/bash --noprofile --norc"'"
diff --git a/fence/agents/vmware/fence_vmware.py b/fence/agents/vmware/fence_vmware.py index 0b81d1d..885a876 100644 --- a/fence/agents/vmware/fence_vmware.py +++ b/fence/agents/vmware/fence_vmware.py @@ -256,10 +256,6 @@ def vmware_is_supported_vmrun_version(options):
return True
-# Define new options -def vmware_define_defaults(): - all_opt["vmware_type"]["default"]=VMWARE_DEFAULT_TYPE - # Check vmware type, set vmware_internal_type to one of VMWARE_TYPE_ value and # options["-e"] to path (if not specified) def vmware_check_vmware_type(options): @@ -290,13 +286,11 @@ def main():
atexit.register(atexit_handler)
- vmware_define_defaults() + all_opt["secure"]["default"] = "1" + all_opt["vmware_type"]["default"] = VMWARE_DEFAULT_TYPE
options = check_input(device_opt, process_input(device_opt))
- # Default is secure connection - options["-x"] = 1 - docs = { } docs["shortdesc"] = "Fence agent for VMWare" docs["longdesc"] = "fence_vmware is an I/O Fencing agent \ diff --git a/fence/agents/wti/fence_wti.py b/fence/agents/wti/fence_wti.py index f013953..9aa9959 100644 --- a/fence/agents/wti/fence_wti.py +++ b/fence/agents/wti/fence_wti.py @@ -96,13 +96,9 @@ def main():
atexit.register(atexit_handler)
- options = check_input(device_opt, process_input(device_opt)) + all_opt["cmd_prompt"]["default"] = [ "RSM>", "MPC>", "IPS>", "TPS>", "NBB>", "NPS>", "VMR>" ]
- ## - ## Fence agent specific defaults - ##### - if 0 == options.has_key("-c"): - options["-c"] = [ "RSM>", "MPC>", "IPS>", "TPS>", "NBB>", "NPS>", "VMR>" ] + options = check_input(device_opt, process_input(device_opt))
docs = { } docs["shortdesc"] = "Fence agent for WTI" diff --git a/fence/agents/xenapi/fence_xenapi.py b/fence/agents/xenapi/fence_xenapi.py index 0b07ed6..017908f 100644 --- a/fence/agents/xenapi/fence_xenapi.py +++ b/fence/agents/xenapi/fence_xenapi.py @@ -204,9 +204,7 @@ def main():
atexit.register(atexit_handler)
- options=process_input(device_opt) - - options = check_input(device_opt, options) + options = check_input(device_opt, process_input(device_opt))
docs = { } docs["shortdesc"] = "XenAPI based fencing for the Citrix XenServer virtual machines."
cluster-commits@lists.stg.fedorahosted.org