aboutsummaryrefslogtreecommitdiffstats
path: root/manifests/nodes.pp
blob: ac0abd88af1e98b87cba750d78778ca1dd08946b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
# svn, big important server
node valstar {
# Location: IELO datacenter (marseille)
#
# TODO:
# - GIT server
# - setup youri
# - setup maintainers database (with web interface)
# - mirroring (Nanar)
#
    include default_mageia_server
    timezone::timezone { "Europe/Paris": }
    include rsyncd
    include main_mirror
    include openldap::master 
    include subversion::client
    include subversion::server
    include puppet::master
    include ssh::auth
    include ssh::auth::keymaster
    include buildsystem::mainnode
    include buildsystem::mgacreatehome

    include access_classes::committers
    include restrictshell::allow_git
    include restrictshell::allow_svn
    include restrictshell::allow_pkgsubmit
    # disabled the ldap key here instead of disabling for the
    # whole module ( see r698 )
    #include openssh::ssh_keys_from_ldap

    include repositories::subversion
    include repositories::git

    include websites::svn

    subversion::snapshot { "/etc/puppet":
        source => "svn://svn.mageia.org/svn/adm/puppet/"
    }
}

# web apps
node alamut {
# Location: IELO datacenter (marseille)
#
# TODO:
# - Review board
# - nagios
# - api
# - mail server
# - mailing list server
# - wiki
# - pastebin
# - LDAP slave
# 
    include default_mageia_server_no_smtp
    include postgresql::server
    timezone::timezone { "Europe/Paris": }

    include catdap
    include websites::donate
    include mga-mirrors
    include epoll
    include transifex
    include bugzilla
    include sympa::server
    include postfix::primary_smtp

    # temporary, just the time the vm is running there
    host { 'friteuse':
        ip => '192.168.122.131',
        host_aliases => [ "friteuse.$domain", "forums.$domain" ],
        ensure => 'present',
    }

    apache::vhost_reverse_proxy { "forums.$domain":
        url => "http://forums.$domain/",
    }

    # connect to ssl so the proxy do not shoke if trying to 
    # enforce ssl ( note that this has not been tested, maybe this
    # is uneeded )
    apache::vhost_reverse_proxy { "ssl_forums.$domain":
        url => "https://forums.$domain/",
        vhost => "forums.$domain",
        use_ssl => true,
    }


    include libvirtd::kvm
    include lists
    include dns::server 
    include repositories::mirror
    include viewvc
    include xymon::server
    apache::vhost_simple { "xymon.$domain":
	location => "/var/lib/xymon/www",
    }
}

# buildnode
node jonund {
# Location: IELO datacenter (marseille)
#
    include default_mageia_server
    include buildsystem::buildnode
    timezone::timezone { "Europe/Paris": }
    include shorewall
    include shorewall::default_firewall
    include testvm
}

node ecosse {
# Location: IELO datacenter (marseille)
#
    include default_mageia_server
    include buildsystem::buildnode
    timezone::timezone { "Europe/Paris": }
}

# backup server
node fiona {
# Location: IELO datacenter (marseille)
#
# TODO:
# - buy the server
# - install the server in datacenter
# - install a backup system
    include default_mageia_server
} 

# gandi-vm
node krampouezh {
# Location: gandi VM
#
# TODO:
# - secondary MX
# - LDAP slave (for external traffic maybe)
#
    #include default_mageia_server
    include default_mageia_server_no_smtp
    include postfix::secondary_smtp
    include blog::base
    include mysql::server
    include dns::server 
    timezone::timezone { "Europe/Paris": }
# Other services running on this server :
# - meetbot
}

node champagne {
# Location: gandi VM
#
# TODO:
# - setup mageia.org web site
# - setup blog
# - setup planet
#
    include default_mageia_server
    timezone::timezone { "Europe/Paris": }
    include blog::champagne
    include planet
    include websites::static
}

node friteuse {
# Location: VM hosted by nfrance (toulouse)
# 
# TODO:
# - setup forum

    include default_mageia_server
    timezone::timezone { "Europe/Paris": }
    include forums
}

node rabbit {
# Location: Server offered by Dedibox (paris)
# 
# - used to create isos ( and live, and so on )
# 
    include default_mageia_server
    timezone::timezone { "Europe/Paris": }
    include bcd::base
    include access_classes::iso_makers
    include openssh::ssh_keys_from_ldap
    include mirror::mirrormageia
    include releasekey::base

    # for testing iso quickly
    include libvirtd::kvm
    libvirtd::group_access { "mga-iso_makers": }
}