Index: modules/web/manifests/server.pp |
=================================================================== |
--- a/modules/web/manifests/server.pp |
+++ b/modules/web/manifests/server.pp |
@@ -9,40 +9,40 @@ class web::server( |
$multiplexer_locations = undef) { |
File { |
owner => 'root', |
group => 'root', |
mode => 0644, |
} |
Cron { |
- environment => ['MAILTO=admins@adblockplus.org', 'PYTHONPATH=/opt/sitescripts'], |
+ environment => ['MAILTO=admins@adblockplus.org', 'PYTHONPATH=/opt/cms:/opt/sitescripts'], |
} |
include nginx |
package {['python-jinja2', 'python-markdown']:} |
nginx::hostconfig {$vhost: |
content => template('web/site.conf.erb'), |
global_config => template('web/global.conf.erb'), |
is_default => $is_default, |
certificate => $certificate, |
private_key => $private_key, |
log => "access_log_$vhost" |
} |
- class {'sitescripts': |
- sitescriptsini_source => 'puppet:///modules/web/sitescripts', |
- } |
- |
if $multiplexer_locations != undef { |
include spawn-fcgi |
package {'python-flup':} |
+ class {'sitescripts': |
+ sitescriptsini_source => 'puppet:///modules/web/sitescripts', |
+ } |
+ |
spawn-fcgi::pool {"multiplexer": |
ensure => present, |
fcgi_app => '/opt/sitescripts/multiplexer.fcgi', |
socket => '/tmp/multiplexer-fastcgi.sock', |
mode => '0666', |
user => 'nginx', |
children => 1, |
require => [ |
@@ -54,16 +54,24 @@ class web::server( |
user {'www': |
ensure => present, |
comment => 'Web content owner', |
home => '/home/www', |
managehome => true, |
} |
+ exec {"fetch_cms": |
+ command => "hg clone https://hg.adblockplus.org/cms/ /opt/cms", |
+ path => ["/usr/bin/", "/bin/"], |
+ require => Package['mercurial'], |
+ timeout => 0, |
+ onlyif => "test ! -d /opt/cms", |
+ } |
+ |
exec {"fetch_repo": |
command => "hg clone -U https://hg.adblockplus.org/${repository} /home/www/${repository}", |
path => ["/usr/bin/", "/bin/"], |
require => Package['mercurial'], |
user => www, |
timeout => 0, |
onlyif => "test ! -d /home/www/${repository}", |
} |
@@ -74,15 +82,21 @@ class web::server( |
} |
file {"/var/www/${vhost}": |
ensure => directory, |
owner => www, |
mode => 755, |
} |
+ cron {'update_cms': |
+ ensure => present, |
+ command => "hg pull -q -u -R /opt/cms", |
+ minute => '5-55/10', |
+ } |
+ |
cron {'update_repo': |
ensure => present, |
- command => "hg pull -q -R /home/www/${repository} && python -m sitescripts.cms.bin.generate_static_pages /home/www/${repository} /var/www/${vhost}", |
+ command => "hg pull -q -R /home/www/${repository} && python -m cms.bin.generate_static_pages /home/www/${repository} /var/www/${vhost}", |
user => www, |
minute => '*/10', |
} |
} |