/[adm]/puppet/modules/mediawiki/manifests/init.pp
ViewVC logotype

Annotation of /puppet/modules/mediawiki/manifests/init.pp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1774 - (hide annotations) (download)
Mon Jun 20 02:14:06 2011 UTC (12 years, 10 months ago) by misc
File size: 2708 byte(s)
fix ordering issues ( took me a long time to understand the problem )
1 misc 1735 class mediawiki {
2     class base {
3 misc 1739
4     $root = "/srv/wiki/"
5    
6     include apache::mod_php
7    
8 misc 1769 package { ['mediawiki-minimal','mediawiki-ldapauthentication'] :
9 misc 1735 ensure => installed,
10     }
11 misc 1739
12     file { $root:
13     ensure => directory,
14     }
15 misc 1750
16     file { "/usr/local/bin/init_wiki.php":
17     ensure => present,
18     owner => root,
19     group => root,
20     mode => 755,
21     source => 'puppet:///modules/mediawiki/init_wiki.php',
22     }
23    
24 misc 1739 $user = "mediawiki"
25    
26 misc 1735 $pgsql_password = extlookup("mediawiki_pgsql",'x')
27 misc 1752 postgresql::remote_user { $user:
28 misc 1735 password => $pgsql_password,
29     }
30    
31     # TODO create the ldap user
32    
33     # TODO write the web configuration
34 misc 1739 apache::vhost_base { "wiki.$domain":
35     location => $root,
36     content => template("mediawiki/wiki_vhost.conf"),
37     }
38 misc 1735
39 misc 1739 apache::vhost_base { "ssl_wiki.$domain":
40     location => $root,
41     use_ssl => true,
42     vhost => "wiki.$domain",
43     content => template("mediawiki/wiki_vhost.conf"),
44     }
45    
46    
47    
48 misc 1735 # add index.php
49     }
50    
51     # do wiki basic installation
52    
53 misc 1739 define instance($title) {
54    
55     include mediawiki::base
56    
57     $path = $name
58     $lang = $name
59     $wiki_root = "$mediawiki::base::root/$path"
60     $db_name = "mediawiki_$name"
61     $db_user = "$mediawiki::base::user"
62     $db_password = "$mediawiki::base::pgsql_password"
63     $secret_key = extlookup("mediawiki_secretkey",'x')
64    
65     file { "$wiki_root":
66     ensure => directory
67     }
68    
69     exec { "wikicreate $name":
70     command => "mediawiki-create $wiki_root",
71     cwd => "$mediawiki::base::root",
72     require => [File["$wiki_root"],Package['mediawiki-minimal']],
73     creates => "$wiki_root/index.php",
74     }
75    
76 misc 1753 postgresql::remote_database { "$db_name":
77 misc 1739 user => $db_user,
78 misc 1751 callback_notify => Exec["deploy_db $name"],
79 misc 1739 }
80    
81 misc 1751 exec { "deploy_db $name":
82 misc 1754 command => "php /usr/local/bin/init_wiki.php $wiki_root",
83 misc 1751 refreshonly => true,
84     onlyif => "test -d $wiki_root/config",
85     }
86 misc 1770 $ldap_password = extlookup('mediawiki_ldap','x')
87 misc 1751
88 misc 1739 file { "$wiki_root/LocalSettings.php":
89     ensure => present,
90 misc 1774 content => template("mediawiki/LocalSettings.php"),
91     # if LocalSettings is created first, the wikicreate script
92     # do not create a confg directory, and so it doesn't trigger deploy_db exec
93     require => Exec["wikicreate $name"],
94 misc 1739 }
95 misc 1735 }
96     }

  ViewVC Help
Powered by ViewVC 1.1.30