- Update to version 4.2.1+git.1529316875.1a39345b:

* fence_vmware_soap: fix Python 3 suds issue
  * Added python-novaclient and python-keystoneclient in configure.ac
  * novaclient 1.1 depcrecated, so making changes for novaclient
  * Python keystoneclient also included to pacify CI
  * Changed travis to include pythomn-novaclient
  * Fencing Agent for Openstack
  * fence_scsi: fix python3 encoding error #206
  * fence_ipmilan: add missing fence_ilo3 and fence_ilo4 metadata
  * fence_scsi: match device names using re.MULTILINE to avoid duplicating names in /var/run/cluster/fence_scsi.dev
  * fence_gce: use default credentials from googleapiclient
  * run_command: fix Python 3 encoding issue
- Drop merged patches:
  * Remove 0002-fence_gce-fix-regression-missing-import-googleapicli.patch
  * Remove 0003-fence_gce-fix-regression-missing-import-oauth2client.patch
  * Remove 0004-fence_gce-use-default-credentials-from-googleapiclie.patch
  * Remove0005-run_command-fix-Python-3-encoding-issue.patch

OBS-URL: https://build.opensuse.org/package/show/network:ha-clustering:Factory/fence-agents?expand=0&rev=89
This commit is contained in:
Kristoffer Gronlund 2018-06-20 13:55:41 +00:00 committed by Git OBS Bridge
parent 49a513e01e
commit d17310628c
11 changed files with 79 additions and 240 deletions

View File

