Update varnishpurge trigger to use requests and be py3
authorMagnus Hagander <magnus@hagander.net>
Thu, 7 Feb 2019 21:20:02 +0000 (22:20 +0100)
committerMagnus Hagander <magnus@hagander.net>
Thu, 7 Feb 2019 21:20:02 +0000 (22:20 +0100)
triggers.py

index 5155185818772e74cea8c9adf433a28d4042fb6f..c78aab7e3083c7030235c158eeed748a6c407b4a 100644 (file)
@@ -1,12 +1,12 @@
+import requests
+
+
 class test(object):
     def __init__(self, cfg):
         pass
 
     def pushtrigger(self, reponame, username):
-        print "Firing push trigger for repository '%s', due to push by %s" % (reponame, username)
-
-
-import httplib
+        print("Firing push trigger for repository '%s', due to push by %s" % (reponame, username))
 
 
 class varnishpurger(object):
@@ -32,17 +32,19 @@ class varnishpurger(object):
                   '^/gitweb/\?p=%s.git' % reponame,
                   '^/git/%s' % reponame]:
             if not self._internal_purge(u):
-                print "Varnish purge failed, website may become slightly out of date"
+                print("Varnish purge failed, website may become slightly out of date")
                 return
 
     def _internal_purge(self, url):
         try:
-            conn = httplib.HTTPConnection(self.host)
-            conn.request("GET", "/varnish-purge-url", '', {'X-Purge-URL': url})
-            resp = conn.getresponse()
-            conn.close()
-            if resp.status == 200:
+            resp = requests.get(
+                "http://{0}/varnish-purge-url".format(self.host),
+                headers={
+                    'X-Purge-URL': url,
+                }
+            )
+            if resp.status_code == 200:
                 return True
             return False
-        except Exception, ex:
+        except Exception as ex:
             return False