1 |
class buildsystem::youri_submit { |
2 |
include sudo |
3 |
include buildsystem::rpmlint |
4 |
include buildsystem::repository |
5 |
include buildsystem::scheduler::var |
6 |
|
7 |
$repository_root = $buildsystem::repository::dir |
8 |
$sched_home_dir = $buildsystem::scheduler::var::homedir |
9 |
$sched_login = $buildsystem::scheduler::var::login |
10 |
$packages_archivedir = "$sched_home_dir/old" |
11 |
|
12 |
local_script { |
13 |
'mga-youri-submit': |
14 |
content => template('buildsystem/mga-youri-submit'); |
15 |
'mga-youri-submit.wrapper': |
16 |
content => template('buildsystem/mga-youri-submit.wrapper'); |
17 |
'submit_package': |
18 |
content => template('buildsystem/submit_package.pl'); |
19 |
} |
20 |
|
21 |
sudo::sudoers_config { 'mga-youri-submit': |
22 |
content => template('buildsystem/sudoers.youri') |
23 |
} |
24 |
# ordering is automatic : |
25 |
# http://docs.puppetlabs.com/learning/ordering.html#autorequire |
26 |
file { |
27 |
'/etc/youri/': |
28 |
ensure => 'directory'; |
29 |
'/etc/youri/submit-todo.conf': |
30 |
content => template('buildsystem/youri/submit-todo.conf'); |
31 |
'/etc/youri/submit-upload.conf': |
32 |
content => template('buildsystem/youri/submit-upload.conf'); |
33 |
'/etc/youri/acl.conf': |
34 |
content => template('buildsystem/youri/acl.conf'); |
35 |
} |
36 |
|
37 |
file { $packages_archivedir: |
38 |
ensure => 'directory', |
39 |
owner => $sched_login, |
40 |
require => File[$sched_home_dir], |
41 |
} |
42 |
|
43 |
tidy { $packages_archivedir: |
44 |
type => 'ctime', |
45 |
recurse => true, |
46 |
age => '1w', |
47 |
matches => '*.rpm', |
48 |
} |
49 |
|
50 |
# FIXME use /usr/local/ once it will be in @INC |
51 |
file { '/usr/lib/perl5/vendor_perl/5.12.3/Youri/Repository/Mageia.pm': |
52 |
source => 'puppet:///modules/buildsystem/Mageia.pm', |
53 |
} |
54 |
|
55 |
$package_list= ['perl-SVN', |
56 |
'mdv-distrib-tools', |
57 |
'perl-Youri-Media', |
58 |
'perl-Youri-Package', |
59 |
'perl-Youri-Repository', |
60 |
'perl-Youri-Utils', |
61 |
'perl-Youri-Config', |
62 |
'mga-youri-submit'] |
63 |
|
64 |
package { $package_list: } |
65 |
} |