1 |
class catdap { |
2 |
|
3 |
$upstream_svn = 'svn://svn.mageia.org/svn/soft/identity/CatDap/' |
4 |
|
5 |
# TODO switch to a proper rpm packaging |
6 |
$rpm_requirement = ['perl-Catalyst-Runtime', |
7 |
'perl-FCGI', |
8 |
'perl-Catalyst-Plugin-Authorization-Roles', |
9 |
'perl-Catalyst-Action-RenderView', |
10 |
'perl-Catalyst-Model-LDAP-FromAuthentication', |
11 |
'perl-Catalyst-P-A-Store-LDAP', |
12 |
'perl-Catalyst-Plugin-Authentication', |
13 |
'perl-Catalyst-Plugin-Captcha', |
14 |
'perl-Catalyst-Plugin-ConfigLoader', |
15 |
'perl-Catalyst-Plugin-I18N', |
16 |
'perl-Catalyst-Plugin-Session-Store-File', |
17 |
'perl-Catalyst-Plugin-Static-Simple', |
18 |
'perl-Catalyst-P-S-State-Cookie', |
19 |
'perl-Catalyst-P-S-Store-File', |
20 |
'perl-Catalyst-View-Email', |
21 |
'perl-Catalyst-View-TT', |
22 |
'perl-Config-General', |
23 |
'perl-Crypt-CBC', |
24 |
'perl-Data-UUID', |
25 |
'perl-Email-Valid', |
26 |
'perl-Moose', |
27 |
'perl-namespace-autoclean', |
28 |
'perl-Test-Simple', |
29 |
'perl-Crypt-Blowfish', |
30 |
'perl-Email-Date-Format', |
31 |
'perl-YAML-LibYAML', |
32 |
'perl-Catalyst-Plugin-Unicode-Encoding', |
33 |
'perl-IO-Socket-INET6' ] |
34 |
|
35 |
package { $rpm_requirement: } |
36 |
|
37 |
$ldap_password = extlookup('catdap_ldap','x') |
38 |
|
39 |
define catdap_snapshot($location, $svn_location) { |
40 |
file { "$location/catdap_local.yml": |
41 |
group => apache, |
42 |
mode => '0640', |
43 |
content => template('catdap/catdap_local.yml'), |
44 |
require => Subversion::Snapshot[$location], |
45 |
} |
46 |
|
47 |
subversion::snapshot { $location: |
48 |
source => $svn_location |
49 |
} |
50 |
|
51 |
apache::vhost_catalyst_app { $name: |
52 |
script => "$location/script/catdap_fastcgi.pl", |
53 |
location => $location, |
54 |
use_ssl => true, |
55 |
} |
56 |
|
57 |
apache::vhost_redirect_ssl { $name: } |
58 |
} |
59 |
|
60 |
catdap_snapshot { "identity.$::domain": |
61 |
location => '/var/www/identity', |
62 |
svn_location => "$upstream_svn/branches/live" |
63 |
} |
64 |
|
65 |
catdap_snapshot { "identity-trunk.$::domain": |
66 |
location => '/var/www/identity-trunk', |
67 |
svn_location => "$upstream_svn/trunk" |
68 |
} |
69 |
} |