cluster: STABLE3 - fence: Make fence agent metadata valid XML

Lon Hohberger lon@fedoraproject.org
Mon Mar 9 17:02:00 GMT 2009


Gitweb:        http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=f2c67b07b3ef399c276adf1b9bf7c2b81769bc61
Commit:        f2c67b07b3ef399c276adf1b9bf7c2b81769bc61
Parent:        6d79b0bbb45ad167e75aae57ab2b0a4fe90fb514
Author:        Lon Hohberger <lhh@redhat.com>
AuthorDate:    Mon Mar 9 12:58:00 2009 -0400
Committer:     Lon Hohberger <lhh@redhat.com>
CommitterDate: Mon Mar 9 13:01:42 2009 -0400

fence: Make fence agent metadata valid XML

This is needed by XSLT programs to transform the metadata
to other formats (i.e. man pages, RelaxNG blobs, etc.)
---
 fence/agents/lib/fencing.py.py |    3 +++
 fence/agents/xvm/options.c     |    3 +++
 2 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/fence/agents/lib/fencing.py.py b/fence/agents/lib/fencing.py.py
index bdf7da2..c6a5a33 100644
--- a/fence/agents/lib/fencing.py.py
+++ b/fence/agents/lib/fencing.py.py
@@ -329,6 +329,8 @@ def metadata(avail_opt):
 	sorted_list = [ (key, all_opt[key]) for key in avail_opt ]
 	sorted_list.sort(lambda x, y: cmp(x[1]["order"], y[1]["order"]))
 
+	print "<?xml version=\"1.0\" ?>"
+	print "<resource-agent name=\"" + os.path.basename(sys.argv[0]) + "\" >"
 	print "<parameters>"
 	for option, value in sorted_list:
 		if all_opt[option].has_key("shortdesc"):
@@ -345,6 +347,7 @@ def metadata(avail_opt):
 			print "\t\t<shortdesc lang=\"en\">" + all_opt[option]["shortdesc"] + "</shortdesc>"
 			print "\t</parameter>"
 	print "</parameters>"
+	print "</resource-agent>"
 
 def process_input(avail_opt):
 	global all_opt
diff --git a/fence/agents/xvm/options.c b/fence/agents/xvm/options.c
index 1d04cb6..5dd6781 100644
--- a/fence/agents/xvm/options.c
+++ b/fence/agents/xvm/options.c
@@ -537,6 +537,8 @@ args_metadata(char *progname, char *optstr)
 	int x;
 	struct arg_info *arg;
 
+	printf("<?xml version=\"1.0\" ?>\n");
+	printf("<resource-agent name=\"%s\" >\n", basename(progname));
 	printf("<parameters>\n");
 
 	for (x = 0; x < strlen(optstr); x++) {
@@ -554,6 +556,7 @@ args_metadata(char *progname, char *optstr)
 	}
 
 	printf("</parameters>\n");
+	printf("</resource-agent>\n");
 }
 
 



More information about the Cluster-cvs mailing list