Left: | ||
Right: |
OLD | NEW |
---|---|
1 node 'issues1' { | 1 node 'issues1' { |
2 include base | 2 |
3 include base, private::trac | |
3 | 4 |
4 class {'trac': | 5 class {'trac': |
5 domain => 'issues.adblockplus.org', | 6 domain => 'issues.adblockplus.org', |
6 certificate => 'issues.adblockplus.org_sslcert.pem', | 7 certificate => 'issues.adblockplus.org_sslcert.pem', |
7 private_key => 'issues.adblockplus.org_sslcert.key', | 8 private_key => 'issues.adblockplus.org_sslcert.key', |
8 is_default => true, | 9 is_default => true, |
9 } | 10 } |
10 | 11 |
12 trac::instance {'trac': | |
13 config => 'trac/trac.ini.erb', | |
14 description => 'Adblock Plus Issue Tracker', | |
15 environment => 'environment', | |
16 location => '/', | |
17 logo => 'adblockplus_logo.png', | |
18 database => 'trac', | |
19 permissions => "puppet:///modules/trac/permissions.csv", | |
20 } | |
21 | |
22 trac::instance {'orders': | |
23 config => 'trac/orders.ini.erb', | |
24 description => 'Eyeo Order System', | |
25 environment => 'environment-orders', | |
26 location => '/orders', | |
27 logo => 'eyeo_logo.png', | |
28 database => 'trac_orders', | |
29 permissions => "puppet:///modules/trac/order-permissions.csv", | |
30 } | |
31 | |
32 # Transforming the auth_cookie table of the "new" Trac project into an | |
33 # insertable view for the "old" project's table of the same name avoids | |
34 # the need to convert the entire auth to htpasswd-file handling, which | |
35 # would be the official way to go for achieving a shared authentication. | |
36 exec { 'trac_auth_cookie_view': | |
37 command => "mysql -utrac -p'${private::trac::database_password}' trac_orders --execute ' | |
38 CREATE VIEW auth_cookie_view AS SELECT * FROM trac.auth_cookie; | |
39 RENAME TABLE auth_cookie TO auth_cookie_original, auth_cookie_view TO auth _cookie;'", | |
Wladimir Palant
2014/07/31 09:46:53
Why the renaming? We don't want that empty table.
mathias
2014/08/01 13:59:46
Well, I still prefer my version: Beside having an
Wladimir Palant
2014/08/01 14:11:13
Backup of an empty table that isn't used anywhere?
mathias
2014/08/01 16:25:03
Since you prefer it without, I'll adjust it.
But,
| |
40 unless => "mysql -utrac -p'${private::trac::database_password}' trac_orders --execute ' | |
41 SHOW CREATE TABLE auth_cookie' | grep VIEW", | |
Wladimir Palant
2014/07/31 09:46:53
How about:
unless => "mysql -utrac -p'${private::
mathias
2014/08/01 13:59:46
Agreed, done.
| |
42 path => "/usr/bin:/usr/sbin:/bin:/usr/local/bin", | |
43 require => [ | |
44 Exec["deploy_trac"], | |
45 Exec["deploy_orders"], | |
46 ], | |
47 } | |
48 | |
49 # Synchronizing e-mail and password information between the project | |
50 # allows for logging in from any entry point - whilst maintaining a | |
51 # registration form (and process) in one project only. | |
52 cron {'trac_session_attribute_sync': | |
53 ensure => present, | |
54 user => trac, | |
55 minute => '*/30', | |
56 command => "mysql -utrac -p'${private::trac::database_password}' trac_orders --execute ' \ | |
57 INSERT INTO session_attribute (sid, authenticated, name, value) SELECT sid , authenticated, name, value \ | |
58 FROM trac.session_attribute WHERE authenticated = 1 AND name IN (\"email\" , \"password\") \ | |
59 ON DUPLICATE KEY UPDATE value=VALUES(value) ' >/dev/null | |
60 ", | |
61 require => Exec['trac_auth_cookie_view'], | |
62 } | |
63 | |
11 class {'nagios::client': | 64 class {'nagios::client': |
12 server_address => 'monitoring.adblockplus.org' | 65 server_address => 'monitoring.adblockplus.org' |
13 } | 66 } |
14 } | 67 } |
OLD | NEW |