1 |
class websites::pkgcpan { |
2 |
include websites::base |
3 |
$vhost = "pkgcpan.$::domain" |
4 |
$vhostdir = "$websites::base::webdatadir/$vhost" |
5 |
$pkgcpan_login = 'pkgcpan' |
6 |
$pkgcpan_homedir = "/var/lib/$pkgcpan_login" |
7 |
|
8 |
user { $pkgcpan_login: |
9 |
managehome => true, |
10 |
home => $pkgcpan_homedir, |
11 |
} |
12 |
|
13 |
apache::vhost_base { $vhost: |
14 |
location => $vhostdir, |
15 |
options => [ 'Indexes' ], |
16 |
} |
17 |
|
18 |
file { $vhostdir: |
19 |
ensure => directory, |
20 |
owner => $pkgcpan_login, |
21 |
group => $pkgcpan_login, |
22 |
} |
23 |
|
24 |
package { 'perl-Module-Packaged-Generator': } |
25 |
|
26 |
cron { 'update cpanpkg': |
27 |
hour => 23, |
28 |
require => Package['perl-Module-Packaged-Generator'], |
29 |
command => "pkgcpan -q -f $vhostdir/cpan_Mageia.db -d Mageia", |
30 |
user => $pkgcpan_login, |
31 |
} |
32 |
|
33 |
file { "$vhostdir/cpan_Mageia.db": |
34 |
owner => $pkgcpan_login, |
35 |
group => $pkgcpan_login, |
36 |
} |
37 |
|
38 |
} |