Puppet Class: php

Inherits:
php::params
Defined in:
manifests/init.pp

Overview

Class: php

Parameters:

  • phpcli (Any) (defaults to: true)
  • confbase (Any) (defaults to: $php::params::confbase_cli)
  • php_loglevel (Any) (defaults to: 'notice')
  • user (Any) (defaults to: $php::params::user)
  • group (Any) (defaults to: $php::params::group)
  • expose_php (Any) (defaults to: false)
  • max_execution_time (Any) (defaults to: '5')
  • memory_limit (Any) (defaults to: '10M')
  • upload_max_filesize (Any) (defaults to: '100M')
  • post_max_size (Any) (defaults to: '110M')
  • timezone (Any) (defaults to: 'Europe/Andorra')
  • allow_url_fopen (Any) (defaults to: false)
  • allow_url_include (Any) (defaults to: false)
  • customini (Any) (defaults to: undef)
  • max_input_vars (Any) (defaults to: '1000')
  • short_open_tag (Any) (defaults to: false)
  • serialize_precision (Any) (defaults to: '17')
  • max_input_time (Any) (defaults to: '60')
  • error_log (Any) (defaults to: $php::params::apache_errorlog_default)
  • session_save_path (Any) (defaults to: $php::params::session_save_path_default)
  • session_gc_probability (Any) (defaults to: '0')
  • use_php_package_prefix_ius (Any) (defaults to: undef)
  • magic_quotes_gpc (Any) (defaults to: undef)
  • magic_quotes_runtime (Any) (defaults to: undef)
  • magic_quotes_sybase (Any) (defaults to: undef)


3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'manifests/init.pp', line 3

class php(
          $phpcli                     = true,
          $confbase                   = $php::params::confbase_cli,
          # PHP
          $php_loglevel               = 'notice',
          $user                       = $php::params::user,
          $group                      = $php::params::group,
          $expose_php                 = false,
          $max_execution_time         = '5',
          $memory_limit               = '10M',
          $upload_max_filesize        = '100M',
          $post_max_size              = '110M',
          $timezone                   = 'Europe/Andorra',
          $allow_url_fopen            = false,
          $allow_url_include          = false,
          $customini                  = undef,
          $max_input_vars             = '1000',
          $short_open_tag             = false,
          $serialize_precision        = '17',
          $max_input_time             = '60',
          $error_log                  = $php::params::apache_errorlog_default,
          $session_save_path          = $php::params::session_save_path_default,
          $session_gc_probability     = '0',
          $use_php_package_prefix_ius = undef,
          $magic_quotes_gpc           = undef,
          $magic_quotes_runtime       = undef,
          $magic_quotes_sybase        = undef,
        ) inherits php::params{

  if($use_php_package_prefix_ius!=undef)
  {
    include ::ius
  }

  if($use_php_package_prefix_ius==undef)
  {
    $actual_phpdependencies=$php::params::phpdependencies
  }
  else
  {
    $actual_phpdependencies = regsubst($php::params::phpdependencies, '^php[0-9.]*', $use_php_package_prefix_ius)

    Package[$actual_phpdependencies] {
      require => Class['::ius'],
    }
  }

  package { $actual_phpdependencies:
    ensure => 'installed',
  }

  if($phpcli)
  {
    if($use_php_package_prefix_ius==undef)
    {
      $actual_phpcli=$php::params::phpcli
    }
    else
    {
      $actual_phpcli = regsubst($php::params::phpcli, '^php[0-9.]*', $use_php_package_prefix_ius)
    }

    package { $actual_phpcli:
      ensure  => 'installed',
      require => Package[$actual_phpdependencies],
    }

    if($customini!=undef)
    {
      file { "${confbase}/php.ini":
        ensure  => $customini,
        force   => true,
        require => Package[$actual_phpcli],
      }
    }
    else
    {
      file { "${confbase}/php.ini":
        ensure  => 'present',
        owner   => 'root',
        group   => 'root',
        mode    => '0644',
        content => template('php/phpini.erb'),
        require => Package[$actual_phpcli],
      }
    }
  }
}