1 |
class mga_buildsystem::config { |
2 |
class { 'buildsystem::var::signbot': |
3 |
keyid => '80420F66', |
4 |
keyemail => "packages@${::domain}", |
5 |
keyname => 'Mageia Packages', |
6 |
} |
7 |
|
8 |
class { 'buildsystem::var::groups': |
9 |
packagers => 'mga-packagers', |
10 |
packagers_committers => 'mga-packagers-committers', |
11 |
} |
12 |
|
13 |
class { 'buildsystem::var::webstatus' : |
14 |
package_commit_url => 'http://svnweb.mageia.org/packages?view=revision&revision=%d', |
15 |
theme_name => 'mageia', |
16 |
} |
17 |
|
18 |
class { 'buildsystem::var::scheduler' : |
19 |
admin_mail => 'sysadmin@group.mageia.org', |
20 |
build_nodes => { |
21 |
'i586' => [ 'ecosse0', 'rabbit0', 'ecosse1', 'rabbit1' ], |
22 |
'x86_64' => [ 'rabbit0', 'ecosse0', 'rabbit1', ecosse1' ], |
23 |
}, |
24 |
build_nodes_aliases => { |
25 |
'jonund0' => "jonund.${::domain}", |
26 |
'jonund1' => "jonund.${::domain}", |
27 |
'ecosse0' => "ecosse.${::domain}", |
28 |
'ecosse1' => "ecosse.${::domain}", |
29 |
'rabbit0' => "rabbit.${::domain}", |
30 |
'rabbit1' => "rabbit.${::domain}", |
31 |
'sucuk0' => "sucuk.${::domain}", |
32 |
'sucuk1' => "sucuk.${::domain}", |
33 |
}, |
34 |
build_src_node => "valstar", |
35 |
} |
36 |
include buildsystem::var::repository |
37 |
class { 'buildsystem::var::binrepo': |
38 |
uploadmail_from => "root@${::domain}", |
39 |
uploadmail_to => "packages-commits@ml.${::domain}", |
40 |
} |
41 |
|
42 |
$svn_hostname = "svn.$::domain" |
43 |
$svn_root_packages = "svn://${svn_hostname}/svn/packages" |
44 |
$svn_root_packages_ssh = "svn+ssh://${svn_hostname}/svn/packages" |
45 |
class { 'buildsystem::var::mgarepo': |
46 |
submit_host => "pkgsubmit.${::domain}", |
47 |
svn_hostname => $svn_hostname, |
48 |
svn_root_packages => $svn_root_packages, |
49 |
svn_root_packages_ssh => $svn_root_packages_ssh, |
50 |
oldurl => "${svn_root_packages_ssh}/misc", |
51 |
conf => { |
52 |
'global' => { |
53 |
'ldap-server' => "ldap.${::domain}", |
54 |
'ldap-base' => "ou=People,${::dc_suffix}", |
55 |
'ldap-filterformat' => '(&(objectClass=inetOrgPerson)(uid=$username))', |
56 |
'ldap-resultformat' => '$cn <$mail>', |
57 |
} |
58 |
} |
59 |
} |
60 |
|
61 |
$std_arch = ['i586', 'x86_64'] |
62 |
$std_repos = { |
63 |
'release' => { |
64 |
'media_type' => [ 'release' ], |
65 |
'requires' => [], |
66 |
'order' => 0, |
67 |
}, |
68 |
'updates' => { |
69 |
'media_type' => [ 'updates' ], |
70 |
'updates_for' => 'release', |
71 |
'requires' => [ 'release' ], |
72 |
'order' => 1, |
73 |
}, |
74 |
'updates_testing' => { |
75 |
'media_type' => [ 'testing' ], |
76 |
'noauto' => '1', |
77 |
'requires' => [ 'updates' ], |
78 |
'order' => 2, |
79 |
}, |
80 |
'backports' => { |
81 |
'media_type' => [ 'backports' ], |
82 |
'noauto' => '1', |
83 |
'requires' => [ 'updates' ], |
84 |
'order' => 3, |
85 |
}, |
86 |
'backports_testing' => { |
87 |
'media_type' => [ 'testing' ], |
88 |
'noauto' => '1', |
89 |
'requires' => [ 'backports' ], |
90 |
'order' => 4, |
91 |
}, |
92 |
} |
93 |
$std_medias = { |
94 |
'core' => { |
95 |
'repos' => $std_repos, |
96 |
'media_type' => [ 'official', 'free' ], |
97 |
'order' => 0, |
98 |
}, |
99 |
'nonfree' => { |
100 |
'repos' => $std_repos, |
101 |
'media_type' => [ 'official' ], |
102 |
'noauto' => '1', |
103 |
'requires' => [ 'core' ], |
104 |
'order' => 1, |
105 |
}, |
106 |
'tainted' => { |
107 |
'repos' => $std_repos, |
108 |
'media_type' => [ 'official' ], |
109 |
'noauto' => '1', |
110 |
'requires' => [ 'core' ], |
111 |
'order' => 2, |
112 |
}, |
113 |
} |
114 |
$std_base_media = [ 'core/release', 'core/updates' ] |
115 |
$infra_medias = { |
116 |
'infra' => { |
117 |
'repos' => { |
118 |
'updates' => { |
119 |
'media_type' => [ 'updates' ], |
120 |
'requires' => [ 'release' ], |
121 |
'order' => 0, |
122 |
}, |
123 |
}, |
124 |
'media_type' => [ 'infra' ], |
125 |
'requires' => [ 'core' ], |
126 |
'order' => 0, |
127 |
}, |
128 |
} |
129 |
$std_macros = { |
130 |
'distsuffix' => '.mga', |
131 |
'distribution' => 'Mageia', |
132 |
'vendor' => 'Mageia.Org', |
133 |
'_real_vendor' => 'mageia', |
134 |
} |
135 |
$repo_allow_from = [ |
136 |
$::nodes_ipaddr[valstar][ipv6], |
137 |
$::nodes_ipaddr[valstar][ipv4], |
138 |
$::nodes_ipaddr[ecosse][ipv6], |
139 |
$::nodes_ipaddr[ecosse][ipv4], |
140 |
$::nodes_ipaddr[jonund][ipv6], |
141 |
$::nodes_ipaddr[jonund][ipv4], |
142 |
".${::domain}", |
143 |
'10.42.0', |
144 |
$::nodes_ipaddr[rabbit][ipv4], |
145 |
$::nodes_ipaddr[rabbit][ipv6], |
146 |
] |
147 |
|
148 |
# the list of checks, actions, posts for cauldron in youri-upload |
149 |
$cauldron_youri_upload_targets = { |
150 |
'checks' => [ |
151 |
'version', |
152 |
'tag', |
153 |
'acl', |
154 |
'rpmlint', |
155 |
'recency', |
156 |
], |
157 |
'actions' => [ |
158 |
'markrelease', |
159 |
'sign', |
160 |
'install', |
161 |
'link', |
162 |
'unpack_release_notes', |
163 |
'unpack_gfxboot_theme', |
164 |
'unpack_meta_task', |
165 |
'unpack_installer_images', |
166 |
'unpack_installer_images_nonfree', |
167 |
'unpack_installer_stage2', |
168 |
'unpack_installer_advertising', |
169 |
'unpack_installer_rescue', |
170 |
'unpack_syslinux', |
171 |
'archive', |
172 |
'mail', |
173 |
'maintdb', |
174 |
'rebuild', |
175 |
], |
176 |
'posts' => [ |
177 |
'genhdlist2', |
178 |
'clean_rpmsrate', |
179 |
'mirror', |
180 |
], |
181 |
} |
182 |
|
183 |
# the list of checks, actions, posts for stable distros in youri-upload |
184 |
$std_youri_upload_targets = { |
185 |
'checks' => [ |
186 |
'version', |
187 |
'tag', |
188 |
'acl', |
189 |
'rpmlint', |
190 |
'recency', |
191 |
], |
192 |
'actions' => [ |
193 |
'sign', |
194 |
'install', |
195 |
'link', |
196 |
'archive', |
197 |
'mail', |
198 |
], |
199 |
'posts' => [ |
200 |
'genhdlist2', |
201 |
'clean_rpmsrate', |
202 |
'mirror', |
203 |
], |
204 |
} |
205 |
|
206 |
# the list of checks, actions, posts for infra distros in youri-upload |
207 |
$infra_youri_upload_targets = { |
208 |
'checks' => [ |
209 |
'version', |
210 |
'tag', |
211 |
'acl', |
212 |
'rpmlint', |
213 |
'recency', |
214 |
], |
215 |
'actions' => [ |
216 |
'sign', |
217 |
'install', |
218 |
'link', |
219 |
'archive', |
220 |
], |
221 |
'posts' => [ |
222 |
'genhdlist2', |
223 |
], |
224 |
} |
225 |
|
226 |
# the list of checks, actions, posts for cauldron in youri-todo |
227 |
$cauldron_youri_todo_targets = { |
228 |
'checks' => [ |
229 |
'source', |
230 |
'deps', |
231 |
'version', |
232 |
'tag', |
233 |
'acl', |
234 |
'host', |
235 |
'rpmlint', |
236 |
'recency', |
237 |
'queue_recency', |
238 |
], |
239 |
'actions' => [ |
240 |
'send', |
241 |
'dependencies', |
242 |
'rpminfo', |
243 |
'ulri', |
244 |
], |
245 |
} |
246 |
|
247 |
# the list of checks, actions, posts for stable distros in youri-todo |
248 |
$std_youri_todo_targets = { |
249 |
'checks' => [ |
250 |
'source', |
251 |
'version', |
252 |
'tag', |
253 |
'acl', |
254 |
'host', |
255 |
'rpmlint', |
256 |
'recency', |
257 |
'queue_recency', |
258 |
], |
259 |
'actions' => [ |
260 |
'send', |
261 |
'dependencies', |
262 |
'rpminfo', |
263 |
'ulri', |
264 |
], |
265 |
} |
266 |
|
267 |
# the list of checks, actions, posts for infra distros in youri-todo |
268 |
$infra_youri_todo_targets = { |
269 |
'checks' => [ |
270 |
'source', |
271 |
'version', |
272 |
'tag', |
273 |
'acl', |
274 |
'rpmlint', |
275 |
'recency', |
276 |
'queue_recency', |
277 |
], |
278 |
'actions' => [ |
279 |
'send', |
280 |
'dependencies', |
281 |
'rpminfo', |
282 |
'ulri', |
283 |
], |
284 |
} |
285 |
|
286 |
# rpmlint check options for mageia <= 2 |
287 |
$mga2_rpmlint = { |
288 |
'config' => '/usr/share/rpmlint/config.mga2', |
289 |
'path' => '/usr/bin/mga2-rpmlint', |
290 |
'results' => [ |
291 |
'buildprereq-use', |
292 |
'no-description-tag', |
293 |
'no-summary-tag', |
294 |
'non-standard-group', |
295 |
'non-xdg-migrated-menu', |
296 |
'percent-in-conflicts', |
297 |
'percent-in-dependency', |
298 |
'percent-in-obsoletes', |
299 |
'percent-in-provides', |
300 |
'summary-ended-with-dot', |
301 |
'unexpanded-macro', |
302 |
'unknown-lsb-keyword', |
303 |
'malformed-line-in-lsb-comment-block', |
304 |
'empty-%postun', |
305 |
'empty-%post', |
306 |
'invalid-desktopfile', |
307 |
'standard-dir-owned-by-package', |
308 |
'use-tmp-in-%postun', |
309 |
'bogus-variable-use-in-%posttrans', |
310 |
'dir-or-file-in-usr-local', |
311 |
'dir-or-file-in-tmp', |
312 |
'dir-or-file-in-mnt', |
313 |
'dir-or-file-in-opt', |
314 |
'dir-or-file-in-home', |
315 |
'dir-or-file-in-var-local', |
316 |
], |
317 |
} |
318 |
|
319 |
# rpmlint check options for Mageia 3 |
320 |
$mga3_rpmlint = { |
321 |
'config' => '/usr/share/rpmlint/config', |
322 |
'path' => '/usr/bin/rpmlint', |
323 |
'results' => [ |
324 |
'buildprereq-use', |
325 |
'no-description-tag', |
326 |
'no-summary-tag', |
327 |
'non-standard-group', |
328 |
'non-xdg-migrated-menu', |
329 |
'percent-in-conflicts', |
330 |
'percent-in-dependency', |
331 |
'percent-in-obsoletes', |
332 |
'percent-in-provides', |
333 |
'summary-ended-with-dot', |
334 |
'unexpanded-macro', |
335 |
'unknown-lsb-keyword', |
336 |
'malformed-line-in-lsb-comment-block', |
337 |
'empty-%postun', |
338 |
'empty-%post', |
339 |
'invalid-desktopfile', |
340 |
'standard-dir-owned-by-package', |
341 |
'use-tmp-in-%postun', |
342 |
'bogus-variable-use-in-%posttrans', |
343 |
'dir-or-file-in-usr-local', |
344 |
'dir-or-file-in-tmp', |
345 |
'dir-or-file-in-mnt', |
346 |
'dir-or-file-in-opt', |
347 |
'dir-or-file-in-home', |
348 |
'dir-or-file-in-var-local', |
349 |
'tmpfiles-conf-in-etc', |
350 |
'non-ghost-in-run', |
351 |
'non-ghost-in-var-run', |
352 |
'non-ghost-in-var-lock', |
353 |
'systemd-unit-in-etc', |
354 |
'udev-rule-in-etc', |
355 |
], |
356 |
} |
357 |
|
358 |
# rpmlint check options for Mageia 4 |
359 |
$mga4_rpmlint = { |
360 |
'config' => '/usr/share/rpmlint/config', |
361 |
'path' => '/usr/bin/rpmlint', |
362 |
'results' => [ |
363 |
'buildprereq-use', |
364 |
'no-description-tag', |
365 |
'no-summary-tag', |
366 |
'non-standard-group', |
367 |
'non-xdg-migrated-menu', |
368 |
'percent-in-conflicts', |
369 |
'percent-in-dependency', |
370 |
'percent-in-obsoletes', |
371 |
'percent-in-provides', |
372 |
'summary-ended-with-dot', |
373 |
'unexpanded-macro', |
374 |
'unknown-lsb-keyword', |
375 |
'malformed-line-in-lsb-comment-block', |
376 |
'empty-%postun', |
377 |
'empty-%post', |
378 |
'invalid-desktopfile', |
379 |
'standard-dir-owned-by-package', |
380 |
'use-tmp-in-%postun', |
381 |
'bogus-variable-use-in-%posttrans', |
382 |
'dir-or-file-in-usr-local', |
383 |
'dir-or-file-in-tmp', |
384 |
'dir-or-file-in-mnt', |
385 |
'dir-or-file-in-opt', |
386 |
'dir-or-file-in-home', |
387 |
'dir-or-file-in-var-local', |
388 |
'tmpfiles-conf-in-etc', |
389 |
'non-ghost-in-run', |
390 |
'non-ghost-in-var-run', |
391 |
'non-ghost-in-var-lock', |
392 |
'systemd-unit-in-etc', |
393 |
'udev-rule-in-etc', |
394 |
], |
395 |
} |
396 |
|
397 |
# rpmlint check options for cauldron |
398 |
$cauldron_rpmlint = { |
399 |
'config' => '/usr/share/rpmlint/config', |
400 |
'path' => '/usr/bin/rpmlint', |
401 |
'results' => [ |
402 |
'buildprereq-use', |
403 |
'no-description-tag', |
404 |
'no-summary-tag', |
405 |
'non-standard-group', |
406 |
'non-xdg-migrated-menu', |
407 |
'percent-in-conflicts', |
408 |
'percent-in-dependency', |
409 |
'percent-in-obsoletes', |
410 |
'percent-in-provides', |
411 |
'summary-ended-with-dot', |
412 |
'unexpanded-macro', |
413 |
'unknown-lsb-keyword', |
414 |
'malformed-line-in-lsb-comment-block', |
415 |
'empty-%postun', |
416 |
'empty-%post', |
417 |
'invalid-desktopfile', |
418 |
'standard-dir-owned-by-package', |
419 |
'use-tmp-in-%postun', |
420 |
'bogus-variable-use-in-%posttrans', |
421 |
'dir-or-file-in-usr-local', |
422 |
'dir-or-file-in-tmp', |
423 |
'dir-or-file-in-mnt', |
424 |
'dir-or-file-in-opt', |
425 |
'dir-or-file-in-home', |
426 |
'dir-or-file-in-var-local', |
427 |
'tmpfiles-conf-in-etc', |
428 |
'non-ghost-in-run', |
429 |
'non-ghost-in-var-run', |
430 |
'non-ghost-in-var-lock', |
431 |
'systemd-unit-in-etc', |
432 |
'udev-rule-in-etc', |
433 |
], |
434 |
} |
435 |
|
436 |
# list of users allowed to submit packages when cauldron is frozen |
437 |
$cauldron_authorized_users = str_join(group_members('mga-release_managers'), '|') |
438 |
$cauldron_version_check = { |
439 |
'authorized_sections' => '^[a-z]+/updates_testing$', |
440 |
'authorized_packages' => 'drak|^(urpmi|perl-URPM|perl-(Gtk3|Glib(-Object-Introspection)?)|mgaonline|net_monitor)$', |
441 |
'authorized_arches' => 'none', |
442 |
'authorized_users' => "^${cauldron_authorized_users}\$", |
443 |
#'mode' => 'normal', |
444 |
#'mode' => 'version_freeze', |
445 |
'mode' => 'normal', |
446 |
} |
447 |
|
448 |
# for EOL distributions |
449 |
$frozen_version_check = { |
450 |
'authorized_packages' => 'none_package_authorized', |
451 |
'authorized_sections' => 'none_section_authorized', |
452 |
'authorized_arches' => 'none', |
453 |
'mode' => 'freeze', |
454 |
} |
455 |
|
456 |
# for supported stable distributions |
457 |
$std_version_check = { |
458 |
'authorized_packages' => 'none_package_authorized', |
459 |
'authorized_sections' => '^(core|nonfree|tainted)/(updates_testing|backports_testing)$', |
460 |
'authorized_arches' => 'none', |
461 |
'mode' => 'freeze', |
462 |
} |
463 |
|
464 |
$infra_authorized_users = str_join(group_members('mga-sysadmin'), '|') |
465 |
$infra_version_check = { |
466 |
'authorized_users' => "^${infra_authorized_users}\$", |
467 |
'mode' => 'freeze', |
468 |
} |
469 |
|
470 |
class { 'buildsystem::var::distros': |
471 |
default_distro => 'cauldron', |
472 |
distros => { |
473 |
'cauldron' => { |
474 |
'arch' => $std_arch, |
475 |
'no_media_cfg_update' => true, |
476 |
'medias' => $std_medias, |
477 |
'base_media' => $std_base_media, |
478 |
'branch' => 'Devel', |
479 |
'version' => '5', |
480 |
'submit_allowed' => "${svn_root_packages}/cauldron", |
481 |
'macros' => $std_macros, |
482 |
'repo_allow_from' => $repo_allow_from, |
483 |
'youri' => { |
484 |
'upload' => { |
485 |
'targets' => $cauldron_youri_upload_targets, |
486 |
'checks' => { |
487 |
'rpmlint' => $cauldron_rpmlint, |
488 |
}, |
489 |
}, |
490 |
'todo' => { |
491 |
'targets' => $cauldron_youri_todo_targets, |
492 |
'checks' => { |
493 |
'rpmlint' => $cauldron_rpmlint, |
494 |
'version' => $cauldron_version_check, |
495 |
}, |
496 |
}, |
497 |
}, |
498 |
}, |
499 |
|
500 |
'1' => { |
501 |
'arch' => $std_arch, |
502 |
'no_media_cfg_update' => true, |
503 |
'medias' => $std_medias, |
504 |
'base_media' => $std_base_media, |
505 |
'branch' => 'Official', |
506 |
'version' => '1', |
507 |
'submit_allowed' => "${svn_root_packages}/updates/1", |
508 |
'macros' => $std_macros, |
509 |
'repo_allow_from' => $repo_allow_from, |
510 |
'youri' => { |
511 |
'upload' => { |
512 |
'targets' => $std_youri_upload_targets, |
513 |
'checks' => { |
514 |
'rpmlint' => $mga2_rpmlint, |
515 |
}, |
516 |
}, |
517 |
'todo' => { |
518 |
'targets' => $std_youri_todo_targets, |
519 |
'checks' => { |
520 |
'rpmlint' => $mga2_rpmlint, |
521 |
'version' => $frozen_version_check, |
522 |
}, |
523 |
}, |
524 |
}, |
525 |
}, |
526 |
|
527 |
'2' => { |
528 |
'arch' => $std_arch, |
529 |
'no_media_cfg_update' => true, |
530 |
'medias' => $std_medias, |
531 |
'base_media' => $std_base_media, |
532 |
'branch' => 'Official', |
533 |
'version' => '2', |
534 |
'submit_allowed' => "${svn_root_packages}/updates/2", |
535 |
'macros' => $std_macros, |
536 |
'repo_allow_from' => $repo_allow_from, |
537 |
'youri' => { |
538 |
'upload' => { |
539 |
'targets' => $std_youri_upload_targets, |
540 |
'checks' => { |
541 |
'rpmlint' => $mga2_rpmlint, |
542 |
}, |
543 |
}, |
544 |
'todo' => { |
545 |
'targets' => $std_youri_todo_targets, |
546 |
'checks' => { |
547 |
'rpmlint' => $mga2_rpmlint, |
548 |
'version' => $frozen_version_check, |
549 |
}, |
550 |
}, |
551 |
}, |
552 |
}, |
553 |
|
554 |
'3' => { |
555 |
'arch' => $std_arch, |
556 |
'no_media_cfg_update' => true, |
557 |
'medias' => $std_medias, |
558 |
'base_media' => $std_base_media, |
559 |
'branch' => 'Official', |
560 |
'version' => '3', |
561 |
'submit_allowed' => "${svn_root_packages}/updates/3", |
562 |
'backports_allowed' => "${svn_root_packages}/backports/3", |
563 |
'macros' => $std_macros, |
564 |
'repo_allow_from' => $repo_allow_from, |
565 |
'youri' => { |
566 |
'upload' => { |
567 |
'targets' => $std_youri_upload_targets, |
568 |
'checks' => { |
569 |
'rpmlint' => $mga3_rpmlint, |
570 |
}, |
571 |
}, |
572 |
'todo' => { |
573 |
'targets' => $std_youri_todo_targets, |
574 |
'checks' => { |
575 |
'rpmlint' => $mga3_rpmlint, |
576 |
'version' => $std_version_check, |
577 |
}, |
578 |
}, |
579 |
}, |
580 |
}, |
581 |
|
582 |
'4' => { |
583 |
'arch' => $std_arch, |
584 |
'no_media_cfg_update' => true, |
585 |
'medias' => $std_medias, |
586 |
'base_media' => $std_base_media, |
587 |
'branch' => 'Official', |
588 |
'version' => '4', |
589 |
'submit_allowed' => "${svn_root_packages}/updates/4", |
590 |
'backports_allowed' => "${svn_root_packages}/backports/4", |
591 |
'macros' => $std_macros, |
592 |
'repo_allow_from' => $repo_allow_from, |
593 |
'youri' => { |
594 |
'upload' => { |
595 |
'targets' => $std_youri_upload_targets, |
596 |
'checks' => { |
597 |
'rpmlint' => $mga4_rpmlint, |
598 |
}, |
599 |
}, |
600 |
'todo' => { |
601 |
'targets' => $std_youri_todo_targets, |
602 |
'checks' => { |
603 |
'rpmlint' => $mga4_rpmlint, |
604 |
'version' => $std_version_check, |
605 |
}, |
606 |
}, |
607 |
}, |
608 |
}, |
609 |
|
610 |
|
611 |
'infra_1' => { |
612 |
'arch' => $std_arch, |
613 |
'medias' => $infra_medias, |
614 |
'base_media' => [ '1/core/release', '1/core/updates', 'infra/updates' ], |
615 |
'branch' => 'Official', |
616 |
'version' => '1', |
617 |
'submit_allowed' => $svn_root_packages, |
618 |
'macros' => $std_macros, |
619 |
'based_on' => { |
620 |
'1' => { |
621 |
'core' => [ 'release', 'updates' ], |
622 |
}, |
623 |
}, |
624 |
'youri' => { |
625 |
'upload' => { |
626 |
'targets' => $infra_youri_upload_targets, |
627 |
'checks' => { |
628 |
'rpmlint' => $mga2_rpmlint, |
629 |
}, |
630 |
}, |
631 |
'todo' => { |
632 |
'targets' => $infra_youri_todo_targets, |
633 |
'checks' => { |
634 |
'rpmlint' => $mga2_rpmlint, |
635 |
'version' => $infra_version_check, |
636 |
}, |
637 |
}, |
638 |
}, |
639 |
'no_mirror' => true, |
640 |
}, |
641 |
|
642 |
'infra_2' => { |
643 |
'arch' => $std_arch, |
644 |
'medias' => $infra_medias, |
645 |
'base_media' => [ '2/core/release', '2/core/updates', 'infra/updates' ], |
646 |
'branch' => 'Official', |
647 |
'version' => '2', |
648 |
'submit_allowed' => $svn_root_packages, |
649 |
'macros' => $std_macros, |
650 |
'based_on' => { |
651 |
'2' => { |
652 |
'core' => [ 'release', 'updates' ], |
653 |
}, |
654 |
}, |
655 |
'youri' => { |
656 |
'upload' => { |
657 |
'targets' => $infra_youri_upload_targets, |
658 |
'checks' => { |
659 |
'rpmlint' => $mga2_rpmlint, |
660 |
}, |
661 |
}, |
662 |
'todo' => { |
663 |
'targets' => $infra_youri_todo_targets, |
664 |
'checks' => { |
665 |
'rpmlint' => $mga2_rpmlint, |
666 |
'version' => $infra_version_check, |
667 |
}, |
668 |
}, |
669 |
}, |
670 |
'no_mirror' => true, |
671 |
}, |
672 |
|
673 |
'infra_3' => { |
674 |
'arch' => $std_arch, |
675 |
'medias' => $infra_medias, |
676 |
'base_media' => [ '3/core/release', '3/core/updates', 'infra/updates' ], |
677 |
'branch' => 'Official', |
678 |
'version' => '3', |
679 |
'submit_allowed' => $svn_root_packages, |
680 |
'macros' => $std_macros, |
681 |
'based_on' => { |
682 |
'3' => { |
683 |
'core' => [ 'release', 'updates' ], |
684 |
}, |
685 |
}, |
686 |
'youri' => { |
687 |
'upload' => { |
688 |
'targets' => $infra_youri_upload_targets, |
689 |
'checks' => { |
690 |
'rpmlint' => $mga3_rpmlint, |
691 |
}, |
692 |
}, |
693 |
'todo' => { |
694 |
'targets' => $infra_youri_todo_targets, |
695 |
'checks' => { |
696 |
'rpmlint' => $mga3_rpmlint, |
697 |
'version' => $infra_version_check, |
698 |
}, |
699 |
}, |
700 |
}, |
701 |
'no_mirror' => true, |
702 |
}, |
703 |
|
704 |
'infra_4' => { |
705 |
'arch' => $std_arch, |
706 |
'medias' => $infra_medias, |
707 |
'base_media' => [ '4/core/release', '4/core/updates', 'infra/updates' ], |
708 |
'branch' => 'Official', |
709 |
'version' => '4', |
710 |
'submit_allowed' => $svn_root_packages, |
711 |
'macros' => $std_macros, |
712 |
'based_on' => { |
713 |
'4' => { |
714 |
'core' => [ 'release', 'updates' ], |
715 |
}, |
716 |
}, |
717 |
'youri' => { |
718 |
'upload' => { |
719 |
'targets' => $infra_youri_upload_targets, |
720 |
'checks' => { |
721 |
'rpmlint' => $mga4_rpmlint, |
722 |
}, |
723 |
}, |
724 |
'todo' => { |
725 |
'targets' => $infra_youri_todo_targets, |
726 |
'checks' => { |
727 |
'rpmlint' => $mga4_rpmlint, |
728 |
'version' => $infra_version_check, |
729 |
}, |
730 |
}, |
731 |
}, |
732 |
'no_mirror' => true, |
733 |
}, |
734 |
} |
735 |
} |
736 |
$checks_tag_options = { |
737 |
'tags' => { |
738 |
'release' => inline_template("<%= std_macros['distsuffix'] %>\\d+"), |
739 |
'distribution' => inline_template("^<%= std_macros['distribution'] %>"), |
740 |
'vendor' => inline_template("^<%= std_macros['vendor'] %>$"), |
741 |
}, |
742 |
} |
743 |
class { 'buildsystem::var::youri': |
744 |
packages_archivedir => "${buildsystem::var::scheduler::homedir}/old", |
745 |
youri_conf => { |
746 |
'upload' => { |
747 |
'checks' => { |
748 |
'tag' => { |
749 |
'options' => $checks_tag_options, |
750 |
}, |
751 |
'rpmlint' => { |
752 |
'options' => { |
753 |
'results' => [ |
754 |
'buildprereq-use', |
755 |
'no-description-tag', |
756 |
'no-summary-tag', |
757 |
'non-standard-group', |
758 |
'non-xdg-migrated-menu', |
759 |
'percent-in-conflicts', |
760 |
'percent-in-dependency', |
761 |
'percent-in-obsoletes', |
762 |
'percent-in-provides', |
763 |
'summary-ended-with-dot', |
764 |
'unexpanded-macro', |
765 |
'unknown-lsb-keyword', |
766 |
'malformed-line-in-lsb-comment-block', |
767 |
'empty-%postun', |
768 |
'empty-%post', |
769 |
'invalid-desktopfile', |
770 |
'standard-dir-owned-by-package', |
771 |
'use-tmp-in-%postun', |
772 |
'bogus-variable-use-in-%posttrans', |
773 |
'dir-or-file-in-usr-local', |
774 |
'dir-or-file-in-tmp', |
775 |
'dir-or-file-in-mnt', |
776 |
'dir-or-file-in-opt', |
777 |
'dir-or-file-in-home', |
778 |
'dir-or-file-in-var-local', |
779 |
], |
780 |
}, |
781 |
}, |
782 |
}, |
783 |
'actions' => { |
784 |
'mail' => { |
785 |
'options' => { |
786 |
'to' => "changelog@ml.${::domain}", |
787 |
'reply_to' => "mageia-dev@${::domain}", |
788 |
'from' => "buildsystem-daemon@${::domain}", |
789 |
'prefix' => 'RPM', |
790 |
}, |
791 |
}, |
792 |
}, |
793 |
}, |
794 |
'todo' => { |
795 |
'checks' => { |
796 |
'tag' => { |
797 |
'options' => $checks_tag_options, |
798 |
}, |
799 |
}, |
800 |
}, |
801 |
} |
802 |
} |
803 |
} |