Extract torrent trackers into a settings variable

This allows them to be overridden and changed in a central location,
like we do with the SVN URL, PXE boot URL, etc.

Signed-off-by: Dan McGee <dan@archlinux.org>
This commit is contained in:
Dan McGee 2013-01-28 14:13:53 -07:00
parent 7d4a8b9adf
commit bc539b6ed1
2 changed files with 9 additions and 2 deletions

View File

@ -5,6 +5,7 @@
import markdown
from pytz import utc
from django.conf import settings
from django.core.urlresolvers import reverse
from django.db import models
from django.db.models.signals import pre_save
@ -146,9 +147,9 @@ def iso_url(self):
def magnet_uri(self):
query = [
('dn', "archlinux-%s-dual.iso" % self.version),
('tr', "udp://tracker.archlinux.org:6969"),
('tr', "http://tracker.archlinux.org:6969/announce"),
]
if settings.TORRENT_TRACKERS:
query.extend(('tr', uri) for uri in settings.TORRENT_TRACKERS)
if self.torrent_infohash:
query.insert(0, ('xt', "urn:btih:%s" % self.torrent_infohash))
return "magnet:?%s" % '&'.join(['%s=%s' % (k, v) for k, v in query])

View File

@ -164,6 +164,12 @@
# community bit on the end, repo.svn_root is appended)
SVN_BASE_URL = 'svn://svn.archlinux.org/'
# Trackers used for ISO download magnet links
TORRENT_TRACKERS = (
'udp://tracker.archlinux.org:6969',
'http://tracker.archlinux.org:6969/announce',
)
## Import local settings
from local_settings import *