your_ip_to_ip
[hcoop/domtool2.git] / lib / mailman.dtl
CommitLineData
325285ab
AC
1{{Mailman mailing list system}}
2
3extern val mailmanWebHost : domain -> [Domain];
4{{Set the hostname of the web site for administration of mailing lists for this
5 domain.}}
e9f528ab 6
b5f2d506 7extern type mailman_node;
e9f528ab
AC
8{{Like <tt>web_node</tt>, but with the possibility of using some additional
9 nodes set by the admins.}}
10
b5f2d506 11extern val mailman_node : mailman_node;
e9f528ab
AC
12{{The default location for Mailman web interfaces}}
13
b5f2d506
AC
14extern val mailman_node_to_node : mailman_node -> node;
15
16extern type mailman_place;
17extern val mailman_place_default : mailman_node -> mailman_place;
18extern val mailman_place : mailman_node -> your_ip -> mailman_place;
19extern val mailman_place_to_web_node : mailman_place -> web_node;
20extern val mailman_place_to_node : mailman_place -> node;
21extern val mailman_place_to_ip : mailman_place -> ip;
22{{Analogous to <tt>web_place</tt>, but based on <tt>mailman_node</tt>s}}
e9f528ab
AC
23
24extern val mailmanVhost : host -> [Domain]
b5f2d506 25 {MailmanPlaces : [mailman_place],
e9f528ab
AC
26 SSL : ssl,
27 User : your_user};
28{{Create an Apache virtual host to serve as the web interface for some Mailman
29 lists.}}
30
31val mailman = \ host : (host) -> begin
c4b8e3b5
AC
32 let
33 domainHost host;
34 in
b5f2d506 35 dnsIP host (ip_of_node (mailman_node_to_node mailman_node));
c4b8e3b5
AC
36 mwh <- Hostname;
37 mailmanWebHost mwh;
38 mailmanVhost host where
b5f2d506 39 MailmanPlaces = [mailman_place_default mailman_node];
c4b8e3b5
AC
40 SSL = no_ssl
41 end
42 end
e9f528ab
AC
43end;
44{{The most common Mailman config, for when you want to have a virtual host of your
45 domain dedicated to a Mailman interface. Provide the name of that host (e.g.,
46 "lists") to this directive, and it will take care of the rest.}}