Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=5a0... Commit: 5a0b6533337a009890d64446a35279dc7c58ea39 Parent: e3238bebfeb9147ac7eb643301d713f5e288cc29 Author: Marek 'marx' Grac mgrac@redhat.com AuthorDate: Mon Oct 19 22:03:40 2009 +0200 Committer: Fabio M. Di Nitto fdinitto@redhat.com CommitterDate: Tue Oct 20 05:33:52 2009 +0200
fence_xvm: metadata should be in expected format
Minor changes in xml format (add default, required, content type). --- fence/agents/xvm/options.c | 38 ++++++++++++++++++++++++++++++++++++-- fence/agents/xvm/options.h | 3 +++ 2 files changed, 39 insertions(+), 2 deletions(-)
diff --git a/fence/agents/xvm/options.c b/fence/agents/xvm/options.c index 96975f0..6fdc3d2 100644 --- a/fence/agents/xvm/options.c +++ b/fence/agents/xvm/options.c @@ -286,99 +286,122 @@ assign_uri(fence_xvm_args_t *args, struct arg_info *arg, char *value) /** ALL valid command line and stdin arguments for this fencing agent */ static struct arg_info _arg_info[] = { { '\xff', NULL, "agent", + 0, "boolean", NULL, "Not user serviceable", NULL },
{ '\xff', NULL, "self", + 0, "boolean", NULL, "Not user serviceable", NULL },
{ 'd', "-d", "debug", + 0, "boolean", NULL, "Specify (CCS) / increment (command line) debug level", assign_debug },
{ 'f', "-f", NULL, + 0, "boolean", NULL, "Foreground mode (do not fork)", assign_foreground },
{ 'i', "-i <family>", "ip_family", + 0, "string", "auto", "IP Family ([auto], ipv4, ipv6)", assign_family },
{ 'a', "-a <address>", "multicast_address", + 0, "string", NULL, "Multicast address (default=225.0.0.12 / ff02::3:1)", assign_address },
{ 'T', "-T <ttl>", "multicast_ttl", + 0, "string", "2", "Multicast time-to-live (in hops; default=2)", assign_ttl },
{ 'p', "-p <port>", "port", + 0, "string", "1229", "IP port (default=1229)", assign_port },
{ 'I', "-I <interface>", "interface", + 0, "string", NULL, "Network interface name to listen on", assign_interface },
{ 'r', "-r <retrans>", "retrans", + 0, "string", "20", "Multicast retransmit time (in 1/10sec; default=20)", assign_retrans },
{ 'c', "-c <hash>", "hash", + 0, "string", "sha256", "Packet hash strength (none, sha1, [sha256], sha512)", assign_hash },
{ 'C', "-C <auth>", "auth", + 0, "string", "sha256", "Authentication (none, sha1, [sha256], sha512)", assign_auth },
{ 'k', "-k <file>", "key_file", + 0, "string", DEFAULT_KEY_FILE, "Shared key file (default=" DEFAULT_KEY_FILE ")", assign_key },
{ 'o', "-o <operation>", "option", + 0, "string", "reboot", "Fencing operation (null, off, [reboot])", assign_op },
{ 'H', "-H <domain>", "domain", + 1, "string", NULL, "Xen host (domain name) to fence", assign_domain },
{ 'u', "-u", "use_uuid", + 0, "string", NULL, "Treat <domain> as UUID instead of domain name", assign_uuid_lookup },
{ 't', "-t <timeout>", "timeout", + 0, "string", "30", "Fencing timeout (in seconds; default=30)", assign_timeout },
{ 'h', "-h", NULL, + 0, "boolean", NULL, "Help", assign_help },
{ '?', "-?", NULL, + 0, "boolean", NULL, "Help (alternate)", assign_help },
{ 'X', "-X", NULL, + 0, "boolean", NULL, "Do not connect to CCS for configuration", assign_noccs },
{ 'L', "-L", NULL, + 0, "boolean", NULL, "Local mode only (no cluster; implies -X)", assign_nocluster },
{ 'U', "-U", "uri", + 0, "string", DEFAULT_HYPERVISOR_URI, "URI for Hypervisor (default: " DEFAULT_HYPERVISOR_URI ")", assign_uri }, { 'V', "-V", NULL, + 0, "string", NULL, "Display version and exit", assign_version },
/* Terminator */ - { 0, NULL, NULL, NULL, NULL } + { 0, NULL, NULL, 0, NULL, NULL, NULL, NULL } };
@@ -550,13 +573,24 @@ args_metadata(char *progname, const char *optstr) continue;
printf("\t<parameter name="%s">\n",arg->stdin_opt); - printf("\t\t<shortdesc lang="C">"); + printf("\t\t<getopt mixed="-%c" />\n",arg->opt); + if (arg->default_value) { + printf("\t\t<content type="%s" default="%s" />\n", arg->content_type, arg->default_value); + } else { + printf("\t\t<content type="%s" />\n", arg->content_type); + } + printf("\t\t<shortdesc lang="en">"); print_desc_xml(arg->desc); printf("</shortdesc>\n"); printf("\t</parameter>\n"); }
printf("</parameters>\n"); + printf("<actions>\n"); + printf("\t<action name="off" />\n"); + printf("\t<action name="reboot" />\n"); + printf("\t<action name="metadata" />\n"); + printf("</actions>\n"); printf("</resource-agent>\n"); }
diff --git a/fence/agents/xvm/options.h b/fence/agents/xvm/options.h index 1bf9955..1a4f8cd 100644 --- a/fence/agents/xvm/options.h +++ b/fence/agents/xvm/options.h @@ -39,6 +39,9 @@ struct arg_info { const char opt; const char *opt_desc; const char *stdin_opt; + const int required; + const char *content_type; + const char *default_value; const char *desc; void (*assign)(fence_xvm_args_t *, struct arg_info *, char *); };
cluster-commits@lists.stg.fedorahosted.org