]> review.fuel-infra Code Review - tools/sustaining.git/commitdiff
[RabbitMQ] bugfixes to script 36/41736/1
authorDenis Meltsaykin <dmeltsaykin@mirantis.com>
Tue, 25 May 2021 12:39:02 +0000 (14:39 +0200)
committerDenis Meltsaykin <dmeltsaykin@mirantis.com>
Tue, 25 May 2021 12:39:02 +0000 (14:39 +0200)
Turned out the script doesn't work on older p3.5 due to differences
in HTTP objects and the fact that our RabbitMQ configured with
URL-encoded vhosts.

Change-Id: I06f4d0c9dacc75cd45e57e348f9e960f1dabd415

scripts/rabbitmq_check.py

index fa215156d84da89a3504613708668ee5404acfbd..c95c7f3d74ac9df1ad079d33e0140b5a9d271557 100755 (executable)
@@ -20,7 +20,7 @@ import json
 import logging
 
 from typing import Any
-from urllib import request as rq
+from urllib import request as rq, parse as pr
 
 log = logging.getLogger("rabbitmq_check")
 log.addHandler(logging.StreamHandler())
@@ -43,7 +43,7 @@ parser.add_argument('-P', '--port',
                     type=str, default='15672',
                     help='API Port')
 parser.add_argument('-V', '--vhost',
-                    type=str, default='openstack',
+                    type=str, default='/openstack',
                     help='Virtual Host to operate on')
 parser.add_argument('-s', '--ssl', action='store_true',
                     default=False, help='Use SSL (WIP)')
@@ -83,7 +83,7 @@ class APIConnector():
                   url, method, headers, body)
 
         with rq.urlopen(request) as data:
-            out = json.loads(data.read())
+            out = json.loads(data.read().decode('utf-8'))
         return out
 
 
@@ -91,6 +91,7 @@ class Checker():
     def __init__(self, opts: argparse.Namespace) -> None:
         self.conn = APIConnector(opts)
         self.opts = opts
+        self.opts.vhost = pr.quote_plus(self.opts.vhost)
 
     def get_bindings(self):
         log.info(