summaryrefslogtreecommitdiff
path: root/mailman/archiving/pipermail.py
diff options
context:
space:
mode:
Diffstat (limited to 'mailman/archiving/pipermail.py')
-rw-r--r--mailman/archiving/pipermail.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/mailman/archiving/pipermail.py b/mailman/archiving/pipermail.py
index df16e6e98..d534f1600 100644
--- a/mailman/archiving/pipermail.py
+++ b/mailman/archiving/pipermail.py
@@ -1,4 +1,4 @@
-# Copyright (C) 2007-2008 by the Free Software Foundation, Inc.
+# Copyright (C) 2007-2009 by the Free Software Foundation, Inc.
#
# This file is part of GNU Mailman.
#
@@ -30,7 +30,9 @@ from string import Template
from zope.interface import implements
from zope.interface.interface import adapter_hooks
-from mailman.configuration import config
+from mailman import Defaults
+from mailman.Utils import makedirs
+from mailman.config import config
from mailman.interfaces.archiver import IArchiver, IPipermailMailingList
from mailman.interfaces.mailinglist import IMailingList
@@ -55,7 +57,10 @@ class PipermailMailingListAdapter:
basedir = config.PRIVATE_ARCHIVE_FILE_DIR
else:
basedir = config.PUBLIC_ARCHIVE_FILE_DIR
- return os.path.join(basedir, self._mlist.fqdn_listname)
+ # Make sure the archive directory exists.
+ archive_dir = os.path.join(basedir, self._mlist.fqdn_listname)
+ makedirs(archive_dir)
+ return archive_dir
def adapt_mailing_list_for_pipermail(iface, obj):
@@ -91,7 +96,7 @@ class Pipermail:
url = mlist.script_url('private') + '/index.html'
else:
web_host = config.domains[mlist.host_name].url_host
- url = Template(config.PUBLIC_ARCHIVE_URL).safe_substitute(
+ url = Template(config.archiver.pipermail.base_url).safe_substitute(
listname=mlist.fqdn_listname,
hostname=web_host,
fqdn_listname=mlist.fqdn_listname,