public inbox for cluster-cvs@sourceware.org
help / color / mirror / Atom feed
From: "Marek Grác" <marx@fedoraproject.org>
To: cluster-cvs-relay@redhat.com
Subject: fence-agents: master - fencing: #508722 - Fence agent for HP iLO 2 MP
Date: Thu, 30 Jul 2009 11:12:00 -0000	[thread overview]
Message-ID: <20090730111147.C59F31201A5@lists.fedorahosted.org> (raw)

Gitweb:        http://git.fedorahosted.org/git/fence-agents.git?p=fence-agents.git;a=commitdiff;h=7ba70e33140d9346d98f78a93dc97c37e065bf8f
Commit:        7ba70e33140d9346d98f78a93dc97c37e065bf8f
Parent:        4fa914ea8252924d607c663f113a11e4dc362aa3
Author:        Marek 'marx' Grac <mgrac@redhat.com>
AuthorDate:    Thu Jul 30 13:07:00 2009 +0200
Committer:     Marek 'marx' Grac <mgrac@redhat.com>
CommitterDate: Thu Jul 30 13:07:00 2009 +0200

fencing: #508722 - Fence agent for HP iLO 2 MP

New fence agent for HP iLO2 MP used in Blade Servers. It uses SMASH
interface over telnet/ssh. fence_ilo uses RIBCL over SSL what is not
supported on these machines.
---
 fence/agents/Makefile.am            |    1 +
 fence/agents/ilo_mp/Makefile.am     |   12 ++++++
 fence/agents/ilo_mp/fence_ilo_mp.py |   66 +++++++++++++++++++++++++++++++++++
 3 files changed, 79 insertions(+), 0 deletions(-)

diff --git a/fence/agents/Makefile.am b/fence/agents/Makefile.am
index 453993f..aea77ac 100644
--- a/fence/agents/Makefile.am
+++ b/fence/agents/Makefile.am
@@ -15,6 +15,7 @@ SUBDIRS 		= alom \
 			  ibmblade \
 			  ifmib \
 			  ilo \
+			  ilo_mp \
 			  intelmodular \
 			  ipmilan \
 			  ldom \
diff --git a/fence/agents/ilo_mp/Makefile.am b/fence/agents/ilo_mp/Makefile.am
new file mode 100644
index 0000000..c961ba3
--- /dev/null
+++ b/fence/agents/ilo_mp/Makefile.am
@@ -0,0 +1,12 @@
+MAINTAINERCLEANFILES	= Makefile.in
+
+TARGET			= fence_ilo_mp
+
+EXTRA_DIST		= $(TARGET).py
+
+sbin_SCRIPTS		= $(TARGET)
+
+include $(top_srcdir)/make/fencebuild.mk
+
+clean-local:
+	rm -f $(TARGET)
diff --git a/fence/agents/ilo_mp/fence_ilo_mp.py b/fence/agents/ilo_mp/fence_ilo_mp.py
new file mode 100644
index 0000000..511ff4b
--- /dev/null
+++ b/fence/agents/ilo_mp/fence_ilo_mp.py
@@ -0,0 +1,66 @@
+#!/usr/bin/python
+
+##
+## Copyright (C) 2008 Red Hat, Inc. All Rights Reserved.
+##
+#####
+
+import sys, re, pexpect, socket
+sys.path.append("@FENCEAGENTSLIBDIR@")
+from fencing import *
+
+#BEGIN_VERSION_GENERATION
+FENCE_RELEASE_NAME=""
+REDHAT_COPYRIGHT=""
+BUILD_DATE=""
+#END_VERSION_GENERATION
+
+def get_power_status(conn, options):
+	conn.send("show /system1\n")
+	conn.log_expect(options, "EnabledState=(.*)", POWER_TIMEOUT)
+
+	status = conn.match.group(1)
+
+	if status.startswith("Enabled"):
+		return "on"
+	else:
+		return "off"
+
+def set_power_status(conn, options):
+	if options["-o"] == "on":
+		conn.send("start /system1\n")
+	else:
+		conn.send("stop -f /system1\n")
+	return
+
+def main():
+	device_opt = [  "help", "version", "agent", "quiet", "verbose", "debug",
+			"action", "ipaddr", "login", "passwd", "passwd_script",
+			"secure", "cmd_prompt", "ipport", "login_eol_lf",
+			"separator", "inet4_only", "inet6_only" ]
+
+	atexit.register(atexit_handler)
+	
+	options = check_input(device_opt, process_input(device_opt))
+	if 0 == options.has_key("-c"):
+		options["-c"] = "MP>"
+		
+	show_docs(options)
+	
+	conn = fence_login(options)
+	conn.send("SMCLP\n")
+
+	##
+	## Fence operations
+	####
+	fence_action(conn, options, set_power_status, get_power_status)
+
+	try:
+		conn.send("exit\n")
+	except exceptions.OSError:
+		pass
+	except pexpect.ExceptionPexpect:
+		pass
+
+if __name__ == "__main__":
+	main()


                 reply	other threads:[~2009-07-30 11:12 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090730111147.C59F31201A5@lists.fedorahosted.org \
    --to=marx@fedoraproject.org \
    --cc=cluster-cvs-relay@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).