1 |
# to not repeat the setting everywhere |
2 |
Exec { path => "/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/sbin/" } |
3 |
|
4 |
# svn, big important server |
5 |
node valstar { |
6 |
# Location: IELO datacenter (marseille) |
7 |
# |
8 |
# TODO: |
9 |
# - GIT server |
10 |
# - setup youri |
11 |
# - setup maintainers database (with web interface) |
12 |
# - mirroring (Nanar) |
13 |
# |
14 |
include common::default_mageia_server |
15 |
timezone::timezone { "Europe/Paris": } |
16 |
include main_mirror |
17 |
include openldap::master |
18 |
include subversion::client |
19 |
include subversion::server |
20 |
include puppet::master |
21 |
include ssh::auth |
22 |
include ssh::auth::keymaster |
23 |
include buildsystem::mainnode |
24 |
include buildsystem::mgacreatehome |
25 |
include buildsystem::sync20101 |
26 |
include buildsystem::release |
27 |
include softwarekey::base |
28 |
|
29 |
include access_classes::committers |
30 |
include restrictshell::allow_git |
31 |
include restrictshell::allow_svn |
32 |
include restrictshell::allow_pkgsubmit |
33 |
# disabled the ldap key here instead of disabling for the |
34 |
# whole module ( see r698 ) |
35 |
class { "openssh::ssh_keys_from_ldap": |
36 |
symlink_users => ['schedbot', 'iurt'] |
37 |
} |
38 |
|
39 |
include mirror::mdv2010spring |
40 |
|
41 |
include repositories::subversion |
42 |
include repositories::git |
43 |
|
44 |
include websites::svn |
45 |
|
46 |
subversion::snapshot { "/etc/puppet": |
47 |
source => "svn://svn.mageia.org/svn/adm/puppet/" |
48 |
} |
49 |
} |
50 |
|
51 |
# web apps |
52 |
node alamut { |
53 |
# Location: IELO datacenter (marseille) |
54 |
# |
55 |
# TODO: |
56 |
# - Review board |
57 |
# - nagios |
58 |
# - api |
59 |
# - mail server |
60 |
# - mailing list server |
61 |
# - wiki |
62 |
# - pastebin |
63 |
# - LDAP slave |
64 |
# |
65 |
include common::default_mageia_server_no_smtp |
66 |
include postgresql::server |
67 |
postgresql::tagged { "default": } |
68 |
|
69 |
timezone::timezone { "Europe/Paris": } |
70 |
|
71 |
include catdap |
72 |
include mga-mirrors |
73 |
include epoll |
74 |
include transifex |
75 |
include bugzilla |
76 |
include sympa::server |
77 |
include postfix::primary_smtp |
78 |
|
79 |
# temporary, just the time the vm is running there |
80 |
host { 'friteuse': |
81 |
ip => '192.168.122.131', |
82 |
host_aliases => [ "friteuse.$domain", "forums.$domain" ], |
83 |
ensure => 'present', |
84 |
} |
85 |
|
86 |
# to create all phpbb database on alamut |
87 |
phpbb::databases { $fqdn: } |
88 |
|
89 |
apache::vhost_redirect_ssl { "forums.$domain": } |
90 |
apache::vhost_redirect { "forum.$domain": |
91 |
url => "https://forums.$domain/", |
92 |
} |
93 |
apache::vhost_redirect { "ssl_forum.$domain": |
94 |
url => "https://forums.$domain/", |
95 |
vhost => "forum.$domain", |
96 |
use_ssl => true, |
97 |
} |
98 |
|
99 |
# connect to ssl so the proxy do not shoke if trying to |
100 |
# enforce ssl ( note that this has not been tested, maybe this |
101 |
# is uneeded ) |
102 |
apache::vhost_reverse_proxy { "ssl_forums.$domain": |
103 |
url => "https://forums.$domain/", |
104 |
vhost => "forums.$domain", |
105 |
use_ssl => true, |
106 |
} |
107 |
|
108 |
|
109 |
include libvirtd::kvm |
110 |
include lists |
111 |
include dns::server |
112 |
include repositories::mirror |
113 |
include viewvc |
114 |
include xymon::server |
115 |
apache::vhost_simple { "xymon.$domain": |
116 |
location => "/var/lib/xymon/www", |
117 |
} |
118 |
include youri-check::report |
119 |
} |
120 |
|
121 |
# buildnode |
122 |
node jonund { |
123 |
# Location: IELO datacenter (marseille) |
124 |
# |
125 |
include common::default_mageia_server |
126 |
include buildsystem::buildnode |
127 |
include buildsystem::iurt20101 |
128 |
timezone::timezone { "Europe/Paris": } |
129 |
include shorewall |
130 |
include shorewall::default_firewall |
131 |
include testvm |
132 |
} |
133 |
|
134 |
node ecosse { |
135 |
# Location: IELO datacenter (marseille) |
136 |
# |
137 |
include common::default_mageia_server |
138 |
include buildsystem::buildnode |
139 |
timezone::timezone { "Europe/Paris": } |
140 |
} |
141 |
|
142 |
# backup server |
143 |
node fiona { |
144 |
# Location: IELO datacenter (marseille) |
145 |
# |
146 |
# TODO: |
147 |
# - buy the server |
148 |
# - install the server in datacenter |
149 |
# - install a backup system |
150 |
include common::default_mageia_server |
151 |
} |
152 |
|
153 |
# gandi-vm |
154 |
node krampouezh { |
155 |
# Location: gandi VM |
156 |
# |
157 |
# TODO: |
158 |
# - secondary MX |
159 |
# - LDAP slave (for external traffic maybe) |
160 |
# |
161 |
#include common::default_mageia_server |
162 |
include common::default_mageia_server_no_smtp |
163 |
include postfix::secondary_smtp |
164 |
include blog::base |
165 |
include blog::db_backup |
166 |
include mysql::server |
167 |
include dns::server |
168 |
timezone::timezone { "Europe/Paris": } |
169 |
|
170 |
openldap::slave_instance { "1": |
171 |
rid => 1, |
172 |
} |
173 |
|
174 |
# Other services running on this server : |
175 |
# - meetbot |
176 |
} |
177 |
|
178 |
node champagne { |
179 |
# Location: gandi VM |
180 |
# |
181 |
# TODO: |
182 |
# - setup mageia.org web site |
183 |
# - setup blog |
184 |
# - setup planet |
185 |
# |
186 |
include common::default_mageia_server |
187 |
timezone::timezone { "Europe/Paris": } |
188 |
include blog::files-bots |
189 |
include blog::files_backup |
190 |
include planet |
191 |
include websites::static |
192 |
include websites::hugs |
193 |
include websites::releases |
194 |
include access_classes::web |
195 |
include openssh::ssh_keys_from_ldap |
196 |
} |
197 |
|
198 |
node friteuse { |
199 |
# Location: VM hosted by nfrance (toulouse) |
200 |
# |
201 |
# TODO: |
202 |
# - setup forum |
203 |
|
204 |
include common::default_mageia_server |
205 |
timezone::timezone { "Europe/Paris": } |
206 |
include forums |
207 |
} |
208 |
|
209 |
node rabbit { |
210 |
# Location: Server offered by Dedibox (paris) |
211 |
# |
212 |
# - used to create isos ( and live, and so on ) |
213 |
# |
214 |
include common::default_mageia_server |
215 |
timezone::timezone { "Europe/Paris": } |
216 |
include bcd::base |
217 |
include bcd::web |
218 |
include bcd::rsync |
219 |
include draklive::base |
220 |
include access_classes::iso_makers |
221 |
include openssh::ssh_keys_from_ldap |
222 |
include mirror::mageia |
223 |
include mirror::newrelease |
224 |
include releasekey::base |
225 |
include youri-check::check |
226 |
|
227 |
# for testing iso quickly |
228 |
include libvirtd::kvm |
229 |
libvirtd::group_access { "mga-iso_makers": } |
230 |
|
231 |
# to ease the creation of test iso |
232 |
$netinst_iso_path = "/var/lib/libvirt/netboot" |
233 |
|
234 |
file { $netinst_iso_path: |
235 |
ensure => directory, |
236 |
} |
237 |
|
238 |
libvirtd::storage { "netinst_iso": |
239 |
path => $netinst_iso_path, |
240 |
require => File[$netinst_iso_path], |
241 |
} |
242 |
|
243 |
include auto_installation::download |
244 |
auto_installation::download::netboot_images { "mandriva": |
245 |
path => $netinst_iso_path, |
246 |
versions => ["2010.0","2010.1"], |
247 |
archs => ['i586','x86_64'], |
248 |
mirror_path => "ftp://ftp.free.fr/pub/Distributions_Linux/MandrivaLinux/official/%{version}/%{arch}/install/images/", |
249 |
files => ['boot.iso'], |
250 |
require => File[$netinst_iso_path], |
251 |
} |
252 |
|
253 |
# for testing pxe support of libvirt |
254 |
libvirtd::network {"pxe_network": |
255 |
network => "192.168.123.0/24", |
256 |
tftp_root => $auto_installation::variables::pxe_dir, |
257 |
bridge_name => "virbr1", |
258 |
} |
259 |
|
260 |
include auto_installation::pxe_menu |
261 |
auto_installation::mandriva_installation_entry { "pxe_test": |
262 |
version => "2010.1", |
263 |
arch => "i586", |
264 |
} |
265 |
} |