1 |
class buildsystem::mgarepo { |
2 |
include buildsystem::scheduler::var |
3 |
$sched_login = $buildsystem::scheduler::var::login |
4 |
$sched_home_dir = $buildsystem::scheduler::var::homedir |
5 |
|
6 |
package { ['mgarepo','rpm-build']: } |
7 |
|
8 |
file { |
9 |
'/etc/mgarepo.conf': content => template('buildsystem/mgarepo.conf'); |
10 |
'/etc/repsys.conf': content => template('buildsystem/mgarepo.conf'); |
11 |
} |
12 |
|
13 |
file { "$sched_home_dir/repsys": |
14 |
ensure => 'directory', |
15 |
owner => $sched_login, |
16 |
require => File[$sched_home_dir], |
17 |
} |
18 |
|
19 |
file { ["$sched_home_dir/repsys/tmp", "$sched_home_dir/repsys/srpms"]: |
20 |
ensure => 'directory', |
21 |
owner => $sched_login, |
22 |
group => $buildsystem::base::packagers_group, |
23 |
mode => '1775', |
24 |
require => File["$sched_home_dir/repsys"], |
25 |
} |
26 |
|
27 |
# FIXME: disabled temporarly as upload dir is a symlink to /var/lib/repsys/uploads |
28 |
#file { "$sched_home_dir/uploads": |
29 |
# ensure => "directory", |
30 |
# owner => $sched_login, |
31 |
# require => File[$sched_home_dir], |
32 |
#} |
33 |
|
34 |
#FIXME This config information should be moved out of this class |
35 |
$releases = { |
36 |
'cauldron' => { |
37 |
'core' => ['release','updates_testing','backports_testing','backports','updates'], |
38 |
'nonfree' => ['release','updates_testing','backports_testing','backports','updates'], |
39 |
'tainted' => ['release','updates_testing','backports_testing','backports','updates'], |
40 |
}, |
41 |
'1' => { |
42 |
'core' => ['release','updates_testing','backports_testing','backports','updates'], |
43 |
'nonfree' => ['release','updates_testing','backports_testing','backports','updates'], |
44 |
'tainted' => ['release','updates_testing','backports_testing','backports','updates'], |
45 |
}, |
46 |
'2' => { |
47 |
'core' => ['release','updates_testing','backports_testing','backports','updates'], |
48 |
'nonfree' => ['release','updates_testing','backports_testing','backports','updates'], |
49 |
'tainted' => ['release','updates_testing','backports_testing','backports','updates'], |
50 |
}, |
51 |
'infra_1' => { |
52 |
'infra' => ['release'] |
53 |
}, |
54 |
'infra_2' => { |
55 |
'infra' => ['release'] |
56 |
}, |
57 |
} |
58 |
|
59 |
import 'create_upload_dir.rb' |
60 |
create_upload_dir { "$sched_home_dir/uploads": |
61 |
owner => $sched_login, |
62 |
group => $sched_login, |
63 |
releases => $releases, |
64 |
} |
65 |
|
66 |
tidy { "$sched_home_dir/uploads": |
67 |
type => 'ctime', |
68 |
recurse => true, |
69 |
age => '2w', |
70 |
} |
71 |
|
72 |
} |