Mercurial > repos > other > Puppet
diff modules/php/manifests/embedded.pp @ 386:3fce34f642f1
Add a PHP module to handle platform differences
author | IBBoard <dev@ibboard.co.uk> |
---|---|
date | Mon, 03 Jan 2022 17:09:39 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/modules/php/manifests/embedded.pp Mon Jan 03 17:09:39 2022 +0000 @@ -0,0 +1,47 @@ +# Install and configure php embedded SAPI +# +# === Parameters +# +# [*inifile*] +# The path to the ini php5-embeded ini file +# +# [*settings*] +# Hash with nested hash of key => value to set in inifile +# +# [*package*] +# Specify which package to install +# +# [*ensure*] +# Specify which version of the package to install +# +class php::embedded ( + String $ensure = $php::ensure, + String $package = "${php::package_prefix}${php::params::embedded_package_suffix}", + Stdlib::Absolutepath $inifile = $php::params::embedded_inifile, + Hash $settings = {}, +) inherits php::params { + assert_private() + + $real_settings = lookup( + 'php::embedded::settings', + Hash, { + 'strategy' => 'deep', + 'merge_hash_arrays' => true + }, + $settings + ) + + $real_package = $facts['os']['family'] ? { + 'Debian' => "lib${package}", + default => $package, + } + + package { $real_package: + ensure => $ensure, + require => Class['php::packages'], + } + -> php::config { 'embedded': + file => $inifile, + config => $real_settings, + } +}