]> git.ipfire.org Git - people/jschlag/pbs.git/blobdiff - src/buildservice/mirrors.py
mirrors: Add option to support HTTPS
[people/jschlag/pbs.git] / src / buildservice / mirrors.py
index 61404f7c79292dcf1a2e006b08406d231667c872..0c28ddd4dcd1ed881ed1f4c6a315b8c37e1832e6 100644 (file)
@@ -160,13 +160,22 @@ class Mirror(base.DataObject):
                return self.make_url()
 
        def make_url(self, path=""):
-               url = "http://%s%s" % (self.hostname, self.path)
+               url = "%s://%s%s" % (
+                       "https" if self.supports_https else "http",
+                       self.hostname,
+                       self.path
+               )
 
                if path.startswith("/"):
                        path = path[1:]
 
                return urlparse.urljoin(url, path)
 
+       def set_supports_https(self, supports_https):
+               self._set_attribute("supports_https", supports_https)
+
+       supports_https = property(lambda s: s.data.supports_https, set_supports_https)
+
        def set_owner(self, owner):
                self._set_attribute("owner", owner)