]> git.donarmstrong.com Git - dsa-puppet.git/blobdiff - 3rdparty/modules/apache/manifests/mod/disk_cache.pp
add Openstack modules to 3rdparty
[dsa-puppet.git] / 3rdparty / modules / apache / manifests / mod / disk_cache.pp
diff --git a/3rdparty/modules/apache/manifests/mod/disk_cache.pp b/3rdparty/modules/apache/manifests/mod/disk_cache.pp
new file mode 100644 (file)
index 0000000..2b9d8a9
--- /dev/null
@@ -0,0 +1,31 @@
+class apache::mod::disk_cache {
+  $cache_root = $::osfamily ? {
+    'debian'  => '/var/cache/apache2/mod_disk_cache',
+    'redhat'  => '/var/cache/mod_proxy',
+    'freebsd' => '/var/cache/mod_disk_cache',
+    'gentoo'  => '/var/cache/apache2/mod_disk_cache',
+  }
+
+  $mod_name = $::osfamily ? {
+    'FreeBSD' => 'cache_disk',
+    default   => 'disk_cache',
+  }
+
+  if $::osfamily != 'FreeBSD' {
+    # FIXME: investigate why disk_cache was dependent on proxy
+    # NOTE: on FreeBSD disk_cache is compiled by default but proxy is not
+    Class['::apache::mod::proxy'] -> Class['::apache::mod::disk_cache']
+  }
+  Class['::apache::mod::cache'] -> Class['::apache::mod::disk_cache']
+
+  apache::mod { $mod_name: }
+  # Template uses $cache_proxy
+  file { 'disk_cache.conf':
+    ensure  => file,
+    path    => "${::apache::mod_dir}/disk_cache.conf",
+    content => template('apache/mod/disk_cache.conf.erb'),
+    require => Exec["mkdir ${::apache::mod_dir}"],
+    before  => File[$::apache::mod_dir],
+    notify  => Class['apache::service'],
+  }
+}