@ -1,110 +1,110 @@
From ce334130410b6295ff208283d72aa21cbe02769f Mon Sep 17 00:00:00 2001
From cb2c637fa006c566af05ae84b5085c9a9b14541d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kristoffer=20Gr=C3=B6nlund?= <krig@koru.se>
Date: Wed, 1 Nov 2017 10:28:22 +0100
Date: Wed, 20 Jun 2018 11:12:56 +0200
Subject: [PATCH] Use Python 3 for all scripts (bsc#1065966)
---
fence/agents/autodetect/autodetect.py | 2 +-
fence/agents/autodetect/autodetect_test.py | 2 +-
fence/agents/autodetect/fence_apc.py | 2 +-
fence/agents/autodetect/fence_bladecenter.py | 2 +-
fence/agents/autodetect/fence_brocade.py | 2 +-
fence/agents/autodetect/fence_ilo_moonshot.py | 2 +-
fence/agents/autodetect/fence_lpar.py | 2 +-
fence/agents/autodetect/fencing.py | 2 +-
fence/agents/lib/tests/test_fencing.py | 2 +-
agents/autodetect/autodetect.py | 2 +-
agents/autodetect/autodetect_test.py | 2 +-
agents/autodetect/fence_apc.py | 2 +-
agents/autodetect/fence_bladecenter.py | 2 +-
agents/autodetect/fence_brocade.py | 2 +-
agents/autodetect/fence_ilo_moonshot.py | 2 +-
agents/autodetect/fence_lpar.py | 2 +-
agents/autodetect/fencing.py | 2 +-
lib/tests/test_fencing.py | 2 +-
tests/fence_testing_test.py | 2 +-
tests/test-apc2.py | 4 ++--
tests/test-apc5.py | 4 ++--
tests/test-drac4.py | 4 ++--
tests/test-multi-apc2.py | 4 ++--
tests/test.py | 4 ++--
15 files changed, 20 insertions(+), 20 deletions(-)
tests/test-apc2.py | 2 +-
tests/test-apc5.py | 2 +-
tests/test-drac4.py | 2 +-
tests/test-multi-apc2.py | 2 +-
tests/test.py | 2 +-
15 files changed, 15 insertions(+), 15 deletions(-)
diff --git a/fence/agents/autodetect/autodetect.py b/fence/agents/autodetect/autodetect.py
diff --git a/agents/autodetect/autodetect.py b/agents/autodetect/autodetect.py
index 24d9a731..366e5212 100755
--- a/fence/agents/autodetect/autodetect.py
+++ b/fence/agents/autodetect/autodetect.py
--- a/agents/autodetect/autodetect.py
+++ b/agents/autodetect/autodetect.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/python3
import pexpect
import re
diff --git a/fence/agents/autodetect/autodetect_test.py b/fence/agents/autodetect/autodetect_test.py
diff --git a/agents/autodetect/autodetect_test.py b/agents/autodetect/autodetect_test.py
index a18aaed0..462c469d 100755
--- a/fence/agents/autodetect/autodetect_test.py
+++ b/fence/agents/autodetect/autodetect_test.py
--- a/agents/autodetect/autodetect_test.py
+++ b/agents/autodetect/autodetect_test.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/python3
import unittest
import autodetect as detect
diff --git a/fence/agents/autodetect/fence_apc.py b/fence/agents/autodetect/fence_apc.py
diff --git a/agents/autodetect/fence_apc.py b/agents/autodetect/fence_apc.py
index c6dd106e..935f18e8 100644
--- a/fence/agents/autodetect/fence_apc.py
+++ b/fence/agents/autodetect/fence_apc.py
--- a/agents/autodetect/fence_apc.py
+++ b/agents/autodetect/fence_apc.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python -tt
+#!/usr/bin/python3 -tt
#####
##
diff --git a/fence/agents/autodetect/fence_bladecenter.py b/fence/agents/autodetect/fence_bladecenter.py
diff --git a/agents/autodetect/fence_bladecenter.py b/agents/autodetect/fence_bladecenter.py
index d72c07f1..dbcdb0d8 100644
--- a/fence/agents/autodetect/fence_bladecenter.py
+++ b/fence/agents/autodetect/fence_bladecenter.py
--- a/agents/autodetect/fence_bladecenter.py
+++ b/agents/autodetect/fence_bladecenter.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python -tt
+#!/usr/bin/python3 -tt
#####
##
diff --git a/fence/agents/autodetect/fence_brocade.py b/fence/agents/autodetect/fence_brocade.py
diff --git a/agents/autodetect/fence_brocade.py b/agents/autodetect/fence_brocade.py
index 5257bccb..f1df7a23 100644
--- a/fence/agents/autodetect/fence_brocade.py
+++ b/fence/agents/autodetect/fence_brocade.py
--- a/agents/autodetect/fence_brocade.py
+++ b/agents/autodetect/fence_brocade.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python -tt
+#!/usr/bin/python3 -tt
import sys, re
import atexit
diff --git a/fence/agents/autodetect/fence_ilo_moonshot.py b/fence/agents/autodetect/fence_ilo_moonshot.py
diff --git a/agents/autodetect/fence_ilo_moonshot.py b/agents/autodetect/fence_ilo_moonshot.py
index e161ac65..a7e827bb 100644
--- a/fence/agents/autodetect/fence_ilo_moonshot.py
+++ b/fence/agents/autodetect/fence_ilo_moonshot.py
--- a/agents/autodetect/fence_ilo_moonshot.py
+++ b/agents/autodetect/fence_ilo_moonshot.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python -tt
+#!/usr/bin/python3 -tt
import sys
import atexit
diff --git a/fence/agents/autodetect/fence_lpar.py b/fence/agents/autodetect/fence_lpar.py
diff --git a/agents/autodetect/fence_lpar.py b/agents/autodetect/fence_lpar.py
index 6676e1c6..59cc2213 100644
--- a/fence/agents/autodetect/fence_lpar.py
+++ b/fence/agents/autodetect/fence_lpar.py
--- a/agents/autodetect/fence_lpar.py
+++ b/agents/autodetect/fence_lpar.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python -tt
+#!/usr/bin/python3 -tt
#####
##
diff --git a/fence/agents/autodetect/fencing.py b/fence/agents/autodetect/fencing.py
diff --git a/agents/autodetect/fencing.py b/agents/autodetect/fencing.py
index ea21ace1..5d891eee 100644
--- a/fence/agents/autodetect/fencing.py
+++ b/fence/agents/autodetect/fencing.py
--- a/agents/autodetect/fencing.py
+++ b/agents/autodetect/fencing.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python -tt
+#!/usr/bin/python3 -tt
import sys, getopt, time, os, uuid, pycurl, stat
import pexpect, re, syslog
diff --git a/fence/agents/lib/tests/test_fencing.py b/fence/agents/lib/tests/test_fencing.py
diff --git a/lib/tests/test_fencing.py b/lib/tests/test_fencing.py
index 6ee93858..389e9746 100644
--- a/fence/agents/lib/tests/test_fencing.py
+++ b/fence/agents/lib/tests/test_fencing.py
--- a/lib/tests/test_fencing.py
+++ b/lib/tests/test_fencing.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python
+#!/usr/bin/python3
@ -122,7 +122,7 @@ index 36b2a5e0..9da9d0cf 100755
import unittest
import fence_testing
diff --git a/tests/test-apc2.py b/tests/test-apc2.py
index bb5aefd8..bc120dcb 100755
index bb5aefd8..d4325b9d 100755
--- a/tests/test-apc2.py
+++ b/tests/test-apc2.py
@@ -1,4 +1,4 @@
@ -131,15 +131,8 @@ index bb5aefd8..bc120dcb 100755
from fence_testing import test_action
@@ -14,4 +14,4 @@ def main():
test_action(DEVICE, ACT_LIST, "getopt")
if __name__ == "__main__":
- main()
\ No newline at end of file
+ main()
diff --git a/tests/test-apc5.py b/tests/test-apc5.py
index 6cea3b1c..8c24ecf5 100755
index 6cea3b1c..2679b15b 100755
--- a/tests/test-apc5.py
+++ b/tests/test-apc5.py
@@ -1,4 +1,4 @@
@ -148,15 +141,8 @@ index 6cea3b1c..8c24ecf5 100755
from fence_testing import test_action
@@ -14,4 +14,4 @@ def main():
test_action(DEVICE, ACT_LIST, "getopt")
if __name__ == "__main__":
- main()
\ No newline at end of file
+ main()
diff --git a/tests/test-drac4.py b/tests/test-drac4.py
index 75c24c51..d4b14cb2 100755
index 75c24c51..b750f0f3 100755
--- a/tests/test-drac4.py
+++ b/tests/test-drac4.py
@@ -1,4 +1,4 @@
@ -165,15 +151,8 @@ index 75c24c51..d4b14cb2 100755
from fence_testing import test_action
@@ -12,4 +12,4 @@ def main():
test_action(DRAC4, ACT_ONOFF, "stdin")
if __name__ == "__main__":
- main()
\ No newline at end of file
+ main()
diff --git a/tests/test-multi-apc2.py b/tests/test-multi-apc2.py
index 7ab9754d..1c03912e 100755
index 7ab9754d..e06e3d97 100755
--- a/tests/test-multi-apc2.py
+++ b/tests/test-multi-apc2.py
@@ -1,4 +1,4 @@
@ -182,15 +161,8 @@ index 7ab9754d..1c03912e 100755
from fence_testing import test_action
@@ -14,4 +14,4 @@ def main():
test_action(DEVICE, ACT_LIST, "getopt")
if __name__ == "__main__":
- main()
\ No newline at end of file
+ main()
diff --git a/tests/test.py b/tests/test.py
index 8e82ed98..4204fae5 100755
index 8e82ed98..a39822ec 100755
--- a/tests/test.py
+++ b/tests/test.py
@@ -1,4 +1,4 @@
@ -199,13 +171,6 @@ index 8e82ed98..4204fae5 100755
from fence_testing import test_action
@@ -18,4 +18,4 @@ def main():
test_action(DUMMYDEF, ACT_ONOFF, "getopt")
if __name__ == "__main__":
- main()
\ No newline at end of file
+ main()
--
2.16.2
2.17.1

View File

@ -1,28 +0,0 @@
From e22d41504ee53e5a4a72009581d4d69e9ae7447b Mon Sep 17 00:00:00 2001
From: Helen Koike <helen.koike@collabora.com>
Date: Fri, 20 Apr 2018 01:59:38 -0300
Subject: [PATCH 2/5] fence_gce: fix regression - missing import
googleapiclient.discovery
import googleapiclient.discovery was missing
import googleapiclient is not required
---
fence/agents/gce/fence_gce.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fence/agents/gce/fence_gce.py b/fence/agents/gce/fence_gce.py
index c1f8b16f..04d59846 100644
--- a/fence/agents/gce/fence_gce.py
+++ b/fence/agents/gce/fence_gce.py
@@ -4,7 +4,7 @@ import atexit
import sys
sys.path.append("@FENCEAGENTSLIBDIR@")
-import googleapiclient
+import googleapiclient.discovery
import oauth2client
from fencing import fail_usage, run_delay, all_opt, atexit_handler, check_input, process_input, show_docs, fence_action
--
2.16.3

View File

@ -1,38 +0,0 @@
From ba8169f4ef2d715ed681ae38f599aa544fa00023 Mon Sep 17 00:00:00 2001
From: Helen Koike <helen.koike@collabora.com>
Date: Tue, 1 May 2018 14:01:20 -0300
Subject: [PATCH 3/5] fence_gce: fix regression - missing import
oauth2client.client
import oauth2client.client was missing
import oauth2client is not necessary
Fix wrong path to GoogleCredentials
---
fence/agents/gce/fence_gce.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fence/agents/gce/fence_gce.py b/fence/agents/gce/fence_gce.py
index 04d59846..3a614f14 100644
--- a/fence/agents/gce/fence_gce.py
+++ b/fence/agents/gce/fence_gce.py
@@ -5,7 +5,7 @@ import sys
sys.path.append("@FENCEAGENTSLIBDIR@")
import googleapiclient.discovery
-import oauth2client
+import oauth2client.client
from fencing import fail_usage, run_delay, all_opt, atexit_handler, check_input, process_input, show_docs, fence_action
def translate_status(instance_status):
@@ -99,7 +99,7 @@ def main():
run_delay(options)
try:
- credentials = oauth2client.GoogleCredentials.get_application_default()
+ credentials = oauth2client.client.GoogleCredentials.get_application_default()
conn = googleapiclient.discovery.build('compute', 'v1', credentials=credentials)
except Exception as err:
fail_usage("Failed: Create GCE compute v1 connection: {}".format(str(err)))
--
2.16.3

View File

@ -1,43 +0,0 @@
From f94bc0bb6058fe791d597ed8aa5f60f9410debdb Mon Sep 17 00:00:00 2001
From: Helen Koike <helen.koike@collabora.com>
Date: Fri, 27 Apr 2018 13:51:40 -0300
Subject: [PATCH 4/5] fence_gce: use default credentials from googleapiclient
There are two ways for performing credentials
1) google-auth
2) oauth2client (deprecated)
googleapiclient check which libraries are present in the system and use
the most apropriated one in the order above.
Also keep compatibility with previous version of googleapiclient library
---
fence/agents/gce/fence_gce.py | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/fence/agents/gce/fence_gce.py b/fence/agents/gce/fence_gce.py
index 3a614f14..3abb5207 100644
--- a/fence/agents/gce/fence_gce.py
+++ b/fence/agents/gce/fence_gce.py
@@ -5,7 +5,6 @@ import sys
sys.path.append("@FENCEAGENTSLIBDIR@")
import googleapiclient.discovery
-import oauth2client.client
from fencing import fail_usage, run_delay, all_opt, atexit_handler, check_input, process_input, show_docs, fence_action
def translate_status(instance_status):
@@ -99,7 +98,10 @@ def main():
run_delay(options)
try:
- credentials = oauth2client.client.GoogleCredentials.get_application_default()
+ credentials = None
+ if tuple(googleapiclient.__version__) < tuple("1.6.0"):
+ import oauth2client.client
+ credentials = oauth2client.client.GoogleCredentials.get_application_default()
conn = googleapiclient.discovery.build('compute', 'v1', credentials=credentials)
except Exception as err:
fail_usage("Failed: Create GCE compute v1 connection: {}".format(str(err)))
--
2.16.3

