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

Contents of /puppet/modules/apache/manifests/init.pp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1617 - (show annotations) (download)
Thu May 19 10:07:12 2011 UTC (12 years, 11 months ago) by boklm
File size: 7882 byte(s)
add vhost parameter in vhost_catalyst_app
1 class apache {
2
3 class base {
4 $php_date_timezone = "UTC"
5
6 package { "apache-mpm-prefork":
7 alias => apache,
8 ensure => installed
9 }
10
11 package { "apache-conf":
12 ensure => installed,
13 }
14
15 service { httpd:
16 alias => apache,
17 ensure => running,
18 subscribe => [ Package['apache-mpm-prefork'] ],
19 }
20
21 file { "customization.conf":
22 ensure => present,
23 path => "/etc/httpd/conf.d/customization.conf",
24 content => template("apache/customization.conf"),
25 require => Package["apache-conf"],
26 notify => Service["apache"],
27 owner => root,
28 group => root,
29 mode => 644,
30 }
31
32 file { "00_default_vhosts.conf":
33 path => "/etc/httpd/conf/vhosts.d/00_default_vhosts.conf",
34 ensure => "present",
35 owner => root,
36 group => root,
37 mode => 644,
38 notify => Service['apache'],
39 require => Package["apache-conf"],
40 content => template("apache/00_default_vhosts.conf")
41 }
42
43 }
44
45 class mod_php inherits base {
46 package { "apache-mod_php":
47 ensure => installed
48 }
49
50 file { "/etc/httpd/conf.d/mod_php.conf":
51 ensure => present,
52 owner => root,
53 group => root,
54 mode => 644,
55 require => Package['apache-conf'],
56 content => template('apache/mod_php.conf'),
57 notify => Service['apache'],
58 }
59 }
60
61 class mod_perl inherits base {
62 package { "apache-mod_perl":
63 ensure => installed
64 }
65 }
66
67 class mod_fcgid inherits base {
68 package { "apache-mod_fcgid":
69 ensure => installed
70 }
71 }
72
73 class mod_fastcgi inherits base {
74 package { "apache-mod_fastcgi":
75 ensure => installed
76 }
77 }
78
79 class mod_ssl inherits base {
80 file { "/etc/ssl/apache/":
81 ensure => directory
82 }
83
84 package { "apache-mod_ssl":
85 ensure => installed
86 }
87
88 file { "01_default_ssl_vhost.conf":
89 path => '/etc/httpd/conf/vhosts.d/01_default_ssl_vhost.conf',
90 ensure => "present",
91 owner => root,
92 group => root,
93 mode => 644,
94 notify => Service['apache'],
95 require => Package["apache-conf"],
96 content => template("apache/01_default_ssl_vhost.conf")
97 }
98 }
99
100 class mod_wsgi inherits base {
101 package { "apache-mod_wsgi":
102 ensure => installed
103 }
104
105 file { "/usr/local/lib/wsgi":
106 ensure => directory,
107 owner => root,
108 group => root,
109 mode => 644,
110 }
111
112 file { "/etc/httpd/conf.d/mod_wsgi.conf":
113 ensure => present,
114 owner => root,
115 group => root,
116 mode => 644,
117 require => Package['apache-conf'],
118 content => template('apache/mod_wsgi.conf'),
119 notify => Service['apache'],
120 }
121
122 }
123
124 class mod_proxy inherits base {
125 package { "apache-mod_proxy":
126 ensure => installed
127 }
128 }
129
130 class mod_public_html inherits base {
131 package { "apache-mod_public_html":
132 ensure => installed
133 }
134 }
135
136 class mod_deflate inherits base {
137 package { "apache-mod_deflate":
138 ensure => installed
139 }
140 }
141
142 define vhost_base($content = '',
143 $location = '/dev/null',
144 $use_ssl = false,
145 $vhost = false,
146 $aliases = {},
147 $server_aliases = [],
148 $options = [],
149 $enable_public_html = false) {
150 include apache::base
151 if ! $vhost {
152 $real_vhost = $name
153 } else {
154 $real_vhost = $vhost
155 }
156
157 if $use_ssl {
158 include apache::mod_ssl
159 if $wildcard_sslcert != 'true' {
160 openssl::self_signed_cert{ "$real_vhost":
161 directory => "/etc/ssl/apache/",
162 before => File["$filename"],
163 }
164 }
165 }
166
167 if $enable_public_html {
168 include apache::mod_public_html
169 }
170
171 $filename = "$name.conf"
172 file { "$filename":
173 path => "/etc/httpd/conf/vhosts.d/$filename",
174 ensure => "present",
175 owner => root,
176 group => root,
177 mode => 644,
178 notify => Service['apache'],
179 require => Package['apache-conf'],
180 content => template("apache/vhost_base.conf")
181 }
182 }
183
184 define vhost_redirect_ssl() {
185 vhost_base { "redirect_ssl_$name":
186 vhost => $name,
187 content => template("apache/vhost_ssl_redirect.conf")
188 }
189 }
190
191 define vhost_catalyst_app($script, $location = '', $process = 4, $use_ssl = false, $vhost = false) {
192
193 include apache::mod_fastcgi
194 vhost_base { $name:
195 vhost => $vhost,
196 use_ssl => $use_ssl,
197 content => template("apache/vhost_catalyst_app.conf")
198 }
199 }
200
201 define vhost_django_app($module = false, $module_path = false, $use_ssl = false, $aliases= {}) {
202 include apache::mod_wsgi
203 vhost_base { $name:
204 use_ssl => $use_ssl,
205 content => template("apache/vhost_django_app.conf"),
206 aliases => $aliases,
207 }
208
209 # module is a ruby reserved keyword, cannot be used in templates
210 $django_module = $module
211 file { "$name.wsgi":
212 path => "/usr/local/lib/wsgi/$name.wsgi",
213 ensure => "present",
214 owner => root,
215 group => root,
216 mode => 755,
217 notify => Service['apache'],
218 content => template("apache/django.wsgi")
219 }
220 }
221
222 define vhost_wsgi($wsgi_path, $aliases = {}, $server_aliases = []) {
223 include apache::mod_wsgi
224 vhost_base { $name:
225 aliases => $aliases,
226 server_aliases => $server_aliases,
227 content => template("apache/vhost_wsgi.conf")
228 }
229 }
230
231 define vhost_other_app($vhost_file) {
232 include apache::base
233 file { "$name.conf":
234 path => "/etc/httpd/conf/vhosts.d/$name.conf",
235 ensure => "present",
236 owner => root,
237 group => root,
238 mode => 644,
239 notify => Service['apache'],
240 require => Package['apache-conf'],
241 content => template($vhost_file)
242 }
243 }
244
245 define vhost_simple($location) {
246 include apache::base
247 vhost_base { $name:
248 location => $location,
249 }
250 }
251
252 define vhost_redirect($url,
253 $vhost = false,
254 $use_ssl = false) {
255 include apache::base
256 vhost_base { $name:
257 use_ssl => $use_ssl,
258 vhost => $vhost,
259 content => template("apache/vhost_redirect.conf"),
260 }
261 }
262
263 define vhost_reverse_proxy($url,
264 $vhost = false,
265 $use_ssl = false) {
266 include apache::mod_proxy
267 vhost_base { $name:
268 use_ssl => $use_ssl,
269 vhost => $vhost,
270 content => template("apache/vhost_reverse_proxy.conf")
271 }
272 }
273
274 define webapp_other($webapp_file) {
275 include apache::base
276 $webappname = $name
277 file { "webapp_$name.conf":
278 path => "/etc/httpd/conf/webapps.d/$webappname.conf",
279 ensure => "present",
280 owner => root,
281 group => root,
282 mode => 644,
283 notify => Service['apache'],
284 require => Package['apache-conf'],
285 content => template($webapp_file)
286 }
287 }
288 }

  ViewVC Help
Powered by ViewVC 1.1.30