From: Kefu Chai Date: Mon, 6 Apr 2020 10:55:53 +0000 (+0800) Subject: qa,test: decode return val of base64.b64encode() X-Git-Tag: v14.2.10~17^2~57 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=f6580267cd29196d5c10985075c33a40e8f776ce;p=ceph.git 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 --- diff --git a/qa/tasks/ragweed.py b/qa/tasks/ragweed.py index 624c81737f37..5fff317396b5 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 9c512b16498b..000bc41a3890 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),