View File

@ -1,27 +0,0 @@
From b587642048b9f75cdc08d4d9e3fa03f14811cc21 Mon Sep 17 00:00:00 2001
From: Oyvind Albrigtsen <oalbrigt@redhat.com>
Date: Fri, 20 Apr 2018 15:16:42 +0200
Subject: [PATCH 5/5] run_command: fix Python 3 encoding issue
---
fence/agents/lib/fencing.py.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/fence/agents/lib/fencing.py.py b/fence/agents/lib/fencing.py.py
index 5b38460e..15914f0f 100644
--- a/fence/agents/lib/fencing.py.py
+++ b/fence/agents/lib/fencing.py.py
@@ -995,7 +995,9 @@ def run_command(options, command, timeout=None, env=None, log_command=None):
logging.info("Executing: %s\n", log_command or command)
try:
- process = subprocess.Popen(shlex.split(command), stdout=subprocess.PIPE, stderr=subprocess.PIPE, env=env)
+ process = subprocess.Popen(shlex.split(command), stdout=subprocess.PIPE, stderr=subprocess.PIPE, env=env,
+ # decodes newlines and in python3 also converts bytes to str
+ universal_newlines=(sys.version_info[0] > 2))
except OSError:
fail_usage("Unable to run %s\n" % command)
--
2.16.3

