fence-agents/0011-fence_zvm-Add-support-for-on-improve-documentation.patch
Kristoffer Gronlund 86a3dd56d6 - Backport fixes from upstream (bnc#896833):
- fence_brocade: Add support for 'list' action
  - fencing: Monitor is not working correctly without 'list' or 'status'
  - fence_apc_snmp: Add support for firmware 6.x
  - fence_zvm: Add support for "on" and "status"
  - fence_zvm: Add current XML metadata to test suite
  - [build] Fix automake files, so 'make distcheck' works
  - fencing: Add new options --ssl-secure and --ssl-insecure
  - [tests] Update XML metadata of fence agents
  - fence_cisco_ucs & fence_vmware_soap: Logout has to be performed even when fencing fails
  - fence_zvm: Fixes for better upstream inclusion
  - fence_zvm: Add support for 'on', improve documentation
- Added patches:
  - 0001-fence_brocade-Add-support-for-list-action.patch
  - 0002-fencing-Monitor-is-not-working-correctly-without-lis.patch
  - 0003-fence_apc_snmp-Add-support-for-firmware-6.x.patch
  - 0004-fence_zvm-Add-support-for-on-and-status.patch
  - 0005-fence_zvm-Add-current-XML-metadata-to-test-suite.patch
  - 0006-build-Fix-automake-files-so-make-distcheck-works.patch
  - 0007-fencing-Add-new-options-ssl-secure-and-ssl-insecure.patch
  - 0008-tests-Update-XML-metadata-of-fence-agents.patch
  - 0009-fence_cisco_ucs-fence_vmware_soap-Logout-has-to-be-p.patch
  - 0010-fence_zvm-Fixes-for-better-upstream-inclusion.patch
  - 0011-fence_zvm-Add-support-for-on-improve-documentation.patch
- Add dependency on python-requests

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/fence-agents?expand=0&rev=16
2014-09-16 07:48:32 +00:00

235 lines
6.5 KiB
Diff

From 5d8e167cb54051ff95fcc8ac3e87d2c63209748a Mon Sep 17 00:00:00 2001
From: Marek 'marx' Grac <mgrac@redhat.com>
Date: Mon, 15 Sep 2014 15:05:25 +0200
Subject: [PATCH 11/11] fence_zvm: Add support for 'on', improve documentation
Author: Neale Ferguson
---
fence/agents/zvm/fence_zvm.8 | 2 +-
fence/agents/zvm/fence_zvm.c | 38 +++++++++++++++++++++-----------------
fence/agents/zvm/fence_zvmip.8 | 2 +-
fence/agents/zvm/fence_zvmip.c | 38 +++++++++++++++++++++-----------------
4 files changed, 44 insertions(+), 36 deletions(-)
diff --git a/fence/agents/zvm/fence_zvm.8 b/fence/agents/zvm/fence_zvm.8
index 359436e..8c0d35a 100644
--- a/fence/agents/zvm/fence_zvm.8
+++ b/fence/agents/zvm/fence_zvm.8
@@ -52,7 +52,7 @@ forcibly terminated. Currently, this option is ignored.
This option is used by fence_node(8) and is ignored by fence_zvm.
.TP
\fIaction = < action >\fP
-Fencing action: "off" - fence off device; "metadata" - display device metadata; "status" - state of device
+Fencing action: "off" - deactivate virtual machine; "on" - activate virtual machine; "metadata" - display device metadata" - describe fence agent parameters; "status" - state of virtual machine
.TP
\fIport = < target >\fP
Name of virtual machine to recycle.
diff --git a/fence/agents/zvm/fence_zvm.c b/fence/agents/zvm/fence_zvm.c
index e5a7c2b..524e21e 100644
--- a/fence/agents/zvm/fence_zvm.c
+++ b/fence/agents/zvm/fence_zvm.c
@@ -699,15 +699,15 @@ get_options_stdin (zvm_driver_t *zvm)
if (!strcasecmp (opt, "action")) {
if (strcasecmp(arg, "off") == 0) {
- fence = 0;
+ fence = 1;
} else if (strcasecmp(arg, "on") == 0) {
- fence = 1;
+ fence = 2;
} else if (strcasecmp(arg, "metadata") == 0) {
- fence = 2;
+ fence = 3;
} else if (strcasecmp(arg, "status") == 0) {
- fence = 3;
- } else {
fence = 4;
+ } else {
+ fence = 5;
}
} else if (!strcasecmp (opt, "ipaddr")) {
lSrvName = MIN(strlen(arg), sizeof(zvm->smapiSrv));
@@ -738,7 +738,7 @@ get_options_stdin (zvm_driver_t *zvm)
zvm->delay = DEFAULT_DELAY;
}
} else if (!strcasecmp (opt, "help")) {
- fence = 4;
+ fence = 5;
}
}
return(fence);
@@ -769,15 +769,15 @@ get_options(int argc, char **argv, zvm_driver_t *zvm)
break;
case 'o' :
if (strcasecmp(optarg, "off") == 0) {
- fence = 0;
+ fence = 1;
} else if (strcasecmp(optarg, "on") == 0) {
- fence = 1;
+ fence = 2;
} else if (strcasecmp(optarg, "metadata") == 0) {
- fence = 2;
+ fence = 3;
} else if (strcasecmp(optarg, "status") == 0) {
- fence = 3;
- } else {
fence = 4;
+ } else {
+ fence = 5;
}
break;
case 'a' :
@@ -807,7 +807,7 @@ get_options(int argc, char **argv, zvm_driver_t *zvm)
memcpy(zvm->node, optarg, lSrvNode);
break;
default :
- fence = 4;
+ fence = 5;
}
}
return(fence);
@@ -874,22 +874,26 @@ main(int argc, char **argv)
fence = get_options_stdin(&zvm);
switch(fence) {
- case 0 : // OFF
+ case 0 : // OFFON
+ if ((rc = check_parm(&zvm)) == 0)
+ rc = zvm_smapi_imageRecycle(&zvm);
+ break;
+ case 1 : // OFF
if ((rc = check_parm(&zvm)) == 0)
rc = zvm_smapi_imageDeactivate(&zvm);
break;
- case 1 : // ON
+ case 2 : // ON
if ((rc = check_parm(&zvm)) == 0)
rc = zvm_smapi_imageActivate(&zvm);
break;
- case 2 : // METADATA
+ case 3 : // METADATA
rc = zvm_metadata();
break;
- case 3 : // STATUS
+ case 4 : // STATUS
if ((rc = check_parm(&zvm)) == 0)
rc = zvm_smapi_imageQuery(&zvm);
break;
- case 4 :
+ case 5 :
rc = usage();
}
closelog();
diff --git a/fence/agents/zvm/fence_zvmip.8 b/fence/agents/zvm/fence_zvmip.8
index 8217d61..6b01425 100644
--- a/fence/agents/zvm/fence_zvmip.8
+++ b/fence/agents/zvm/fence_zvmip.8
@@ -55,7 +55,7 @@ Display usage information
This option is used by fence_node(8) and is ignored by fence_zvmip.
.TP
\fIaction = < action >\fP
-Fencing action: "off" - fence off device; "metadata" - display device metadata; "status" - state of device
+Fencing action: "off" - deactivate virtual machine; "on" - activate virtual machine; "metadata" - display device metadata" - describe fence agent parameters; "status" - state of virtual machine
.TP
\fIplug = < plug >\fP
Name of virtual machine to recycle.
diff --git a/fence/agents/zvm/fence_zvmip.c b/fence/agents/zvm/fence_zvmip.c
index 3342bc6..bd7c536 100644
--- a/fence/agents/zvm/fence_zvmip.c
+++ b/fence/agents/zvm/fence_zvmip.c
@@ -677,15 +677,15 @@ get_options_stdin (zvm_driver_t *zvm)
if (!strcasecmp (opt, "action")) {
if (strcasecmp(arg, "off") == 0) {
- fence = 0;
+ fence = 1;
} else if (strcasecmp(arg, "on") == 0) {
- fence = 1;
+ fence = 2;
} else if (strcasecmp(arg, "metadata") == 0) {
- fence = 2;
+ fence = 3;
} else if (strcasecmp(arg, "status") == 0) {
- fence = 3;
- } else {
fence = 4;
+ } else {
+ fence = 5;
}
} else if (!strcasecmp (opt, "ipaddr")) {
lSrvName = MIN(strlen(arg), sizeof(zvm->smapiSrv)-1);
@@ -712,7 +712,7 @@ get_options_stdin (zvm_driver_t *zvm)
zvm->timeOut = DEFAULT_TIMEOUT;
}
} else if (!strcasecmp (opt, "help")) {
- fence = 2;
+ fence = 5;
}
}
return(fence);
@@ -746,15 +746,15 @@ get_options(int argc, char **argv, zvm_driver_t *zvm)
break;
case 'o' :
if (strcasecmp(optarg, "off") == 0) {
- fence = 0;
+ fence = 1;
} else if (strcasecmp(optarg, "on") == 0) {
- fence = 1;
+ fence = 2;
} else if (strcasecmp(optarg, "metadata") == 0) {
- fence = 2;
+ fence = 3;
} else if (strcasecmp(optarg, "status") == 0) {
- fence = 3;
- } else {
fence = 4;
+ } else {
+ fence = 5;
}
break;
case 'p' :
@@ -784,7 +784,7 @@ get_options(int argc, char **argv, zvm_driver_t *zvm)
}
break;
default :
- fence = 4;
+ fence = 5;
}
}
return(fence);
@@ -944,22 +944,26 @@ main(int argc, char **argv)
fence = get_options_stdin(&zvm);
switch(fence) {
- case 0 : // OFF
+ case 0 : // OFFON
+ if ((rc = check_parm(&zvm)) == 0)
+ rc = zvm_smapi_imageRecycle(&zvm);
+ break;
+ case 1 : // OFF
if ((rc = check_parm(&zvm)) == 0)
rc = zvm_smapi_imageDeactivate(&zvm);
break;
- case 1 : // ON
+ case 2 : // ON
if ((rc = check_parm(&zvm)) == 0)
rc = zvm_smapi_imageActivate(&zvm);
break;
- case 2 : // METADATA
+ case 3 : // METADATA
rc = zvm_metadata();
break;
- case 3 : // STATUS
+ case 4 : // STATUS
if ((rc = check_parm(&zvm)) == 0)
rc = zvm_smapi_imageQuery(&zvm);
break;
- case 4 :
+ case 5 :
rc = usage();
}
closelog();
--
1.8.4.5