Gitweb:
http://git.fedorahosted.org/git/?p=fence-agents.git;a=commitdiff;h=b0303c...
Commit: b0303c783b9ee4d4214828d88344547549a04d11
Parent: 9851b2aec92f30456fb88a1c69ca964fae58e1ec
Author: Marek 'marx' Grac <mgrac(a)redhat.com>
AuthorDate: Mon Oct 29 12:24:36 2012 +0100
Committer: Marek 'marx' Grac <mgrac(a)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."