View File

@ -4,7 +4,7 @@
<param name="scm">git</param>
<param name="exclude">.git</param>
<param name="filename">fence-agents</param>
<param name="versionformat">4.0.25+git.%ct.%h</param>
<param name="versionformat">4.2.1+git.%ct.%h</param>
<param name="revision">master</param>
<param name="changesgenerate">enable</param>
</service>

View File

@ -1,4 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">git://github.com/ClusterLabs/fence-agents.git</param>
<param name="changesrevision">bec154345d2291c9051c16277de9054387dc9707</param></service></servicedata>
<param name="changesrevision">9b763accb5c4c4a1cf60a19592a4033bcedec500</param></service></servicedata>

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ee413b7cded60948b8efcccd8ad98d1f5272377aec652a673e461da7db141070
size 224144

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:eafd2de2c6caa66fe49df43b1764f3cb261adcaf71b4bdbf15032ced449817b3
size 228396

View File

@ -1,3 +1,25 @@
-------------------------------------------------------------------
Wed Jun 20 09:06:43 UTC 2018 - kgronlund@suse.com
- Update to version 4.2.1+git.1529316875.1a39345b:
* fence_vmware_soap: fix Python 3 suds issue
* Added python-novaclient and python-keystoneclient in configure.ac
* novaclient 1.1 depcrecated, so making changes for novaclient
* Python keystoneclient also included to pacify CI
* Changed travis to include pythomn-novaclient
* Fencing Agent for Openstack
* fence_scsi: fix python3 encoding error #206
* fence_ipmilan: add missing fence_ilo3 and fence_ilo4 metadata
* fence_scsi: match device names using re.MULTILINE to avoid duplicating names in /var/run/cluster/fence_scsi.dev
* fence_gce: use default credentials from googleapiclient
* run_command: fix Python 3 encoding issue
- Drop merged patches:
* Remove 0002-fence_gce-fix-regression-missing-import-googleapicli.patch
* Remove 0003-fence_gce-fix-regression-missing-import-oauth2client.patch
* Remove 0004-fence_gce-use-default-credentials-from-googleapiclie.patch
* Remove0005-run_command-fix-Python-3-encoding-issue.patch
-------------------------------------------------------------------
Thu May 17 16:19:11 UTC 2018 - kgronlund@suse.com

