]> git.ipfire.org Git - pbs.git/commitdiff
release monitoring: Use our own HTTP client
authorMichael Tremer <michael.tremer@ipfire.org>
Mon, 15 May 2023 14:50:54 +0000 (14:50 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Mon, 15 May 2023 14:50:54 +0000 (14:50 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/buildservice/httpclient.py
src/buildservice/releasemonitoring.py

index 698e696d09ec4ba89694ec09511326d9ac52b323..d79beff485d623c676bb90e3b39c4f4c24beacf0 100644 (file)
@@ -33,6 +33,10 @@ from .__version__ import VERSION as __version__
 # Setup logging
 log = logging.getLogger("pbs.httpclient")
 
+# Copy exceptions
+HTTPError = tornado.httpclient.HTTPError
+
+# Copy the request object
 HTTPRequest = tornado.httpclient.HTTPRequest
 
 class HTTPClient(tornado.curl_httpclient.CurlAsyncHTTPClient):
index 9d13af347d174e2617f615a3f14f6122ad3f569d..fda84170cd383fd126e018363da1d1a3297475db 100644 (file)
 
 import json
 import logging
-import tornado.httpclient
 import urllib.parse
 
 from . import base
 from . import database
+from . import httpclient
 from .decorators import *
 
 # Setup logging
@@ -33,9 +33,6 @@ log = logging.getLogger("pbs.releasemonitoring")
 class ReleaseMonitoring(base.Object):
        baseurl = "https://release-monitoring.org"
 
-       def init(self):
-               self.client = tornado.httpclient.AsyncHTTPClient()
-
        @property
        def api_key(self):
                return self.settings.get("release-monitoring-api-key")
@@ -60,20 +57,12 @@ class ReleaseMonitoring(base.Object):
                        data = urllib.parse.urlencode(data)
 
                # Create a new request
-               req = tornado.httpclient.HTTPRequest(
+               req = httpclient.HTTPRequest(
                        method=method, url=url, headers=headers, body=data,
                )
 
                # Send the request and wait for a response
-               try:
-                       res = await self.client.fetch(req)
-
-               except tornado.httpclient.HTTPError as e:
-                       print(e.response.body)
-
-                       raise e
-
-               log.debug("Response received in %.2fms" % (res.request_time * 1000))
+               res = await self.backend.httpclient.fetch(req)
 
                # Decode JSON response
                if res.body: