From f6580267cd29196d5c10985075c33a40e8f776ce Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Mon, 6 Apr 2020 18:55:53 +0800 Subject: [PATCH] qa,test: decode return val of base64.b64encode() base64.b64encode() returns bytes in Python3, and we will pass it as a commandline parameter later on, which will be quoted. so the command line can be consumed by shell. so before sending it to shell, we should convert it to string. Signed-off-by: Kefu Chai (cherry picked from commit 91b49ab39d7377e0816fa3c44e2cabed9ce14f12) Conflicts: qa/tasks/s3tests_java.py: trivial resolution --- qa/tasks/ragweed.py | 3 ++- src/test/rgw/rgw_multi/zone_ps.py | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/qa/tasks/ragweed.py b/qa/tasks/ragweed.py index 624c81737f37b..5fff317396b57 100644 --- a/qa/tasks/ragweed.py +++ b/qa/tasks/ragweed.py @@ -8,6 +8,7 @@ import contextlib import logging import os import random +import six import string from teuthology import misc as teuthology @@ -102,7 +103,7 @@ def _config_user(ragweed_conf, section, user): ragweed_conf[section].setdefault('email', '{user}+test@test.test'.format(user=user)) ragweed_conf[section].setdefault('display_name', 'Mr. {user}'.format(user=user)) ragweed_conf[section].setdefault('access_key', ''.join(random.choice(string.ascii_uppercase) for i in range(20))) - ragweed_conf[section].setdefault('secret_key', base64.b64encode(os.urandom(40))) + ragweed_conf[section].setdefault('secret_key', base64.b64encode(os.urandom(40)).decode('ascii')) @contextlib.contextmanager diff --git a/src/test/rgw/rgw_multi/zone_ps.py b/src/test/rgw/rgw_multi/zone_ps.py index 9c512b16498b5..000bc41a38902 100644 --- a/src/test/rgw/rgw_multi/zone_ps.py +++ b/src/test/rgw/rgw_multi/zone_ps.py @@ -88,7 +88,7 @@ def make_request(conn, method, resource, parameters=None, sign_parameters=False, string_to_sign += url_params signature = base64.b64encode(hmac.new(conn.aws_secret_access_key, string_to_sign.encode('utf-8'), - hashlib.sha1).digest()) + hashlib.sha1).digest()).decode('ascii') headers = {'Authorization': 'AWS '+conn.aws_access_key_id+':'+signature, 'Date': string_date, 'Host': conn.host+':'+str(conn.port)} @@ -225,7 +225,7 @@ class PSTopicS3: log.debug('StringTosign: %s', string_to_sign) signature = base64.b64encode(hmac.new(self.conn.aws_secret_access_key, string_to_sign.encode('utf-8'), - hashlib.sha1).digest()) + hashlib.sha1).digest()).decode('ascii') headers = {'Authorization': 'AWS '+self.conn.aws_access_key_id+':'+signature, 'Date': string_date, 'Host': self.conn.host+':'+str(self.conn.port), @@ -267,7 +267,7 @@ class PSTopicS3: log.debug('StringTosign: %s', string_to_sign) signature = base64.b64encode(hmac.new(self.conn.aws_secret_access_key, string_to_sign.encode('utf-8'), - hashlib.sha1).digest()) + hashlib.sha1).digest()).decode('ascii') headers = {'Authorization': 'AWS '+self.conn.aws_access_key_id+':'+signature, 'Date': string_date, 'Host': self.conn.host+':'+str(self.conn.port), -- 2.39.5