View File

@ -27,19 +27,11 @@ Name: fence-agents
Summary: Fence Agents for High Availability
License: GPL-2.0-only AND LGPL-2.1-only
Group: Productivity/Clustering/HA
Version: 4.0.25+git.1524215631.8f9c770a
Version: 4.2.1+git.1529316875.1a39345b
Release: 0
Url: https://github.com/ClusterLabs/fence-agents
Source0: %{name}-%{version}.tar.xz
Patch1: 0001-Use-Python-3-for-all-scripts-bsc-1065966.patch
# fence_gce: fix regression - missing import googleapiclient.discovery
Patch2: 0002-fence_gce-fix-regression-missing-import-googleapicli.patch
# fence_gce: fix regression - missing import oauth2client.client
Patch3: 0003-fence_gce-fix-regression-missing-import-oauth2client.patch
# fence_gce: use default credentials from googleapiclient
Patch4: 0004-fence_gce-use-default-credentials-from-googleapiclie.patch
# run_command: fix Python 3 encoding issue (bsc#1082871)
Patch5: 0005-run_command-fix-Python-3-encoding-issue.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf
@ -111,10 +103,6 @@ development.
%prep
%setup -q -n %{name}-%{version}
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%build
CFLAGS="${CFLAGS} ${RPM_OPT_FLAGS}"