From: Frank Brehm Date: Fri, 4 Jan 2019 14:04:00 +0000 (+0100) Subject: Adding two sample responses from Puppet-Forge for Module status X-Git-Tag: 1.6.4^2~74 X-Git-Url: https://git.uhu-banane.net/?a=commitdiff_plain;h=8723f1900cdef1ed6a94df3e96dbc15b845d730d;p=pixelpark%2Fpuppetmaster-webhooks.git Adding two sample responses from Puppet-Forge for Module status --- diff --git a/doc/forge-api-response.active.js b/doc/forge-api-response.active.js new file mode 100644 index 0000000..bb18dce --- /dev/null +++ b/doc/forge-api-response.active.js @@ -0,0 +1,234 @@ +{ + "uri": "/v3/modules/puppet-php", + "slug": "puppet-php", + "name": "php", + "downloads": 246717, + "created_at": "2017-02-11 13:09:42 -0800", + "updated_at": "2018-11-13 06:42:20 -0800", + "deprecated_at": null, + "deprecated_for": null, + "superseded_by": null, + "supported": false, + "endorsement": "approved", + "module_group": "base", + "owner": { + "uri": "/v3/users/puppet", + "slug": "puppet", + "username": "puppet", + "gravatar_id": "40f0d703b950e4e651e0fec493a6caee" + }, + "current_release": { + "uri": "/v3/releases/puppet-php-6.0.2", + "slug": "puppet-php-6.0.2", + "module": { + "uri": "/v3/modules/puppet-php", + "slug": "puppet-php", + "name": "php", + "deprecated_at": null, + "owner": { + "uri": "/v3/users/puppet", + "slug": "puppet", + "username": "puppet", + "gravatar_id": "40f0d703b950e4e651e0fec493a6caee" + } + }, + "version": "6.0.2", + "metadata": { + "name": "puppet-php", + "version": "6.0.2", + "author": "Vox Pupuli", + "summary": "Generic PHP module that supports many platforms", + "license": "MIT", + "source": "https://github.com/voxpupuli/puppet-php", + "project_page": "https://github.com/voxpupuli/puppet-php", + "issues_url": "https://github.com/voxpupuli/puppet-php/issues", + "dependencies": [ + { + "name": "puppetlabs/stdlib", + "version_requirement": ">= 4.16.0 < 6.0.0" + }, + { + "name": "puppetlabs/apt", + "version_requirement": ">= 4.4.0 < 7.0.0" + }, + { + "name": "puppetlabs/inifile", + "version_requirement": ">= 1.4.1 < 3.0.0" + }, + { + "name": "puppet/zypprepo", + "version_requirement": ">= 2.0.0 < 3.0.0" + }, + { + "name": "puppet/archive", + "version_requirement": ">= 1.0.0 < 4.0.0" + } + ], + "data_provider": null, + "description": "Puppet module that aims to manage PHP and extensions in a generic way on many platforms with sane defaults and easy configuration", + "requirements": [ + { + "name": "puppet", + "version_requirement": ">= 4.10.0 < 7.0.0" + } + ], + "operatingsystem_support": [ + { + "operatingsystem": "Ubuntu", + "operatingsystemrelease": [ + "14.04", + "16.04", + "18.04" + ] + }, + { + "operatingsystem": "Debian", + "operatingsystemrelease": [ + "8", + "9" + ] + }, + { + "operatingsystem": "RedHat", + "operatingsystemrelease": [ + "6", + "7" + ] + }, + { + "operatingsystem": "CentOS", + "operatingsystemrelease": [ + "6", + "7" + ] + }, + { + "operatingsystem": "FreeBSD", + "operatingsystemrelease": [ + "9", + "10", + "11" + ] + }, + { + "operatingsystem": "SLES", + "operatingsystemrelease": [ + "11" + ] + }, + { + "operatingsystem": "OpenSUSE" + }, + { + "operatingsystem": "Archlinux" + } + ] + }, + "tags": [ + + ], + "supported": false, + "pdk": false, + "validation_score": 100, + "file_uri": "/v3/files/puppet-php-6.0.2.tar.gz", + "file_size": 57763, + "file_md5": "15250ab71001ce630fefbb6e3eff19db", + "downloads": 5923, + "readme": "[![Puppet Forge](http://img.shields.io/puppetforge/v/puppet/php.svg)](https://forge.puppetlabs.com/puppet/php)\n[![Build Status](https://travis-ci.org/voxpupuli/puppet-php.svg?branch=master)](https://travis-ci.org/voxpupuli/puppet-php)\n\n## Current Status\nAs the original creators of `puppet-php` are no longer maintaining the module, it has been handed over into the care of Vox Pupuli.\nPlease be sure to update all your links to the new location.\n\n# voxpupuli/php Puppet Module\n\nvoxpupuli/php is a Puppet module for managing PHP with a strong focus\non php-fpm. The module aims to use sane defaults for the supported\narchitectures. We strive to support all recent versions of Debian,\nUbuntu, RedHat/CentOS, openSUSE/SLES and FreeBSD. Managing Apache\nwith `mod_php` is not supported.\n\nThis originally was a fork of [jippi/puppet-php](https://github.com/jippi/puppet-php)\n(nodes-php on Puppet Forge) but has since been rewritten in large parts.\n\n## Usage\n\nQuickest way to get started is simply `include`'ing the _`php` class_.\n\n```puppet\ninclude '::php'\n```\n\nOr, you can override defaults and specify additional custom\nconfigurations by declaring `class { '::php': }` with parameters:\n\n```puppet\nclass { '::php':\n ensure => latest,\n manage_repos => true,\n fpm => true,\n dev => true,\n composer => true,\n pear => true,\n phpunit => false,\n}\n```\n\nOptionally the PHP version or configuration root directory can be changed also:\n\n```puppet\nclass { '::php::globals':\n php_version => '7.0',\n config_root => '/etc/php/7.0',\n}->\nclass { '::php':\n manage_repos => true\n}\n```\n\nThere are more configuration options available. Please refer to the\nauto-generated documentation at http://php.puppet.mayflower.de/.\n\n### Defining `php.ini` settings\n\nPHP configuration parameters in `php.ini` files can be defined as parameter\n`settings` on the main `php` class, or `php::fpm` / `php::cli` classes,\nor `php::extension` resources for each component independently.\n\nThese settings are written into their respective `php.ini` file. Global\nsettings in `php::settings` are merged with the settings of all components.\nPlease note that settings of extensions are always independent.\n\nIn the following example the PHP options and timezone will be set in\nall PHP configurations, i.e. the PHP cli application and all php-fpm pools.\n\n```puppet\n class { '::php':\n settings => {\n 'PHP/max_execution_time' => '90',\n 'PHP/max_input_time' => '300',\n 'PHP/memory_limit' => '64M',\n 'PHP/post_max_size' => '32M',\n 'PHP/upload_max_filesize' => '32M',\n 'Date/date.timezone' => 'Europe/Berlin',\n },\n }\n```\n\n### Installing extensions\n\nPHP configuration parameters in `php.ini` files can be defined\nas parameter `extensions` on the main `php` class. They are\nactivated for all activated SAPIs.\n\n```puppet\n class { '::php':\n extensions => {\n bcmath => { },\n imagick => {\n provider => pecl,\n },\n xmlrpc => { },\n memcached => {\n provider => 'pecl',\n header_packages => [ 'libmemcached-devel', ],\n },\n apc => {\n provider => 'pecl',\n settings => {\n 'apc/stat' => '1',\n 'apc/stat_ctime' => '1',\n },\n sapi => 'fpm',\n },\n },\n }\n```\n\nSee [the documentation](http://php.puppet.mayflower.de/php/extension.html)\nof the `php::extension` resource for all available parameters and default\nvalues.\n\n### Defining php-fpm pools\n\nIf different php-fpm pools are required, you can use `php::fpm::pool`\ndefined resource type. A single pool called `www` will be configured\nby default. Specify additional pools like so:\n\n```puppet\n php::fpm::pool { 'www2':\n listen => '127.0.1.1:9000',\n }\n```\n\nFor an overview of all possible parameters for `php::fpm::pool` resources\nplease see [its documention](http://php.puppet.mayflower.de/php/fpm/pool.html).\n\n### Overriding php-fpm user\n\nBy default, php-fpm is set up to run as Apache. If you need to customize that user, you can do that like so:\n\n```puppet\n class { '::php':\n fpm_user => 'nginx',\n fpm_group => 'nginx',\n }\n```\n\n### PHP with one FPM pool per user\n\nThis will create one vhost. $users is an array of people having php files at\n$fqdn/$user. This codesnipped uses voxpupuli/php and voxpupuli/nginx to create\nthe vhost and one php fpm pool per user. This was tested on Archlinux with\nnginx 1.13 and PHP 7.2.3.\n\n```puppet\n$users = ['bob', 'alice']\n\nclass { 'php':\n ensure => 'present',\n manage_repos => false,\n fpm => true,\n dev => false,\n composer => false,\n pear => true,\n phpunit => false,\n fpm_pools => {},\n}\n\ninclude nginx\n\nnginx::resource::server{$facts['fqdn']:\n www_root => '/var/www',\n autoindex => 'on',\n}\nnginx::resource::location{'dontexportprivatedata':\n server => $facts['fqdn'],\n location => '~ /\\.',\n location_deny => ['all'],\n}\n$users.each |$user| {\n # create one fpm pool. will be owned by the specific user\n # fpm socket will be owned by the nginx user 'http'\n php::fpm::pool{$user:\n user => $user,\n group => $user,\n listen_owner => 'http',\n listen_group => 'http',\n listen_mode => '0660',\n listen => \"/var/run/php-fpm/${user}-fpm.sock\",\n }\n nginx::resource::location { \"${name}_root\":\n ensure => 'present',\n server => $facts['fqdn'],\n location => \"~ .*${user}\\/.*\\.php$\",\n index_files => ['index.php'],\n fastcgi => \"unix:/var/run/php-fpm/${user}-fpm.sock\",\n include => ['fastcgi.conf'],\n }\n}\n```\n\n### Alternative examples using Hiera\nAlternative to the Puppet DSL code examples above, you may optionally define your PHP configuration using Hiera.\n\nBelow are all the examples you see above, but defined in YAML format for use with Hiera.\n\n```yaml\n\n---\nphp::ensure: latest\nphp::manage_repos: true\nphp::fpm: true\nphp::fpm_user: 'nginx'\nphp::fpm_group: 'nginx'\nphp::dev: true\nphp::composer: true\nphp::pear: true\nphp::phpunit: false\nphp::settings:\n 'PHP/max_execution_time': '90'\n 'PHP/max_input_time': '300'\n 'PHP/memory_limit': '64M'\n 'PHP/post_max_size': '32M'\n 'PHP/upload_max_filesize': '32M'\n 'Date/date.timezone': 'Europe/Berlin'\nphp::extensions:\n bcmath: {}\n xmlrpc: {}\n imagick:\n provider: pecl\n memcached:\n provider: pecl\n header_packages:\n - libmemcached-dev\n apc:\n provider: pecl\n settings:\n 'apc/stat': 1\n 'apc/stat_ctime': 1\n sapi: 'fpm'\nphp::fpm::pools:\n www2:\n listen: '127.0.1.1:9000'\n```\n\n## Notes\n\n### Debian squeeze & Ubuntu precise come with PHP 5.3\n\nOn Debian-based systems, we use `php5enmod` to enable extension-specific\nconfiguration. This script is only present in `php5` packages beginning with\nversion 5.4. Furthermore, PHP 5.3 is not supported by upstream anymore.\n\nWe strongly suggest you use a recent PHP version, even if you're using an\nolder though still supported distribution release. Our default is to have\n`php::manage_repos` enabled to add apt sources for\n[Dotdeb](http://www.dotdeb.org/) on Debian and\n[ppa:ondrej/php5](https://launchpad.net/~ondrej/+archive/ubuntu/php5/) on\nUbuntu with packages for the current stable PHP version closely tracking\nupstream.\n\n### Ubuntu systems and Ondřej's PPA\n\nThe older Ubuntu PPAs run by Ondřej have been deprecated (ondrej/php5, ondrej/php5.6)\nin favor of a new PPA: ondrej/php which contains all 3 versions of PHP: 5.5, 5.6, and 7.0\nHere's an example in hiera of getting PHP 5.6 installed with php-fpm, pear/pecl, and composer:\n\n```puppet\nphp::globals::php_version: '5.6'\nphp::fpm: true\nphp::dev: true\nphp::composer: true\nphp::pear: true\nphp::phpunit: false\n```\n\nIf you do not specify a php version, in Ubuntu the default will be 7.0 if you are\nrunning Xenial (16.04), otherwise PHP 5.6 will be installed (for other versions)\n\n### Apache support\n\nApache with `mod_php` is not supported by this module. Please use\n[puppetlabs/apache](https://forge.puppetlabs.com/puppetlabs/apache) instead.\n\nWe prefer using php-fpm. You can find an example Apache vhost in\n`manifests/apache_vhost.pp` that shows you how to use `mod_proxy_fcgi` to\nconnect to php-fpm.\n\n\n### RedHat/CentOS SCL Users\nIf you plan to use the SCL repositories with this module you must do the following adjustments:\n\n#### General config\nThis ensures that the module will create configurations in the directory ``/etc/opt/rh//` (also in php.d/ \nfor extensions). Anyway you have to manage the SCL repo's by your own.\n \n```puppet\nclass { '::php::globals':\n php_version => 'rh-php71',\n rhscl_mode => 'rhscl',\n}\n-> class { '::php':\n manage_repos => false\n}\n```\n\n#### Extensions\nExtensions in SCL are being installed with packages that cover 1 or more .so files. This is kinda incompatible with\nthis module, since this module specifies an extension by name and derives the name of the package and the config (.ini)\nfrom it. To manage extensions of SCL packages you must use the following parameters:\n\n```puppet\nclass { '::php':\n ...\n extensions => {\n 'soap' => {\n ini_prefix => '20-', \n },\n }\n}\n```\n\nBy this you tell the module to configure bz2 and calender while ensuring only the package `common`. Additionally to the \ninstallation of 'common' the inifiles 'calender.ini' and 'bz2.ini' will be created by the scheme \n``.\n\nA list of commonly used modules:\n```puppet\n {\n extensions => {\n 'xml' => {\n ini_prefix => '20-', \n multifile_settings => true,\n settings => {\n 'dom' => {},\n 'simplexml' => {},\n 'xmlwriter' => {},\n 'xsl' => {},\n 'wddx' => {},\n 'xmlreader' => {},\n },\n },\n 'soap' => {\n ini_prefix => '20-', \n },\n 'imap' => {\n ini_prefix => '20-', \n },\n 'intl' => {\n ini_prefix => '20-', \n },\n 'gd' => {\n ini_prefix => '20-', \n }, \n 'mbstring' => {\n ini_prefix => '20-', \n },\n 'xmlrpc' => {\n ini_prefix => '20-', \n },\n 'pdo' => {\n ini_prefix => '20-',\n multifile_settings => true,\n settings => {\n 'pdo' => {},\n 'pdo_sqlite' => {},\n 'sqlite3' => {},\n },\n },\n 'process' => {\n ini_prefix => '20-',\n multifile_settings => true,\n settings => {\n 'posix' => {},\n 'shmop' => {},\n 'sysvmsg' => {},\n 'sysvsem' => {},\n 'sysvshm' => {},\n },\n },\n 'mysqlnd' => {\n ini_prefix => '30-',\n multifile_settings => true,\n settings => {\n 'mysqlnd' => {},\n 'mysql' => {},\n 'mysqli' => {},\n 'pdo_mysql' => {},\n 'sysvshm' => {},\n },\n },\n 'mysqlnd' => {\n ini_prefix => '30-',\n multifile_settings => true,\n settings => {\n 'mysqlnd' => {},\n 'mysql' => {},\n 'mysqli' => {},\n 'pdo_mysql' => {},\n 'sysvshm' => {},\n },\n },\n }\n }\n```\n\n### Facts\n\nWe deliver a `phpversion` fact with this module. This is explicitly **NOT** intended\nto be used within your puppet manifests as it will only work on your second puppet\nrun. Its intention is to make querying PHP versions per server easy via PuppetDB or Foreman.\n\n### FreeBSD support\n\nOn FreeBSD systems we purge the system-wide `extensions.ini` in favour of\nper-module configuration files.\n\nPlease also note that support for Composer and PHPUnit on FreeBSD is untested\nand thus likely incomplete.\n\n### Running the test suite\n\nTo run the tests install the ruby dependencies with `bundler` and execute\n`rake`:\n\n```\nbundle install --path vendor/bundle\nbundle exec rake\n```\n\n## Bugs & New Features\n\nIf you happen to stumble upon a bug, please feel free to create a pull request\nwith a fix (optionally with a test), and a description of the bug and how it\nwas resolved.\n\nOr if you're not into coding, simply create an issue adding steps to let us\nreproduce the bug and we will happily fix it.\n\nIf you have a good idea for a feature or how to improve this module in general,\nplease create an issue to discuss it. We are very open to feedback. Pull\nrequests are always welcome.\n\nWe hate orphaned and unmaintained Puppet modules as much as you do and\ntherefore promise that we will continue to maintain this module and keep\nresponse times to issues short. If we happen to lose interest, we will write\na big fat warning into this README to let you know.\n\n## License\n\nThe project is released under the permissive MIT license.\n\nThe source can be found at\n[github.com/voxpupuli/puppet-php](https://github.com/voxpupuli/puppet-php/).\n\nThis Puppet module was originally maintained by some fellow puppeteers at\n[Mayflower GmbH](https://mayflower.de) and is now maintained by\n[Vox Pupuli](https://voxpupuli.org/).\n", + "changelog": "# Changelog\n\nAll notable changes to this project will be documented in this file.\nEach new release typically also includes the latest modulesync defaults.\nThese should not affect the functionality of the module.\n\n## [v6.0.2](https://github.com/voxpupuli/puppet-php/tree/v6.0.2) (2018-10-14)\n\n[Full Changelog](https://github.com/voxpupuli/puppet-php/compare/v6.0.1...v6.0.2)\n\n**Fixed bugs:**\n\n- allow `latest` for php extensions again [\\#485](https://github.com/voxpupuli/puppet-php/pull/485) ([amateo](https://github.com/amateo))\n\n**Closed issues:**\n\n- Ubuntu 18.04 issue just installing [\\#475](https://github.com/voxpupuli/puppet-php/issues/475)\n\n**Merged pull requests:**\n\n- Remove readable permissions for others on fpm pool config file [\\#484](https://github.com/voxpupuli/puppet-php/pull/484) ([l-lotz](https://github.com/l-lotz))\n\n## [v6.0.1](https://github.com/voxpupuli/puppet-php/tree/v6.0.1) (2018-10-06)\n\n[Full Changelog](https://github.com/voxpupuli/puppet-php/compare/v6.0.0...v6.0.1)\n\n**Fixed bugs:**\n\n- Fix enable extension when there is no module associated [\\#479](https://github.com/voxpupuli/puppet-php/pull/479) ([amateo](https://github.com/amateo))\n- Remove config when module is ensured to absent [\\#478](https://github.com/voxpupuli/puppet-php/pull/478) ([amateo](https://github.com/amateo))\n\n**Closed issues:**\n\n- \"php::manage\\_repos: true\" causes failure on Ubuntu 18.04, needs newer puppetlabs-apt version\\(\\>=5.0.0\\) [\\#467](https://github.com/voxpupuli/puppet-php/issues/467)\n\n**Merged pull requests:**\n\n- modulesync 2.1.0 and allow puppet 6.x [\\#481](https://github.com/voxpupuli/puppet-php/pull/481) ([bastelfreak](https://github.com/bastelfreak))\n- Add acceptance tests for system php with extensions [\\#476](https://github.com/voxpupuli/puppet-php/pull/476) ([bastelfreak](https://github.com/bastelfreak))\n- Allow puppetlabs/stdlib 5.x and puppetlabs/apt 6.x [\\#472](https://github.com/voxpupuli/puppet-php/pull/472) ([bastelfreak](https://github.com/bastelfreak))\n\n## [v6.0.0](https://github.com/voxpupuli/puppet-php/tree/v6.0.0) (2018-07-29)\n\n[Full Changelog](https://github.com/voxpupuli/puppet-php/compare/v5.3.0...v6.0.0)\n\n**Breaking changes:**\n\n- Tests failing under debian8 [\\#433](https://github.com/voxpupuli/puppet-php/issues/433)\n- fixed hiera merge bug [\\#435](https://github.com/voxpupuli/puppet-php/pull/435) ([c33s](https://github.com/c33s))\n\n**Implemented enhancements:**\n\n- Compatibility with Software collections \\(SCL\\) [\\#451](https://github.com/voxpupuli/puppet-php/pull/451) ([oranenj](https://github.com/oranenj))\n- Add Debian 9 support [\\#440](https://github.com/voxpupuli/puppet-php/pull/440) ([SimonHoenscheid](https://github.com/SimonHoenscheid))\n- Add initial ubuntu 18.04 support [\\#428](https://github.com/voxpupuli/puppet-php/pull/428) ([jkroepke](https://github.com/jkroepke))\n\n**Fixed bugs:**\n\n- php.ini not updated [\\#422](https://github.com/voxpupuli/puppet-php/issues/422)\n- Error: Could not upgrade module 'puppet-php' \\(v4.0.0 -\\> v5.0.0\\) [\\#378](https://github.com/voxpupuli/puppet-php/issues/378)\n- Fix paths for phpunit on FreeBSD [\\#291](https://github.com/voxpupuli/puppet-php/pull/291) ([bitnexus](https://github.com/bitnexus))\n\n**Closed issues:**\n\n- Debian 9 \\(Stretch\\) support [\\#439](https://github.com/voxpupuli/puppet-php/issues/439)\n- Repository class switch failing on Ubuntu [\\#392](https://github.com/voxpupuli/puppet-php/issues/392)\n- Next stable release? [\\#352](https://github.com/voxpupuli/puppet-php/issues/352)\n- PHP extensions loaded twice [\\#341](https://github.com/voxpupuli/puppet-php/issues/341)\n- PECL/Extension checks for beta packages [\\#73](https://github.com/voxpupuli/puppet-php/issues/73)\n\n**Merged pull requests:**\n\n- Update README.md with working RHSCL example. [\\#463](https://github.com/voxpupuli/puppet-php/pull/463) ([Tamerz](https://github.com/Tamerz))\n- enable ubuntu 18.04 acceptance tests [\\#462](https://github.com/voxpupuli/puppet-php/pull/462) ([bastelfreak](https://github.com/bastelfreak))\n- drop EOL OSs; fix puppet version range [\\#453](https://github.com/voxpupuli/puppet-php/pull/453) ([bastelfreak](https://github.com/bastelfreak))\n- Rely on beaker-hostgenerator for docker nodesets [\\#452](https://github.com/voxpupuli/puppet-php/pull/452) ([ekohl](https://github.com/ekohl))\n- mark private classes with assert\\_private\\(\\) [\\#447](https://github.com/voxpupuli/puppet-php/pull/447) ([bastelfreak](https://github.com/bastelfreak))\n- migrate vars from topscope to relative scope [\\#444](https://github.com/voxpupuli/puppet-php/pull/444) ([bastelfreak](https://github.com/bastelfreak))\n- bump puppet to latest supported version 4.10.0 [\\#443](https://github.com/voxpupuli/puppet-php/pull/443) ([bastelfreak](https://github.com/bastelfreak))\n- Update puppet/archive dependency [\\#438](https://github.com/voxpupuli/puppet-php/pull/438) ([marknl](https://github.com/marknl))\n- switch the dotdeb repo url to https [\\#431](https://github.com/voxpupuli/puppet-php/pull/431) ([bastelfreak](https://github.com/bastelfreak))\n\n## [v5.3.0](https://github.com/voxpupuli/puppet-php/tree/v5.3.0) (2018-03-06)\n\n[Full Changelog](https://github.com/voxpupuli/puppet-php/compare/v5.2.0...v5.3.0)\n\n**Implemented enhancements:**\n\n- mark Ubuntu 16.04 as supported and fix its tests [\\#221](https://github.com/voxpupuli/puppet-php/issues/221)\n- Using the new facts hash instead of the global var in repo/debian.pp [\\#425](https://github.com/voxpupuli/puppet-php/pull/425) ([c33s](https://github.com/c33s))\n- Add Acceptance tests [\\#414](https://github.com/voxpupuli/puppet-php/pull/414) ([bastelfreak](https://github.com/bastelfreak))\n\n**Fixed bugs:**\n\n- Fix Archlinux support [\\#423](https://github.com/voxpupuli/puppet-php/pull/423) ([bastelfreak](https://github.com/bastelfreak))\n- Fix wrongly named parameters for apt::source/key [\\#420](https://github.com/voxpupuli/puppet-php/pull/420) ([bitcrush](https://github.com/bitcrush))\n- manage software-properties-common on ubuntu [\\#419](https://github.com/voxpupuli/puppet-php/pull/419) ([bastelfreak](https://github.com/bastelfreak))\n\n**Merged pull requests:**\n\n- add examples for php-fpm/nginx [\\#424](https://github.com/voxpupuli/puppet-php/pull/424) ([bastelfreak](https://github.com/bastelfreak))\n- add tests for php5.6 [\\#418](https://github.com/voxpupuli/puppet-php/pull/418) ([bastelfreak](https://github.com/bastelfreak))\n\n## [v5.2.0](https://github.com/voxpupuli/puppet-php/tree/v5.2.0) (2018-02-14)\n\n[Full Changelog](https://github.com/voxpupuli/puppet-php/compare/v5.1.0...v5.2.0)\n\n**Implemented enhancements:**\n\n- add ubuntu 16.04 support [\\#412](https://github.com/voxpupuli/puppet-php/pull/412) ([bastelfreak](https://github.com/bastelfreak))\n- Add PHP 7.1 support on Debian [\\#293](https://github.com/voxpupuli/puppet-php/pull/293) ([fstr](https://github.com/fstr))\n\n**Fixed bugs:**\n\n- Auto\\_update not idempotent [\\#402](https://github.com/voxpupuli/puppet-php/issues/402)\n- use correct require arguments [\\#415](https://github.com/voxpupuli/puppet-php/pull/415) ([bastelfreak](https://github.com/bastelfreak))\n- fix composer auto\\_update idempotency in case no update is available [\\#408](https://github.com/voxpupuli/puppet-php/pull/408) ([joekohlsdorf](https://github.com/joekohlsdorf))\n- Fixing wrong pear package name in Amazon Linux [\\#399](https://github.com/voxpupuli/puppet-php/pull/399) ([gdurandvadas](https://github.com/gdurandvadas))\n\n**Closed issues:**\n\n- Upgrade to work with Puppet5 [\\#406](https://github.com/voxpupuli/puppet-php/issues/406)\n- php 7.2 + ubuntu 16.04 - pdo-mysql extension not installing correctly [\\#405](https://github.com/voxpupuli/puppet-php/issues/405)\n- config\\_root parameter does nothing on RHEL7 [\\#397](https://github.com/voxpupuli/puppet-php/issues/397)\n\n**Merged pull requests:**\n\n- Deprecate hiera\\_hash functions [\\#410](https://github.com/voxpupuli/puppet-php/pull/410) ([minorOffense](https://github.com/minorOffense))\n- mark Puppet 5 as supported [\\#407](https://github.com/voxpupuli/puppet-php/pull/407) ([joekohlsdorf](https://github.com/joekohlsdorf))\n- Change default RedHat params to use config\\_root [\\#398](https://github.com/voxpupuli/puppet-php/pull/398) ([DALUofM](https://github.com/DALUofM))\n\n## [v5.1.0](https://github.com/voxpupuli/puppet-php/tree/v5.1.0) (2017-11-10)\n\n[Full Changelog](https://github.com/voxpupuli/puppet-php/compare/v5.0.0...v5.1.0)\n\n**Fixed bugs:**\n\n- Fix syntax issues with data types [\\#385](https://github.com/voxpupuli/puppet-php/pull/385) ([craigwatson](https://github.com/craigwatson))\n- fix ubuntu 17.04 version for php7 [\\#383](https://github.com/voxpupuli/puppet-php/pull/383) ([arudat](https://github.com/arudat))\n- Fix OS fact comparison for Ubuntu 12 and 14 [\\#375](https://github.com/voxpupuli/puppet-php/pull/375) ([dbeckham](https://github.com/dbeckham))\n- Fix OS facts usage when selecting repo class for Ubuntu systems [\\#374](https://github.com/voxpupuli/puppet-php/pull/374) ([dbeckham](https://github.com/dbeckham))\n- Confine pecl provider to where pear command is available [\\#364](https://github.com/voxpupuli/puppet-php/pull/364) ([walkamongus](https://github.com/walkamongus))\n- fix default value of php::fpm::pool::access\\_log\\_format [\\#361](https://github.com/voxpupuli/puppet-php/pull/361) ([lesinigo](https://github.com/lesinigo))\n\n**Closed issues:**\n\n- Debian repository classes are being selected on Ubuntu systems [\\#373](https://github.com/voxpupuli/puppet-php/issues/373)\n- Changes in \\#357 break Ubuntu version dependent resources [\\#372](https://github.com/voxpupuli/puppet-php/issues/372)\n\n**Merged pull requests:**\n\n- Proposed fix for failing parallel spec tests [\\#386](https://github.com/voxpupuli/puppet-php/pull/386) ([wyardley](https://github.com/wyardley))\n- update dependencies in metadata [\\#379](https://github.com/voxpupuli/puppet-php/pull/379) ([mmoll](https://github.com/mmoll))\n- Bump metadata.json version to 5.0.1-rc [\\#377](https://github.com/voxpupuli/puppet-php/pull/377) ([dhollinger](https://github.com/dhollinger))\n- bump dep on puppet/archive to '\\< 3.0.0' [\\#376](https://github.com/voxpupuli/puppet-php/pull/376) ([costela](https://github.com/costela))\n- Add missing php-fpm user and group class param docs [\\#346](https://github.com/voxpupuli/puppet-php/pull/346) ([dbeckham](https://github.com/dbeckham))\n\n## [v5.0.0](https://github.com/voxpupuli/puppet-php/tree/v5.0.0) (2017-08-07)\n### Summary\nThis backwards-incompatible release drops puppet 3, PHP 5.5 on Ubuntu, and the deprecated `php::extension` parameter `pecl_source`. It improves much of the internal code quality, and adds several useful features the most interesting of which is probably the `php::extension` parameter `ini_prefix`.\n\n### Changed\n- Drop puppet 3 compatibility.\n- Bumped puppetlabs-apt lower bound to 4.1.0\n- Bumped puppetlabs-stdlib lower bound to 4.13.1\n\n### Removed\n- Deprecated `php::extension` define parameters `pecl_source`. Use `source` instead.\n- PHP 5.5 support on ubuntu.\n\n### Added\n- `php` class parameters `fpm_user` and `fpm_group` to customize php-fpm user/group.\n- `php::fpm` class parameters `user` and `group`.\n- `php::fpm::pool` define parameter `pm_process_idle_timeout` and pool.conf `pm.process_idle_timeout` directive.\n- `php::extension` class parameters `ini_prefix` and `install_options`.\n- Archlinux compatibility.\n- Bumped puppetlabs-apt upper bound to 5.0.0\n\n### Fixed\n- Replaced validate functions with data types.\n- Linting issues.\n- Replace legacy facts with facts hash.\n- Simplify `php::extension`\n- Only apt dependency when `manage_repos => true`\n- No more example42/yum dependency\n\n## 2017-02-11 Release [4.0.0]\n\nThis is the last release with Puppet3 support!\n* Fix a bug turning `manage_repos` off on wheezy\n* Fix a deprecation warning on `apt::key` when using `manage_repos` on wheezy (#110). This change requires puppetlabs/apt at >= 1.8.0\n* Allow removal of config values (#124)\n* Add `phpversion` fact, for querying through PuppetDB or Foreman (#119)\n* Allow configuring the fpm pid file (#123)\n* Add embedded SAPI support (#115)\n* Add options to fpm config and pool configs (#139)\n* Add parameter logic for PHP 7 on Ubuntu/Debian (#180)\n* add SLES PHP 7.0 Support (#220)\n* allow packaged extensions to be loaded as zend extensions\n* Fix command to enable php extensions (#226)\n* Fix many rucocop warnings\n* Update module Ubuntu 14.04 default to official repository setup\n* Fix dependency for extentions with no package source\n* Allow packaged extensions to be loaded as Zend extensions\n* Support using an http proxy for downloading composer\n* Refactor classes php::fpm and php::fpm:service\n* Manage apache/PHP configurations on Debian and RHEL systems\n* use voxpupuli/archive to download composer\n* respect $manage_repos, do not include ::apt if set to false\n* Bump min version_requirement for Puppet + deps\n* allow pipe param for pecl extensions\n* Fix: composer auto_update: exec's environment must be array\n\n### Breaking Changes\n * Deep merge `php::extensions` the same way as `php::settings`. This technically is a\n breaking change but should not affect many people.\n * PHP 5.6 is the default version on all systems now (except Ubuntu 16.04, where 7.0 is the default).\n * There's a php::globals class now, where global paramters (like the PHP version) are set. (#132)\n * Removal of php::repo::ubuntu::ppa (#218)\n\n## 3.4.2\n * Fix a bug that changed the default of `php::manage_repos` to `false` on\n Debian-based operating systems except wheezy. It should be turned on by\n default. (#116)\n * Fix a bug that prevented reloading php-fpm on Ubuntu in some cases.\n (#117, #107)\n\n## 3.4.1\n * Fix reloading php-fpm on Ubuntu trusty & utopic (#107)\n\n## 3.4.0\n * New parameter `ppa` for class `php::repo::ubuntu` to specify the ppa\n name to use. We default to `ondrej/php5-oldstable` for precise and\n `ondrej/php5` otherwise.\n * New parameter `include` for `php::fpm::pool` resources to specify\n custom configuration files.\n\n## 3.3.1\n * Make `systemd_interval` parameter for class `php::fpm::config` optional\n\n## 3.3.0\n * `php::extension` resources:\n * New boolean parameter `settings_prefix` to automatically prefix all\n settings keys with the extensions names. Defaults to false to ensurre\n the current behaviour.\n * New string parameter `so_name` to set the DSO name of an extension if\n it doesn't match the package name.\n * New string parameter `php_api_version` to set a custom api version. If\n not `undef`, the `so_name` is prefixed with the full module path in the\n ini file. Defaults to `undef`.\n * The default of the parameter `listen_allowed_clients` of `php::fpm::pool`\n resources is now `undef` instead of `'127.0.0.1'`. This way it is more\n intuitive to change the default tcp listening socket at `127.0.0.1:9000`\n to a unix socket by only setting the `listen` parameter instead of\n additionally needing to unset `listen_allowed_clients`. This has no\n security implications.\n * New parameters for the `php::fpm::config` class:\n * `error_log`\n * `syslog_facility`\n * `syslog_ident`\n * `systemd_interval`\n * A bug that prevented merging the global `php::settings` parameter into\n SAPI configs for `php::cli` and `php::fpm` was fixed.\n * The dotdeb repos are now only installed for Debian wheezy as Debian jessie\n has a sufficiently recent PHP version.\n\n## 3.2.2\n * Fix a typo in hiera keys `php::settings` & `php::fpm::settings` (#83)\n\n## 3.2.1\n * Fixed default `yum_repo` key in `php::repo::redhat`\n * On Ubuntu precise we now use the ondrej/php5-oldstable ppa. This can be\n manually enabled with by setting `$php::repo::ubuntu::oldstable` to\n `true`.\n * `$php::ensure` now defaults to `present` instead of `latest`. Though,\n strictly speaking, this represents a functional change, we consider this\n to be a bugfix because automatic updates should be enabled explicitely.\n * `$php::ensure` is not anymore passed to `php::extension` resources as\n default ensure parameter because this doesn't make sense.\n\n## 3.2.0\n * Support for FreeBSD added by Frank Wall\n * RedHat now uses remi-php56 yum repo by default\n * The resource `php::fpm::pool` is now public, you can use it in your\n manifests without using `$php::fpm::pools`\n * We now have autogenerated documentation using `puppetlabs/strings`\n\n## 3.1.0\n * New parameter `pool_purge` for `php::extension` to remove files not\n managed by puppet from the pool directory.\n * The `pecl_source` parameter for `php::extension` was renamend to\n `source` because it is also useful for PEAR extensions.\n `pecl_source` can still be used but is deprecated and will be\n removed in the next major release.\n * Parameters referring to time in `php::fpm::config` can now be\n specified with units (i.e. `'60s'`, `'1d'`):\n * `emergency_restart_threshold`\n * `emergency_restart_interval`\n * `process_control_timeout`\n * The PEAR version is not independant of `$php::ensure` and can be\n configured with `$php::pear_ensure`\n * Give special thanks to the contributors of this release:\n * Petr Sedlacek\n * Sherlan Moriah\n\n## 3.0.1\n * Fix typo in package suffix for php-fpm on RHEL in params.pp\n\n## 3.0.0\n * Removes `$php::fpm::pool::error_log`. Use the `php_admin_flag` and\n `php_admin_value` parameters to set the php settings `log_errors` and\n `error_log` instead.\n * Removes support for PHP 5.3 on Debian-based systems. See the notes in the\n README for more information.\n * Removes the `php_version` fact which had only worked on the later puppet runs.\n * Moves CLI-package handling to `php::packages`\n * Allows changing the package prefix via `php::package_prefix`.\n * Moves FPM-package handling from `php::fpm::package` to `php::fpm`\n * Changes `php::packages`, so that `php::packages::packages` becomes\n `php::packages::names` and are installed and `php::packages::names_to_prefix`\n are installed prefixed by `php::package_prefix`.\n * PHPUnit is now installed as phar in the same way composer is installed,\n causing all parameters to change\n * The `php::extension` resource has a new parameter: `zend`. If set to true,\n exenstions that were installed with pecl are loaded with `zend_extension`.\n\n## 2.0.4\n * Style fixes all over the place\n * Module dependencies are now bound to the current major version\n\n## 2.0.3\n * Some issues & bugs with extensions were fixed\n * If you set the `provider` parameter of an extension to `\"none\"`, no\n extension packages will be installed\n * The EPEL yum repo has been added for RedHat systems\n\n## 2.0.2\n * Adds support for `header_packages` on all extensions\n * Adds `install_options` to pear package provider\n\n## 2.0.1\n * This is a pure bug fix release\n * Fix for CVE 2014-0185 (https://bugs.php.net/bug.php?id=67060)\n\n## 2.0.0\n * Remove augeas and switch to puppetlabs/inifile for configs\n * Old: `settings => [‘set PHP/short_open_tag On‘]`\n * New: `settings => {‘PHP/short_open_tag’ => ‘On‘}`\n * Settings parmeter cleanups\n * The parameter `config` of `php::extension` resources is now called `settings`\n * The parameters `user` and `group` of `php::fpm` have been moved to `php::fpm::config`\n * New parameter `php::settings` for global settings (i.e. CLI & FPM)\n * New parameter `php::cli` to disable CLI if supported\n\n## 1.1.2\n * SLES: PHP 5.5 will now be installed\n * Pecl extensions now autoload the .so based on $name instead of $title\n\n## 1.1.1\n * some nasty bugs with the pecl php::extension provider were fixed\n * php::extension now has a new pecl_source parameter for specifying custom\n source channels for the pecl provider\n\n## 1.1.0\n * add phpunit to main class\n * fix variable access for augeas\n\n## 1.0.2\n * use correct suse apache service name\n * fix anchoring of augeas\n\n## 1.0.1\n * fixes #9 undefined pool_base_dir\n\n## 1.0.0\nInitial release\n\n[4.1.0]: https://github.com/olivierlacan/keep-a-changelog/compare/v4.0.0...v4.1.0\n[4.0.0]: https://github.com/olivierlacan/keep-a-changelog/compare/v3.4.2...v4.0.0\n\n\n\\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*\n", + "license": null, + "reference": "# Reference\n\n\n## Table of Contents\n\n**Classes**\n\n* [`php`](#php): Base class with global configuration parameters that pulls in all enabled components. === Parameters [*ensure*] Specify which version of \n* [`php::apache_config`](#phpapache_config): Install and configure php apache settings === Parameters [*inifile*] The path to the ini php-apache ini file [*settings*] Hash with ne\n* [`php::cli`](#phpcli): Install and configure php CLI === Parameters [*inifile*] The path to the ini php5-cli ini file [*settings*] Hash with nested hash of k\n* [`php::composer`](#phpcomposer): Install composer package manager === Parameters [*source*] Holds URL to the Composer source file [*path*] Holds path to the Composer e\n* [`php::composer::auto_update`](#phpcomposerauto_update): Install composer package manager === Parameters [*max_age*] Defines number of days after which Composer should be updated [*source*] H\n* [`php::dev`](#phpdev): Install the development package with headers for PHP === Parameters [*ensure*] The PHP ensure of PHP dev to install [*package*] The pa\n* [`php::embedded`](#phpembedded): Install and configure php embedded SAPI === Parameters [*inifile*] The path to the ini php5-embeded ini file [*settings*] Hash with ne\n* [`php::fpm`](#phpfpm): Install and configure mod_php for fpm === Parameters [*user*] The user that php-fpm should run as [*group*] The group that php-fpm sho\n* [`php::fpm::config`](#phpfpmconfig): Configure php-fpm service === Parameters [*config_file*] The path to the fpm config file [*user*] The user that runs php-fpm [*group*\n* [`php::fpm::service`](#phpfpmservice): Manage fpm service === Parameters [*service_name*] name of the php-fpm service [*ensure*] 'ensure' value for the service [*enable*] \n* [`php::global`](#phpglobal): \n* [`php::globals`](#phpglobals): \n* [`php::packages`](#phppackages): Install common PHP packages === Parameters [*ensure*] Specify which version of PHP packages to install [*names*] List of the names of \n* [`php::params`](#phpparams): PHP params class\n* [`php::pear`](#phppear): Install PEAR package manager === Parameters [*ensure*] The package ensure of PHP pear to install and run pear auto_discover [*package*] \n* [`php::phpunit`](#phpphpunit): Install phpunit, PHP testing framework === Parameters [*source*] Holds URL to the phpunit source file [*path*] Holds path to the phpun\n* [`php::phpunit::auto_update`](#phpphpunitauto_update): Install phpunit package manager === Parameters [*max_age*] Defines number of days after which phpunit should be updated [*source*] Hol\n* [`php::repo`](#phprepo): Configure package repository\n* [`php::repo::debian`](#phprepodebian): Configure debian apt repo === Parameters [*location*] Location of the apt repository [*release*] Release of the apt repository [*repo\n* [`php::repo::redhat`](#phpreporedhat): \n* [`php::repo::suse`](#phpreposuse): Configure suse repo === Parameters [*reponame*] Name of the Zypper repository [*baseurl*] Base URL of the Zypper repository\n* [`php::repo::ubuntu`](#phprepoubuntu): Configure ubuntu ppa === Parameters [*version*] PHP version to manage (e.g. 5.6)\n\n**Defined types**\n\n* [`php::apache_vhost`](#phpapache_vhost): Configures an apache vhost for php === Parameters [*vhost*] The vhost address [*docroot*] The vhost docroot [*port*] The vhost port\n* [`php::config`](#phpconfig): Configure php.ini settings for a PHP SAPI === Parameters [*file*] The path to ini file [*config*] Nested hash of key => value to apply\n* [`php::config::setting`](#phpconfigsetting): Configure php.ini settings === Parameters [*key*] The key of the value, like `ini_setting` [*file*] The path to ini file [*value*] \n* [`php::extension`](#phpextension): Install a PHP extension package === Parameters [*ensure*] The ensure of the package to install Could be \"latest\", \"installed\" or a pinn\n* [`php::extension::config`](#phpextensionconfig): Configure a PHP extension package === Parameters [*ensure*] The ensure of the package to install Could be \"latest\", \"installed\" or a pi\n* [`php::extension::install`](#phpextensioninstall): Install a PHP extension package === Parameters [*ensure*] The ensure of the package to install Could be \"latest\", \"installed\" or a pinn\n* [`php::fpm::pool`](#phpfpmpool): Configure fpm pools === Parameters See the official php-fpm documentation for parameters that are not documented here: http://php.net/manua\n\n**Functions**\n\n* [`ensure_prefix`](#ensure_prefix): This function ensures a prefix for all elements in an array or the keys in a hash. *Examples:* ensure_prefix({'a' => 1, 'b' => 2, 'p.c' =\n* [`to_hash_settings`](#to_hash_settings): This function converts a +{key => value}+ hash into a nested hash and can add an id to the outer key. The optional id string as second parame\n\n## Classes\n\n### php\n\nBase class with global configuration parameters that pulls in all\nenabled components.\n\n=== Parameters\n\n[*ensure*]\n Specify which version of PHP packages to install, defaults to 'present'.\n Please note that 'absent' to remove packages is not supported!\n\n[*manage_repos*]\n Include repository (dotdeb, ppa, etc.) to install recent PHP from\n\n[*fpm*]\n Install and configure php-fpm\n\n[*fpm_service_enable*]\n Enable/disable FPM service\n\n[*fpm_service_ensure*]\n Ensure FPM service is either 'running' or 'stopped'\n\n[*fpm_service_name*]\n This is the name of the php-fpm service. It defaults to reasonable OS\n defaults but can be different in case of using php7.0/other OS/custom fpm service\n\n[*fpm_service_provider*]\n This is the name of the service provider, in case there is a non\n OS default service provider used to start FPM.\n Defaults to 'undef', pick system defaults.\n\n[*fpm_pools*]\n Hash of php::fpm::pool resources that will be created. Defaults\n to a single php::fpm::pool named www with default parameters.\n\n[*fpm_global_pool_settings*]\n Hash of defaults params php::fpm::pool resources that will be created.\n Defaults to empty hash.\n\n[*fpm_inifile*]\n Path to php.ini for fpm\n\n[*fpm_package*]\n Name of fpm package to install\n\n[*fpm_user*]\n The user that php-fpm should run as\n\n[*fpm_group*]\n The group that php-fpm should run as\n\n[*dev*]\n Install php header files, needed to install pecl modules\n\n[*composer*]\n Install and auto-update composer\n\n[*pear*]\n Install PEAR\n\n[*phpunit*]\n Install phpunit\n\n[*apache_config*]\n Manage apache's mod_php configuration\n\n[*proxy_type*]\n proxy server type (none|http|https|ftp)\n\n[*proxy_server*]\n specify a proxy server, with port number if needed. ie: https://example.com:8080.\n\n[*extensions*]\n Install PHP extensions, this is overwritten by hiera hash `php::extensions`\n\n[*package_prefix*]\n This is the prefix for constructing names of php packages. This defaults\n to a sensible default depending on your operating system, like 'php-' or\n 'php5-'.\n\n[*config_root_ini*]\n This is the path to the config .ini files of the extensions. This defaults\n to a sensible default depending on your operating system, like\n '/etc/php5/mods-available' or '/etc/php5/conf.d'.\n\n[*config_root_inifile*]\n The path to the global php.ini file. This defaults to a sensible default\n depending on your operating system.\n\n[*ext_tool_enable*]\n Absolute path to php tool for enabling extensions in debian/ubuntu systems.\n This defaults to '/usr/sbin/php5enmod'.\n\n[*ext_tool_query*]\n Absolute path to php tool for querying information about extensions in\n debian/ubuntu systems. This defaults to '/usr/sbin/php5query'.\n\n[*ext_tool_enabled*]\n Enable or disable the use of php tools on debian based systems\n debian/ubuntu systems. This defaults to 'true'.\n\n[*log_owner*]\n The php-fpm log owner\n\n[*log_group*]\n The group owning php-fpm logs\n\n[*embedded*]\n Enable embedded SAPI\n\n[*pear_ensure*]\n The package ensure of PHP pear to install and run pear auto_discover\n\n[*settings*]\n\n#### Parameters\n\nThe following parameters are available in the `php` class.\n\n##### `ensure`\n\nData type: `String`\n\n\n\nDefault value: $php::params::ensure\n\n##### `manage_repos`\n\nData type: `Boolean`\n\n\n\nDefault value: $php::params::manage_repos\n\n##### `fpm`\n\nData type: `Boolean`\n\n\n\nDefault value: `true`\n\n##### `fpm_service_enable`\n\nData type: `Any`\n\n\n\nDefault value: $php::params::fpm_service_enable\n\n##### `fpm_service_ensure`\n\nData type: `Any`\n\n\n\nDefault value: $php::params::fpm_service_ensure\n\n##### `fpm_service_name`\n\nData type: `Any`\n\n\n\nDefault value: $php::params::fpm_service_name\n\n##### `fpm_service_provider`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `fpm_pools`\n\nData type: `Hash`\n\n\n\nDefault value: { 'www' => {} }\n\n##### `fpm_global_pool_settings`\n\nData type: `Hash`\n\n\n\nDefault value: {}\n\n##### `fpm_inifile`\n\nData type: `Any`\n\n\n\nDefault value: $php::params::fpm_inifile\n\n##### `fpm_package`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `fpm_user`\n\nData type: `Any`\n\n\n\nDefault value: $php::params::fpm_user\n\n##### `fpm_group`\n\nData type: `Any`\n\n\n\nDefault value: $php::params::fpm_group\n\n##### `embedded`\n\nData type: `Boolean`\n\n\n\nDefault value: `false`\n\n##### `dev`\n\nData type: `Boolean`\n\n\n\nDefault value: `true`\n\n##### `composer`\n\nData type: `Boolean`\n\n\n\nDefault value: `true`\n\n##### `pear`\n\nData type: `Boolean`\n\n\n\nDefault value: `true`\n\n##### `pear_ensure`\n\nData type: `String`\n\n\n\nDefault value: $php::params::pear_ensure\n\n##### `phpunit`\n\nData type: `Boolean`\n\n\n\nDefault value: `false`\n\n##### `apache_config`\n\nData type: `Boolean`\n\n\n\nDefault value: `false`\n\n##### `proxy_type`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `proxy_server`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `extensions`\n\nData type: `Hash`\n\n\n\nDefault value: {}\n\n##### `settings`\n\nData type: `Hash`\n\n\n\nDefault value: {}\n\n##### `package_prefix`\n\nData type: `Any`\n\n\n\nDefault value: $php::params::package_prefix\n\n##### `config_root_ini`\n\nData type: `Stdlib::Absolutepath`\n\n\n\nDefault value: $php::params::config_root_ini\n\n##### `config_root_inifile`\n\nData type: `Stdlib::Absolutepath`\n\n\n\nDefault value: $php::params::config_root_inifile\n\n##### `ext_tool_enable`\n\nData type: `Optional[Stdlib::Absolutepath]`\n\n\n\nDefault value: $php::params::ext_tool_enable\n\n##### `ext_tool_query`\n\nData type: `Optional[Stdlib::Absolutepath]`\n\n\n\nDefault value: $php::params::ext_tool_query\n\n##### `ext_tool_enabled`\n\nData type: `Boolean`\n\n\n\nDefault value: $php::params::ext_tool_enabled\n\n##### `log_owner`\n\nData type: `String`\n\n\n\nDefault value: $php::params::fpm_user\n\n##### `log_group`\n\nData type: `String`\n\n\n\nDefault value: $php::params::fpm_group\n\n### php::apache_config\n\nInstall and configure php apache settings\n\n=== Parameters\n\n[*inifile*]\n The path to the ini php-apache ini file\n\n[*settings*]\n Hash with nested hash of key => value to set in inifile\n\n#### Parameters\n\nThe following parameters are available in the `php::apache_config` class.\n\n##### `inifile`\n\nData type: `Stdlib::Absolutepath`\n\n\n\nDefault value: $php::params::apache_inifile\n\n##### `settings`\n\nData type: `Hash`\n\n\n\nDefault value: {}\n\n### php::cli\n\nInstall and configure php CLI\n\n=== Parameters\n\n[*inifile*]\n The path to the ini php5-cli ini file\n\n[*settings*]\n Hash with nested hash of key => value to set in inifile\n\n#### Parameters\n\nThe following parameters are available in the `php::cli` class.\n\n##### `inifile`\n\nData type: `Stdlib::Absolutepath`\n\n\n\nDefault value: $php::params::cli_inifile\n\n##### `settings`\n\nData type: `Hash`\n\n\n\nDefault value: {}\n\n### php::composer\n\nInstall composer package manager\n\n=== Parameters\n\n[*source*]\n Holds URL to the Composer source file\n\n[*path*]\n Holds path to the Composer executable\n\n[*proxy_type*]\n proxy server type (none|http|https|ftp)\n\n[*proxy_server*]\n specify a proxy server, with port number if needed. ie: https://example.com:8080.\n\n[*auto_update*]\n Defines if composer should be auto updated\n\n[*max_age*]\n Defines the time in days after which an auto-update gets executed\n\n[*root_group*]\n UNIX group of the root user\n\n#### Parameters\n\nThe following parameters are available in the `php::composer` class.\n\n##### `source`\n\nData type: `String`\n\n\n\nDefault value: $php::params::composer_source\n\n##### `path`\n\nData type: `Stdlib::Absolutepath`\n\n\n\nDefault value: $php::params::composer_path\n\n##### `proxy_type`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `proxy_server`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `auto_update`\n\nData type: `Boolean`\n\n\n\nDefault value: `true`\n\n##### `max_age`\n\nData type: `Integer`\n\n\n\nDefault value: $php::params::composer_max_age\n\n##### `root_group`\n\nData type: `Variant[Integer, String]`\n\n\n\nDefault value: $php::params::root_group\n\n### php::composer::auto_update\n\nInstall composer package manager\n\n=== Parameters\n\n[*max_age*]\n Defines number of days after which Composer should be updated\n\n[*source*]\n Holds URL to the Composer source file\n\n[*path*]\n Holds path to the Composer executable\n\n[*proxy_type*]\n proxy server type (none|http|https|ftp)\n\n[*proxy_server*]\n specify a proxy server, with port number if needed. ie: https://example.com:8080.\n\n\n=== Examples\n\n include php::composer::auto_update\n class { \"php::composer::auto_update\":\n \"max_age\" => 90\n }\n\n#### Parameters\n\nThe following parameters are available in the `php::composer::auto_update` class.\n\n##### `max_age`\n\nData type: `Any`\n\n\n\n##### `source`\n\nData type: `Any`\n\n\n\n##### `path`\n\nData type: `Any`\n\n\n\n##### `proxy_type`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `proxy_server`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n### php::dev\n\nInstall the development package with headers for PHP\n\n=== Parameters\n\n[*ensure*]\n The PHP ensure of PHP dev to install\n\n[*package*]\n The package name for the PHP development files\n\n#### Parameters\n\nThe following parameters are available in the `php::dev` class.\n\n##### `ensure`\n\nData type: `String`\n\n\n\nDefault value: $php::ensure\n\n##### `package`\n\nData type: `String`\n\n\n\nDefault value: \"${php::package_prefix}${php::params::dev_package_suffix}\"\n\n##### `manage_repos`\n\nData type: `Boolean`\n\n\n\nDefault value: $php::manage_repos\n\n### php::embedded\n\nInstall and configure php embedded SAPI\n\n=== Parameters\n\n[*inifile*]\n The path to the ini php5-embeded ini file\n\n[*settings*]\n Hash with nested hash of key => value to set in inifile\n\n[*package*]\n Specify which package to install\n\n[*ensure*]\n Specify which version of the package to install\n\n#### Parameters\n\nThe following parameters are available in the `php::embedded` class.\n\n##### `ensure`\n\nData type: `String`\n\n\n\nDefault value: $php::ensure\n\n##### `package`\n\nData type: `String`\n\n\n\nDefault value: \"${php::package_prefix}${php::params::embedded_package_suffix}\"\n\n##### `inifile`\n\nData type: `Stdlib::Absolutepath`\n\n\n\nDefault value: $php::params::embedded_inifile\n\n##### `settings`\n\nData type: `Hash`\n\n\n\nDefault value: {}\n\n### php::fpm\n\nInstall and configure mod_php for fpm\n\n=== Parameters\n\n[*user*]\n The user that php-fpm should run as\n\n[*group*]\n The group that php-fpm should run as\n\n[*service_enable*]\n Enable/disable FPM service\n\n[*service_ensure*]\n Ensure FPM service is either 'running' or 'stopped'\n\n[*service_name*]\n This is the name of the php-fpm service. It defaults to reasonable OS\n defaults but can be different in case of using php7.0/other OS/custom fpm service\n\n[*service_provider*]\n This is the name of the service provider, in case there is a non\n OS default service provider used to start FPM.\n Defaults to 'undef', pick system defaults.\n\n[*pools*]\n Hash of php::fpm::pool resources that will be created. Defaults\n to a single php::fpm::pool named www with default parameters.\n\n[*log_owner*]\n The php-fpm log owner\n\n[*log_group*]\n The group owning php-fpm logs\n\n[*package*]\n Specify which package to install\n\n[*ensure*]\n Specify which version of the package to install\n\n[*inifile*]\n Path to php.ini for fpm\n\n[*settings*]\n fpm settings hash\n\n[*global_pool_settings*]\n Hash of defaults params php::fpm::pool resources that will be created.\n Defaults is empty hash.\n\n#### Parameters\n\nThe following parameters are available in the `php::fpm` class.\n\n##### `ensure`\n\nData type: `String`\n\n\n\nDefault value: $php::ensure\n\n##### `user`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm_user\n\n##### `group`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm_group\n\n##### `service_ensure`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm_service_ensure\n\n##### `service_enable`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm_service_enable\n\n##### `service_name`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm_service_name\n\n##### `service_provider`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm_service_provider\n\n##### `package`\n\nData type: `String`\n\n\n\nDefault value: $php::real_fpm_package\n\n##### `inifile`\n\nData type: `Stdlib::Absolutepath`\n\n\n\nDefault value: $php::fpm_inifile\n\n##### `settings`\n\nData type: `Hash`\n\n\n\nDefault value: $php::real_settings\n\n##### `global_pool_settings`\n\nData type: `Any`\n\n\n\nDefault value: $php::real_fpm_global_pool_settings\n\n##### `pools`\n\nData type: `Hash`\n\n\n\nDefault value: $php::real_fpm_pools\n\n##### `log_owner`\n\nData type: `Any`\n\n\n\nDefault value: $php::log_owner\n\n##### `log_group`\n\nData type: `Any`\n\n\n\nDefault value: $php::log_group\n\n### php::fpm::config\n\nConfigure php-fpm service\n\n=== Parameters\n\n[*config_file*]\n The path to the fpm config file\n\n[*user*]\n The user that runs php-fpm\n\n[*group*]\n The group that runs php-fpm\n\n[*inifile*]\n The path to ini file\n\n[*settings*]\n Nested hash of key => value to apply to php.ini\n\n[*pool_base_dir*]\n The folder that contains the php-fpm pool configs\n\n[*pool_purge*]\n Whether to purge pool config files not created\n by this module\n\n[*error_log*]\n Path to error log file. If it's set to \"syslog\", log is\n sent to syslogd instead of being written in a local file.\n\n[*log_level*]\n The php-fpm log level\n\n[*emergency_restart_threshold*]\n The php-fpm emergency_restart_threshold\n\n[*emergency_restart_interval*]\n The php-fpm emergency_restart_interval\n\n[*process_control_timeout*]\n The php-fpm process_control_timeout\n\n[*process_max*]\n The maximum number of processes FPM will fork.\n\n[*rlimit_files*]\n Set open file descriptor rlimit for the master process.\n\n[*systemd_interval*]\n The interval between health report notification to systemd\n\n[*log_owner*]\n The php-fpm log owner\n\n[*log_group*]\n The group owning php-fpm logs\n\n[*log_dir_mode*]\n The octal mode of the directory\n\n[*syslog_facility*]\n Used to specify what type of program is logging the message\n\n[*syslog_ident*]\n Prepended to every message\n\n[*root_group*]\n UNIX group of the root user\n\n[*pid_file*]\n Path to fpm pid file\n\n#### Parameters\n\nThe following parameters are available in the `php::fpm::config` class.\n\n##### `config_file`\n\nData type: `Any`\n\n\n\nDefault value: $php::params::fpm_config_file\n\n##### `user`\n\nData type: `String`\n\n\n\nDefault value: $php::params::fpm_user\n\n##### `group`\n\nData type: `String`\n\n\n\nDefault value: $php::params::fpm_group\n\n##### `inifile`\n\nData type: `String`\n\n\n\nDefault value: $php::params::fpm_inifile\n\n##### `pid_file`\n\nData type: `Any`\n\n\n\nDefault value: $php::params::fpm_pid_file\n\n##### `settings`\n\nData type: `Hash`\n\n\n\nDefault value: {}\n\n##### `pool_base_dir`\n\nData type: `Stdlib::Absolutepath`\n\n\n\nDefault value: $php::params::fpm_pool_dir\n\n##### `pool_purge`\n\nData type: `Any`\n\n\n\nDefault value: `false`\n\n##### `error_log`\n\nData type: `String`\n\n\n\nDefault value: $php::params::fpm_error_log\n\n##### `log_level`\n\nData type: `String`\n\n\n\nDefault value: 'notice'\n\n##### `emergency_restart_threshold`\n\nData type: `Integer`\n\n\n\nDefault value: 0\n\n##### `emergency_restart_interval`\n\nData type: `Variant[Integer, Pattern[/^\\d+[smhd]?$/]]`\n\n\n\nDefault value: 0\n\n##### `process_control_timeout`\n\nData type: `Variant[Integer, Pattern[/^\\d+[smhd]?$/]]`\n\n\n\nDefault value: 0\n\n##### `process_max`\n\nData type: `Integer`\n\n\n\nDefault value: 0\n\n##### `rlimit_files`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `systemd_interval`\n\nData type: `Optional[Variant[Integer,Pattern[/^\\d+[smhd]?$/]]]`\n\n\n\nDefault value: `undef`\n\n##### `log_owner`\n\nData type: `String`\n\n\n\nDefault value: $php::params::fpm_user\n\n##### `log_group`\n\nData type: `String`\n\n\n\nDefault value: $php::params::fpm_group\n\n##### `log_dir_mode`\n\nData type: `Pattern[/^\\d+$/]`\n\n\n\nDefault value: '0770'\n\n##### `root_group`\n\nData type: `Any`\n\n\n\nDefault value: $php::params::root_group\n\n##### `syslog_facility`\n\nData type: `String`\n\n\n\nDefault value: 'daemon'\n\n##### `syslog_ident`\n\nData type: `String`\n\n\n\nDefault value: 'php-fpm'\n\n### php::fpm::service\n\nManage fpm service\n\n=== Parameters\n\n[*service_name*]\n name of the php-fpm service\n\n[*ensure*]\n 'ensure' value for the service\n\n[*enable*]\n Defines if the service is enabled\n\n[*provider*]\n Defines if the service provider to use\n\n#### Parameters\n\nThe following parameters are available in the `php::fpm::service` class.\n\n##### `service_name`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm::service_name\n\n##### `ensure`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm::service_ensure\n\n##### `enable`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm::service_enable\n\n##### `provider`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm::service_provider\n\n### php::global\n\nThe php::global class.\n\n#### Parameters\n\nThe following parameters are available in the `php::global` class.\n\n##### `inifile`\n\nData type: `Stdlib::Absolutepath`\n\n\n\nDefault value: $php::config_root_inifile\n\n##### `settings`\n\nData type: `Hash`\n\n\n\nDefault value: {}\n\n### php::globals\n\nThe php::globals class.\n\n#### Parameters\n\nThe following parameters are available in the `php::globals` class.\n\n##### `php_version`\n\nData type: `Optional[Pattern[/^(rh-)?(php)?[57](\\.)?[0-9]/]]`\n\n\n\nDefault value: `undef`\n\n##### `config_root`\n\nData type: `Optional[Stdlib::Absolutepath]`\n\n\n\nDefault value: `undef`\n\n##### `fpm_pid_file`\n\nData type: `Optional[Stdlib::Absolutepath]`\n\n\n\nDefault value: `undef`\n\n##### `rhscl_mode`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n### php::packages\n\nInstall common PHP packages\n\n=== Parameters\n\n[*ensure*]\n Specify which version of PHP packages to install\n\n[*names*]\n List of the names of the package to install\n\n[*names_to_prefix*]\n List of packages names that should be prefixed with the common\n package prefix `$php::package_prefix`\n\n#### Parameters\n\nThe following parameters are available in the `php::packages` class.\n\n##### `ensure`\n\nData type: `String`\n\n\n\nDefault value: $php::ensure\n\n##### `manage_repos`\n\nData type: `Boolean`\n\n\n\nDefault value: $php::manage_repos\n\n##### `names_to_prefix`\n\nData type: `Array`\n\n\n\nDefault value: prefix($php::params::common_package_suffixes, $php::package_prefix)\n\n##### `names`\n\nData type: `Array`\n\n\n\nDefault value: $php::params::common_package_names\n\n### php::params\n\nPHP params class\n\n### php::pear\n\nInstall PEAR package manager\n\n=== Parameters\n\n[*ensure*]\n The package ensure of PHP pear to install and run pear auto_discover\n\n[*package*]\n The package name for PHP pear\n\n#### Parameters\n\nThe following parameters are available in the `php::pear` class.\n\n##### `ensure`\n\nData type: `String`\n\n\n\nDefault value: $php::pear_ensure\n\n##### `package`\n\nData type: `Optional[String]`\n\n\n\nDefault value: `undef`\n\n##### `manage_repos`\n\nData type: `Boolean`\n\n\n\nDefault value: $php::manage_repos\n\n### php::phpunit\n\nInstall phpunit, PHP testing framework\n\n=== Parameters\n\n[*source*]\n Holds URL to the phpunit source file\n\n[*path*]\n Holds path to the phpunit executable\n\n[*auto_update*]\n Defines if phpunit should be auto updated\n\n[*max_age*]\n Defines the time in days after which an auto-update gets executed\n\n#### Parameters\n\nThe following parameters are available in the `php::phpunit` class.\n\n##### `source`\n\nData type: `String`\n\n\n\nDefault value: $php::params::phpunit_source\n\n##### `path`\n\nData type: `Stdlib::Absolutepath`\n\n\n\nDefault value: $php::params::phpunit_path\n\n##### `root_group`\n\nData type: `String[1]`\n\n\n\nDefault value: $php::params::root_group\n\n##### `auto_update`\n\nData type: `Boolean`\n\n\n\nDefault value: `true`\n\n##### `max_age`\n\nData type: `Integer`\n\n\n\nDefault value: $php::params::phpunit_max_age\n\n### php::phpunit::auto_update\n\nInstall phpunit package manager\n\n=== Parameters\n\n[*max_age*]\n Defines number of days after which phpunit should be updated\n\n[*source*]\n Holds URL to the phpunit source file\n\n[*path*]\n Holds path to the phpunit executable\n\n#### Parameters\n\nThe following parameters are available in the `php::phpunit::auto_update` class.\n\n##### `max_age`\n\nData type: `Any`\n\n\n\n##### `source`\n\nData type: `Any`\n\n\n\n##### `path`\n\nData type: `Any`\n\n\n\n### php::repo\n\nConfigure package repository\n\n### php::repo::debian\n\nConfigure debian apt repo\n\n=== Parameters\n\n[*location*]\n Location of the apt repository\n\n[*release*]\n Release of the apt repository\n\n[*repos*]\n Apt repository names\n\n[*include_src*]\n Add source source repository\n\n[*key*]\n Public key in apt::key format\n\n[*dotdeb*]\n Enable special dotdeb handling\n\n[*sury*]\n Enable special sury handling\n\n#### Parameters\n\nThe following parameters are available in the `php::repo::debian` class.\n\n##### `location`\n\nData type: `Any`\n\n\n\nDefault value: 'https://packages.dotdeb.org'\n\n##### `release`\n\nData type: `Any`\n\n\n\nDefault value: 'wheezy-php56'\n\n##### `repos`\n\nData type: `Any`\n\n\n\nDefault value: 'all'\n\n##### `include_src`\n\nData type: `Any`\n\n\n\nDefault value: `false`\n\n##### `key`\n\nData type: `Any`\n\n\n\nDefault value: {\n 'id' => '6572BBEF1B5FF28B28B706837E3F070089DF5277',\n 'source' => 'http://www.dotdeb.org/dotdeb.gpg',\n }\n\n##### `dotdeb`\n\nData type: `Any`\n\n\n\nDefault value: `true`\n\n##### `sury`\n\nData type: `Any`\n\n\n\nDefault value: `true`\n\n### php::repo::redhat\n\nThe php::repo::redhat class.\n\n#### Parameters\n\nThe following parameters are available in the `php::repo::redhat` class.\n\n##### `yum_repo`\n\nData type: `Any`\n\n\n\nDefault value: 'remi_php56'\n\n### php::repo::suse\n\nConfigure suse repo\n\n=== Parameters\n\n[*reponame*]\n Name of the Zypper repository\n\n[*baseurl*]\n Base URL of the Zypper repository\n\n#### Parameters\n\nThe following parameters are available in the `php::repo::suse` class.\n\n##### `reponame`\n\nData type: `Any`\n\n\n\nDefault value: 'mayflower-php56'\n\n##### `baseurl`\n\nData type: `Any`\n\n\n\nDefault value: 'http://download.opensuse.org/repositories/home:/mayflower:/php5.6_based/SLE_11_SP3/'\n\n### php::repo::ubuntu\n\nConfigure ubuntu ppa\n\n=== Parameters\n\n[*version*]\n PHP version to manage (e.g. 5.6)\n\n#### Parameters\n\nThe following parameters are available in the `php::repo::ubuntu` class.\n\n##### `version`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n## Defined types\n\n### php::apache_vhost\n\nConfigures an apache vhost for php\n\n=== Parameters\n\n[*vhost*]\n The vhost address\n\n[*docroot*]\n The vhost docroot\n\n[*port*]\n The vhost port\n\n[*default_vhost*]\n defines if vhost is the default vhost\n\n[*fastcgi_socket*]\n address of the fastcgi socket\n\n#### Parameters\n\nThe following parameters are available in the `php::apache_vhost` defined type.\n\n##### `vhost`\n\nData type: `Any`\n\n\n\nDefault value: 'example.com'\n\n##### `docroot`\n\nData type: `Any`\n\n\n\nDefault value: '/var/www'\n\n##### `port`\n\nData type: `Any`\n\n\n\nDefault value: 80\n\n##### `default_vhost`\n\nData type: `Any`\n\n\n\nDefault value: `true`\n\n##### `fastcgi_socket`\n\nData type: `Any`\n\n\n\nDefault value: 'fcgi://127.0.0.1:9000/$1'\n\n### php::config\n\nConfigure php.ini settings for a PHP SAPI\n\n=== Parameters\n\n[*file*]\n The path to ini file\n\n[*config*]\n Nested hash of key => value to apply to php.ini\n\n=== Examples\n\n php::config { '$unique-name':\n file => '$full_path_to_ini_file'\n config => {\n {'Date/date.timezone' => 'Europe/Berlin'}\n }\n }\n\n#### Parameters\n\nThe following parameters are available in the `php::config` defined type.\n\n##### `file`\n\nData type: `Stdlib::Absolutepath`\n\n\n\n##### `config`\n\nData type: `Hash`\n\n\n\n### php::config::setting\n\nConfigure php.ini settings\n\n=== Parameters\n\n[*key*]\n The key of the value, like `ini_setting`\n\n[*file*]\n The path to ini file\n\n[*value*]\n The value to set\n\n=== Examples\n\n php::config::setting { 'Date/date.timezone':\n file => '$full_path_to_ini_file'\n value => 'Europe/Berlin'\n }\n\n#### Parameters\n\nThe following parameters are available in the `php::config::setting` defined type.\n\n##### `key`\n\nData type: `Any`\n\n\n\n##### `value`\n\nData type: `Any`\n\n\n\n##### `file`\n\nData type: `Stdlib::Absolutepath`\n\n\n\n### php::extension\n\nInstall a PHP extension package\n\n=== Parameters\n\n[*ensure*]\n The ensure of the package to install\n Could be \"latest\", \"installed\" or a pinned version\n\n[*package_prefix*]\n Prefix to prepend to the package name for the package provider\n\n[*provider*]\n The provider used to install the package\n Could be \"pecl\", \"apt\", \"dpkg\" or any other OS package provider\n If set to \"none\", no package will be installed\n\n[*source*]\n The source to install the extension from. Possible values\n depend on the *provider* used\n\n[*so_name*]\n The DSO name of the package (e.g. opcache for zendopcache)\n\n[*ini_prefix*]\n An optional filename prefix for the settings file of the extension\n\n[*php_api_version*]\n This parameter is used to build the full path to the extension\n directory for zend_extension in PHP < 5.5 (e.g. 20100525)\n\n[*header_packages*]\n System packages dependencies to install for extensions (e.g. for\n memcached libmemcached-dev on Debian)\n\n[*compiler_packages*]\n System packages dependencies to install for compiling extensions\n (e.g. build-essential on Debian)\n\n[*zend*]\n Boolean parameter, whether to load extension as zend_extension.\n Defaults to false.\n\n[*settings*]\n Hash of parameters for the specific extension, which will be written to the extensions config file by\n php::extension::config or a hash of mutliple settings files, each with parameters\n (multifile_settings must be true)\n (f.ex. {p => '..'} or {'bz2' => {..}, {'math' => {...}})\n\n[*multifile_settings*]\n Set this to true if you specify multiple setting files in *settings*. This must be used when the PHP package\n distribution bundles extensions in a single package (like 'common' bundles extensions 'bz2', ...) and each of\n the extension comes with a separate settings file.\n\n[*settings_prefix*]\n Boolean/String parameter, whether to prefix all setting keys with\n the extension name or specified name. Defaults to false.\n\n[*sapi*]\n String parameter, whether to specify ALL sapi or a specific sapi.\n Defaults to ALL.\n\n[*responsefile*]\n File containing answers for interactive extension setup. Supported\n *providers*: pear, pecl.\n\n[*install_options*]\n Array of String or Hash options to pass to the provider.\n\n#### Parameters\n\nThe following parameters are available in the `php::extension` defined type.\n\n##### `ensure`\n\nData type: `String`\n\n\n\nDefault value: 'installed'\n\n##### `provider`\n\nData type: `Optional[Php::Provider]`\n\n\n\nDefault value: `undef`\n\n##### `source`\n\nData type: `Optional[String]`\n\n\n\nDefault value: `undef`\n\n##### `so_name`\n\nData type: `Optional[String]`\n\n\n\nDefault value: `undef`\n\n##### `ini_prefix`\n\nData type: `Optional[String]`\n\n\n\nDefault value: `undef`\n\n##### `php_api_version`\n\nData type: `Optional[String]`\n\n\n\nDefault value: `undef`\n\n##### `package_prefix`\n\nData type: `String`\n\n\n\nDefault value: $php::package_prefix\n\n##### `zend`\n\nData type: `Boolean`\n\n\n\nDefault value: `false`\n\n##### `settings`\n\nData type: `Variant[Hash, Hash[String, Hash]]`\n\n\n\nDefault value: {}\n\n##### `multifile_settings`\n\nData type: `Boolean`\n\n\n\nDefault value: `false`\n\n##### `sapi`\n\nData type: `Php::Sapi`\n\n\n\nDefault value: 'ALL'\n\n##### `settings_prefix`\n\nData type: `Variant[Boolean, String]`\n\n\n\nDefault value: `false`\n\n##### `responsefile`\n\nData type: `Optional[Stdlib::AbsolutePath]`\n\n\n\nDefault value: `undef`\n\n##### `header_packages`\n\nData type: `Variant[String, Array[String]]`\n\n\n\nDefault value: []\n\n##### `compiler_packages`\n\nData type: `Variant[String, Array[String]]`\n\n\n\nDefault value: $php::params::compiler_packages\n\n##### `install_options`\n\nData type: `Php::InstallOptions`\n\n\n\nDefault value: `undef`\n\n### php::extension::config\n\nConfigure a PHP extension package\n\n=== Parameters\n\n[*ensure*]\n The ensure of the package to install\n Could be \"latest\", \"installed\" or a pinned version\n\n[*provider*]\n The provider used to install the package\n Could be \"pecl\", \"apt\", \"dpkg\" or any other OS package provider\n If set to \"none\", no package will be installed\n\n[*so_name*]\n The DSO name of the package (e.g. opcache for zendopcache)\n\n[*ini_prefix*]\n An optional filename prefix for the settings file of the extension\n\n[*php_api_version*]\n This parameter is used to build the full path to the extension\n directory for zend_extension in PHP < 5.5 (e.g. 20100525)\n\n[*header_packages*]\n System packages dependencies to install for extensions (e.g. for\n memcached libmemcached-dev on Debian)\n\n[*compiler_packages*]\n System packages dependencies to install for compiling extensions\n (e.g. build-essential on Debian)\n\n[*zend*]\n Boolean parameter, whether to load extension as zend_extension.\n Defaults to false.\n\n[*settings*]\n Nested hash of global config parameters for php.ini\n\n[*settings_prefix*]\n Boolean/String parameter, whether to prefix all setting keys with\n the extension name or specified name. Defaults to false.\n\n[*sapi*]\n String parameter, whether to specify ALL sapi or a specific sapi.\n Defaults to ALL.\n\n#### Parameters\n\nThe following parameters are available in the `php::extension::config` defined type.\n\n##### `ensure`\n\nData type: `String`\n\n\n\nDefault value: 'installed'\n\n##### `provider`\n\nData type: `Optional[Php::Provider]`\n\n\n\nDefault value: `undef`\n\n##### `so_name`\n\nData type: `Optional[String]`\n\n\n\nDefault value: downcase($name)\n\n##### `ini_prefix`\n\nData type: `Optional[String]`\n\n\n\nDefault value: `undef`\n\n##### `php_api_version`\n\nData type: `Optional[String]`\n\n\n\nDefault value: `undef`\n\n##### `zend`\n\nData type: `Boolean`\n\n\n\nDefault value: `false`\n\n##### `settings`\n\nData type: `Hash`\n\n\n\nDefault value: {}\n\n##### `settings_prefix`\n\nData type: `Variant[Boolean, String]`\n\n\n\nDefault value: `false`\n\n##### `sapi`\n\nData type: `Php::Sapi`\n\n\n\nDefault value: 'ALL'\n\n### php::extension::install\n\nInstall a PHP extension package\n\n=== Parameters\n\n[*ensure*]\n The ensure of the package to install\n Could be \"latest\", \"installed\" or a pinned version\n\n[*package_prefix*]\n Prefix to prepend to the package name for the package provider\n\n[*provider*]\n The provider used to install the package\n Could be \"pecl\", \"apt\", \"dpkg\" or any other OS package provider\n If set to \"none\", no package will be installed\n\n[*source*]\n The source to install the extension from. Possible values\n depend on the *provider* used\n\n[*header_packages*]\n System packages dependencies to install for extensions (e.g. for\n memcached libmemcached-dev on Debian)\n\n[*compiler_packages*]\n System packages dependencies to install for compiling extensions\n (e.g. build-essential on Debian)\n\n[*responsefile*]\n File containing answers for interactive extension setup. Supported\n *providers*: pear, pecl.\n\n[*install_options*]\n Array of String or Hash options to pass to the provider.\n\n#### Parameters\n\nThe following parameters are available in the `php::extension::install` defined type.\n\n##### `ensure`\n\nData type: `String`\n\n\n\nDefault value: 'installed'\n\n##### `provider`\n\nData type: `Optional[Php::Provider]`\n\n\n\nDefault value: `undef`\n\n##### `source`\n\nData type: `Optional[String]`\n\n\n\nDefault value: `undef`\n\n##### `package_prefix`\n\nData type: `String`\n\n\n\nDefault value: $php::package_prefix\n\n##### `responsefile`\n\nData type: `Optional[Stdlib::AbsolutePath]`\n\n\n\nDefault value: `undef`\n\n##### `header_packages`\n\nData type: `Variant[String, Array[String]]`\n\n\n\nDefault value: []\n\n##### `compiler_packages`\n\nData type: `Variant[String, Array[String]]`\n\n\n\nDefault value: $php::params::compiler_packages\n\n##### `install_options`\n\nData type: `Php::InstallOptions`\n\n\n\nDefault value: `undef`\n\n### php::fpm::pool\n\nConfigure fpm pools\n\n=== Parameters\n\nSee the official php-fpm documentation for parameters that are not\ndocumented here: http://php.net/manual/en/install.fpm.configuration.php.\n\n[*ensure*]\n Remove pool if set to `'absent'`, add otherwise\n\n[*listen*]\n On what socket to listen for FastCGI connections, i.e.\n `'127.0.0.1:9000'' or `'/var/run/php5-fpm.sock'`\n\n[*listen_backlog*]\n\n[*listen_allowed_clients*]\n\n[*listen_owner*]\n Set owner of the Unix socket\n\n[*listen_group*]\n Set the group of the Unix socket\n\n[*listen_mode*]\n\n[*user*]\n The user that php-fpm should run as\n\n[*group*]\n The group that php-fpm should run as\n\n[*pm*]\n\n[*pm_max_children*]\n\n[*pm_start_servers*]\n\n[*pm_min_spare_servers*]\n\n[*pm_max_spare_servers*]\n\n[*pm_max_requests*]\n\n[*pm_process_idle_timeout*]\n\n[*pm_status_path*]\n\n[*ping_path*]\n\n[*ping_response*]\n\n[*access_log*]\n The path to the file to write access log requests to\n\n[*access_log_format*]\n The format to save the access log entries as\n\n[*request_terminate_timeout*]\n\n[*request_slowlog_timeout*]\n\n[*security_limit_extensions*]\n\n[*slowlog*]\n\n[*template*]\n The template to use for the pool\n\n[*rlimit_files*]\n\n[*rlimit_core*]\n\n[*chroot*]\n\n[*chdir*]\n\n[*catch_workers_output*]\n\n[*include*]\n Other configuration files to include on this pool\n\n[*env*]\n List of environment variables that are passed to the php-fpm from the\n outside and will be available to php scripts in this pool\n\n[*env_value*]\n Hash of environment variables and values as strings to use in php\n scripts in this pool\n\n[*options*]\n An optional hash for any other data.\n\n[*php_value*]\n Hash of php_value directives\n\n[*php_flag*]\n Hash of php_flag directives\n\n[*php_admin_value*]\n Hash of php_admin_value directives\n\n[*php_admin_flag*]\n Hash of php_admin_flag directives\n\n[*php_directives*]\n List of custom directives that are appended to the pool config\n\n[*root_group*]\n UNIX group of the root user\n\n[*base_dir*]\n The folder that contains the php-fpm pool configs. This defaults to a\n sensible default depending on your operating system, like\n '/etc/php5/fpm/pool.d' or '/etc/php-fpm.d'\n\n#### Parameters\n\nThe following parameters are available in the `php::fpm::pool` defined type.\n\n##### `ensure`\n\nData type: `Any`\n\n\n\nDefault value: 'present'\n\n##### `listen`\n\nData type: `Any`\n\n\n\nDefault value: '127.0.0.1:9000'\n\n##### `listen_backlog`\n\nData type: `Any`\n\n\n\nDefault value: '-1'\n\n##### `listen_allowed_clients`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `listen_owner`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `listen_group`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `listen_mode`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `user`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm::config::user\n\n##### `group`\n\nData type: `Any`\n\n\n\nDefault value: $php::fpm::config::group\n\n##### `pm`\n\nData type: `Any`\n\n\n\nDefault value: 'dynamic'\n\n##### `pm_max_children`\n\nData type: `Any`\n\n\n\nDefault value: '50'\n\n##### `pm_start_servers`\n\nData type: `Any`\n\n\n\nDefault value: '5'\n\n##### `pm_min_spare_servers`\n\nData type: `Any`\n\n\n\nDefault value: '5'\n\n##### `pm_max_spare_servers`\n\nData type: `Any`\n\n\n\nDefault value: '35'\n\n##### `pm_max_requests`\n\nData type: `Any`\n\n\n\nDefault value: '0'\n\n##### `pm_process_idle_timeout`\n\nData type: `Any`\n\n\n\nDefault value: '10s'\n\n##### `pm_status_path`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `ping_path`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `ping_response`\n\nData type: `Any`\n\n\n\nDefault value: 'pong'\n\n##### `access_log`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `access_log_format`\n\nData type: `Any`\n\n\n\nDefault value: '\"%R - %u %t \\\"%m %r\\\" %s\"'\n\n##### `request_terminate_timeout`\n\nData type: `Any`\n\n\n\nDefault value: '0'\n\n##### `request_slowlog_timeout`\n\nData type: `Any`\n\n\n\nDefault value: '0'\n\n##### `security_limit_extensions`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `slowlog`\n\nData type: `Any`\n\n\n\nDefault value: \"/var/log/php-fpm/${name}-slow.log\"\n\n##### `template`\n\nData type: `Any`\n\n\n\nDefault value: 'php/fpm/pool.conf.erb'\n\n##### `rlimit_files`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `rlimit_core`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `chroot`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `chdir`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `catch_workers_output`\n\nData type: `Any`\n\n\n\nDefault value: 'no'\n\n##### `include`\n\nData type: `Any`\n\n\n\nDefault value: `undef`\n\n##### `env`\n\nData type: `Any`\n\n\n\nDefault value: []\n\n##### `env_value`\n\nData type: `Any`\n\n\n\nDefault value: {}\n\n##### `options`\n\nData type: `Any`\n\n\n\nDefault value: {}\n\n##### `php_value`\n\nData type: `Any`\n\n\n\nDefault value: {}\n\n##### `php_flag`\n\nData type: `Any`\n\n\n\nDefault value: {}\n\n##### `php_admin_value`\n\nData type: `Any`\n\n\n\nDefault value: {}\n\n##### `php_admin_flag`\n\nData type: `Any`\n\n\n\nDefault value: {}\n\n##### `php_directives`\n\nData type: `Any`\n\n\n\nDefault value: []\n\n##### `root_group`\n\nData type: `Any`\n\n\n\nDefault value: $php::params::root_group\n\n##### `base_dir`\n\nData type: `Optional[Stdlib::Absolutepath]`\n\n\n\nDefault value: `undef`\n\n## Functions\n\n### ensure_prefix\n\nType: Ruby 3.x API\n\nThis function ensures a prefix for all elements in an array or the keys in a hash.\n\n*Examples:*\n\n ensure_prefix({'a' => 1, 'b' => 2, 'p.c' => 3}, 'p.')\n\nWill return:\n {\n 'p.a' => 1,\n 'p.b' => 2,\n 'p.c' => 3,\n }\n\n ensure_prefix(['a', 'p.b', 'c'], 'p.')\n\nWill return:\n ['p.a', 'p.b', 'p.c']\n\n#### `ensure_prefix()`\n\nThis function ensures a prefix for all elements in an array or the keys in a hash.\n\n*Examples:*\n\n ensure_prefix({'a' => 1, 'b' => 2, 'p.c' => 3}, 'p.')\n\nWill return:\n {\n 'p.a' => 1,\n 'p.b' => 2,\n 'p.c' => 3,\n }\n\n ensure_prefix(['a', 'p.b', 'c'], 'p.')\n\nWill return:\n ['p.a', 'p.b', 'p.c']\n\nReturns: `Any`\n\n### to_hash_settings\n\nType: Ruby 3.x API\n\nThis function converts a +{key => value}+ hash into a nested hash and can add an id to the outer key.\nThe optional id string as second parameter is prepended to the resource name.\n\n*Examples:*\n\n to_hash_settings({'a' => 1, 'b' => 2})\n\nWould return:\n {\n 'a' => {'key' => 'a', 'value' => 1},\n 'b' => {'key' => 'b', 'value' => 2}\n }\n\nand:\n\n to_hash_settings({'a' => 1, 'b' => 2}, 'foo')\n\nWould return:\n {\n 'foo: a' => {'key' => 'a', 'value' => 1},\n 'foo: b' => {'key' => 'b', 'value' => 2}\n }\n\n#### `to_hash_settings()`\n\nThis function converts a +{key => value}+ hash into a nested hash and can add an id to the outer key.\nThe optional id string as second parameter is prepended to the resource name.\n\n*Examples:*\n\n to_hash_settings({'a' => 1, 'b' => 2})\n\nWould return:\n {\n 'a' => {'key' => 'a', 'value' => 1},\n 'b' => {'key' => 'b', 'value' => 2}\n }\n\nand:\n\n to_hash_settings({'a' => 1, 'b' => 2}, 'foo')\n\nWould return:\n {\n 'foo: a' => {'key' => 'a', 'value' => 1},\n 'foo: b' => {'key' => 'b', 'value' => 2}\n }\n\nReturns: `Any`\n\n", + "tasks": [ + + ], + "created_at": "2018-10-14 05:41:09 -0700", + "updated_at": "2018-10-14 05:41:09 -0700", + "deleted_at": null, + "deleted_for": null + }, + "releases": [ + { + "uri": "/v3/releases/puppet-php-6.0.2", + "slug": "puppet-php-6.0.2", + "version": "6.0.2", + "supported": false, + "created_at": "2018-10-14 05:41:09 -0700", + "deleted_at": null, + "file_uri": "/v3/files/puppet-php-6.0.2.tar.gz", + "file_size": 57763 + }, + { + "uri": "/v3/releases/puppet-php-6.0.1", + "slug": "puppet-php-6.0.1", + "version": "6.0.1", + "supported": false, + "created_at": "2018-10-06 17:04:15 -0700", + "deleted_at": null, + "file_uri": "/v3/files/puppet-php-6.0.1.tar.gz", + "file_size": 57742 + }, + { + "uri": "/v3/releases/puppet-php-6.0.0", + "slug": "puppet-php-6.0.0", + "version": "6.0.0", + "supported": false, + "created_at": "2018-07-29 11:43:59 -0700", + "deleted_at": null, + "file_uri": "/v3/files/puppet-php-6.0.0.tar.gz", + "file_size": 49940 + }, + { + "uri": "/v3/releases/puppet-php-5.3.0", + "slug": "puppet-php-5.3.0", + "version": "5.3.0", + "supported": false, + "created_at": "2018-03-06 10:03:18 -0800", + "deleted_at": null, + "file_uri": "/v3/files/puppet-php-5.3.0.tar.gz", + "file_size": 47684 + }, + { + "uri": "/v3/releases/puppet-php-5.2.0", + "slug": "puppet-php-5.2.0", + "version": "5.2.0", + "supported": false, + "created_at": "2018-02-14 12:35:13 -0800", + "deleted_at": null, + "file_uri": "/v3/files/puppet-php-5.2.0.tar.gz", + "file_size": 45990 + }, + { + "uri": "/v3/releases/puppet-php-5.1.0", + "slug": "puppet-php-5.1.0", + "version": "5.1.0", + "supported": false, + "created_at": "2017-11-10 15:20:57 -0800", + "deleted_at": null, + "file_uri": "/v3/files/puppet-php-5.1.0.tar.gz", + "file_size": 44767 + }, + { + "uri": "/v3/releases/puppet-php-5.0.0", + "slug": "puppet-php-5.0.0", + "version": "5.0.0", + "supported": false, + "created_at": "2017-09-08 07:54:48 -0700", + "deleted_at": null, + "file_uri": "/v3/files/puppet-php-5.0.0.tar.gz", + "file_size": 42930 + }, + { + "uri": "/v3/releases/puppet-php-4.0.0", + "slug": "puppet-php-4.0.0", + "version": "4.0.0", + "supported": false, + "created_at": "2017-02-11 13:09:42 -0800", + "deleted_at": null, + "file_uri": "/v3/files/puppet-php-4.0.0.tar.gz", + "file_size": 39416 + } + ], + "feedback_score": 60, + "homepage_url": "https://github.com/voxpupuli/puppet-php", + "issues_url": "https://github.com/voxpupuli/puppet-php/issues" +} diff --git a/doc/forge-api-response.deprecated.js b/doc/forge-api-response.deprecated.js new file mode 100644 index 0000000..dcda20d --- /dev/null +++ b/doc/forge-api-response.deprecated.js @@ -0,0 +1,421 @@ +{ + "uri": "/v3/modules/mayflower-php", + "slug": "mayflower-php", + "name": "php", + "downloads": 355522, + "created_at": "2014-05-09 12:33:46 -0700", + "updated_at": "2018-11-13 06:40:24 -0800", + "deprecated_at": "2018-11-13 06:38:50 -0800", + "deprecated_for": "This module has been adopted by Vox Pupuli.", + "superseded_by": { + "uri": "/v3/modules/puppet-php", + "slug": "puppet-php" + }, + "supported": false, + "endorsement": null, + "module_group": "base", + "owner": { + "uri": "/v3/users/mayflower", + "slug": "mayflower", + "username": "mayflower", + "gravatar_id": "72a5fa1324f1c83a442e7746d47c22c9" + }, + "current_release": { + "uri": "/v3/releases/mayflower-php-4.0.0-beta1", + "slug": "mayflower-php-4.0.0-beta1", + "module": { + "uri": "/v3/modules/mayflower-php", + "slug": "mayflower-php", + "name": "php", + "deprecated_at": "2018-11-13 06:38:50 -0800", + "owner": { + "uri": "/v3/users/mayflower", + "slug": "mayflower", + "username": "mayflower", + "gravatar_id": "72a5fa1324f1c83a442e7746d47c22c9" + } + }, + "version": "4.0.0-beta1", + "metadata": { + "name": "mayflower-php", + "version": "4.0.0-beta1", + "author": "mayflower", + "summary": "Generic PHP module that supports many platforms", + "license": "MIT", + "source": "https://github.com/mayflower/puppet-php", + "project_page": "http://php.puppet.mayflower.de/", + "issues_url": "https://github.com/mayflower/puppet-php/issues", + "dependencies": [ + { + "name": "puppetlabs/stdlib", + "version_requirement": ">= 4.2.0 < 5.0.0" + }, + { + "name": "puppetlabs/apt", + "version_requirement": ">= 1.8.0 < 3.0.0" + }, + { + "name": "puppetlabs/inifile", + "version_requirement": "1.x" + }, + { + "name": "darin/zypprepo", + "version_requirement": "1.x" + }, + { + "name": "example42/yum", + "version_requirement": "2.x" + } + ], + "data_provider": null, + "description": "Puppet module that aims to manage PHP and extensions in a generic way on many platforms with sane defaults and easy configuration", + "requirements": [ + { + "name": "puppet", + "version_requirement": ">= 3.3.0 < 5.0.0" + }, + { + "name": "pe", + "version_requirement": ">= 3.3.0" + } + ], + "operatingsystem_support": [ + { + "operatingsystem": "Ubuntu", + "operatingsystemrelease": [ + "14.10", + "14.04", + "12.04" + ] + }, + { + "operatingsystem": "Debian", + "operatingsystemrelease": [ + "7", + "8" + ] + }, + { + "operatingsystem": "RedHat", + "operatingsystemrelease": [ + "6", + "7" + ] + }, + { + "operatingsystem": "CentOS", + "operatingsystemrelease": [ + "6", + "7" + ] + }, + { + "operatingsystem": "FreeBSD", + "operatingsystemrelease": [ + "9", + "10", + "11" + ] + }, + { + "operatingsystem": "SLES", + "operatingsystemrelease": [ + "11" + ] + }, + { + "operatingsystem": "OpenSUSE" + } + ] + }, + "tags": [ + "apache", + "debian", + "ubuntu", + "redhat", + "php", + "rhel", + "fpm", + "pear", + "hiera", + "sles", + "centos", + "suse", + "pecl", + "lamp" + ], + "supported": false, + "pdk": false, + "validation_score": 92, + "file_uri": "/v3/files/mayflower-php-4.0.0-beta1.tar.gz", + "file_size": 33461, + "file_md5": "7731bd31781c9248a53bac0f95368296", + "downloads": 136331, + "readme": "[![Puppet Forge](http://img.shields.io/puppetforge/v/mayflower/php.svg)](https://forge.puppetlabs.com/mayflower/php)\n[![Build Status](https://travis-ci.org/mayflower/puppet-php.svg?branch=master)](https://travis-ci.org/mayflower/puppet-php)\n\n## Current Status\n\nThe original maintainers of `puppet-php` are not developing it actively anymore, because they moved away from Puppet.\n**If you want to help** maintaining this module please see [#183](https://github.com/mayflower/puppet-php/issues/183).\n\n# mayflower/php Puppet Module\n\nmayflower/php is a Puppet module for managing PHP with a strong focus\non php-fpm. The module aims to use sane defaults for the supported\narchitectures. We strive to support all recent versions of Debian,\nUbuntu, RedHat/CentOS, openSUSE/SLES and FreeBSD. Managing Apache\nwith `mod_php` is not supported.\n\nThis originally was a fork of [jippi/puppet-php](https://github.com/jippi/puppet-php)\n(nodes-php on Puppet Forge) but has since been rewritten in large parts.\n\n## Usage\n\nQuickest way to get started is simply `include`'ing the _`php` class_.\n\n```puppet\ninclude '::php'\n```\n\nOr, you can override defaults and specify additional custom\nconfigurations by declaring `class { '::php': }` with parameters:\n\n```puppet\nclass { '::php':\n ensure => latest,\n manage_repos => true,\n fpm => true,\n dev => true,\n composer => true,\n pear => true,\n phpunit => false,\n}\n```\n\nOptionally the PHP version or configuration root directory can be changed also:\n\n```puppet\nclass { '::php::globals':\n php_version => '7.0',\n config_root => '/etc/php/7.0',\n}->\nclass { '::php':\n manage_repos => true\n}\n```\n\nThere are more configuration options available. Please refer to the\nauto-generated documentation at http://php.puppet.mayflower.de/.\n\n### Defining `php.ini` settings\n\nPHP configuration parameters in `php.ini` files can be defined as parameter\n`settings` on the main `php` class, or `php::fpm` / `php::cli` classes,\nor `php::extension` resources for each component independently.\n\nThese settings are written into their respective `php.ini` file. Global\nsettings in `php::settings` are merged with the settings of all components.\nPlease note that settings of extensions are always independent.\n\nIn the following example the PHP options and timezone will be set in\nall PHP configurations, i.e. the PHP cli application and all php-fpm pools.\n\n```puppet\n class { '::php':\n settings => {\n 'PHP/max_execution_time' => '90',\n 'PHP/max_input_time' => '300',\n 'PHP/memory_limit' => '64M',\n 'PHP/post_max_size' => '32M',\n 'PHP/upload_max_filesize' => '32M',\n 'Date/date.timezone' => 'Europe/Berlin',\n },\n }\n```\n\n### Installing extensions\n\nPHP configuration parameters in `php.ini` files can be defined\nas parameter `extensions` on the main `php` class. They are\nactivated for all activated SAPIs.\n\n```puppet\n class { '::php':\n extensions => {\n bcmath => { },\n imagick => {\n provider => pecl,\n },\n xmlrpc => { },\n memcached => {\n provider => 'pecl',\n header_packages => [ 'libmemcached-devel', ],\n },\n apc => {\n provider => 'pecl',\n settings => {\n 'apc/stat' => '1',\n 'apc/stat_ctime' => '1',\n },\n sapi => 'fpm',\n },\n },\n }\n```\n\nSee [the documentation](http://php.puppet.mayflower.de/php/extension.html)\nof the `php::extension` resource for all available parameters and default\nvalues.\n\n### Defining php-fpm pools\n\nIf different php-fpm pools are required, you can use `php::fpm::pool`\ndefined resource type. A single pool called `www` will be configured\nby default. Specify additional pools like so:\n\n```puppet\n php::fpm::pool { 'www2':\n listen => '127.0.1.1:9000',\n }\n```\n\nFor an overview of all possible parameters for `php::fpm::pool` resources\nplease see [its documention](http://php.puppet.mayflower.de/php/fpm/pool.html).\n\n### Alternative examples using Hiera\nAlternative to the Puppet DSL code examples above, you may optionally define your PHP configuration using Hiera.\n\nBelow are all the examples you see above, but defined in YAML format for use with Hiera.\n\n```yaml\n---\nphp::ensure: latest\nphp::manage_repos: true\nphp::fpm: true\nphp::dev: true\nphp::composer: true\nphp::pear: true\nphp::phpunit: false\nphp::settings:\n 'PHP/max_execution_time': '90'\n 'PHP/max_input_time': '300'\n 'PHP/memory_limit': '64M'\n 'PHP/post_max_size': '32M'\n 'PHP/upload_max_filesize': '32M'\n 'Date/date.timezone': 'Europe/Berlin'\nphp::extensions:\n bcmath: {}\n xmlrpc: {}\n imagick:\n provider: pecl\n memcached:\n provider: pecl\n header_packages:\n - libmemcached-dev\n apc:\n provider: pecl\n settings:\n 'apc/stat': 1\n 'apc/stat_ctime': 1\n sapi: 'fpm'\nphp::fpm::pools:\n www2:\n listen: '127.0.1.1:9000'\n```\n\n## Notes\n\n### Debian squeeze & Ubuntu precise come with PHP 5.3\n\nOn Debian-based systems, we use `php5enmod` to enable extension-specific\nconfiguration. This script is only present in `php5` packages beginning with\nversion 5.4. Furthermore, PHP 5.3 is not supported by upstream anymore.\n\nWe strongly suggest you use a recent PHP version, even if you're using an\nolder though still supported distribution release. Our default is to have\n`php::manage_repos` enabled to add apt sources for\n[Dotdeb](http://www.dotdeb.org/) on Debian and\n[ppa:ondrej/php5](https://launchpad.net/~ondrej/+archive/ubuntu/php5/) on\nUbuntu with packages for the current stable PHP version closely tracking\nupstream.\n\n### Ubuntu systems and Ondřej's PPA\n\nThe older Ubuntu PPAs run by Ondřej have been deprecated (ondrej/php5, ondrej/php5.6)\nin favor of a new PPA: ondrej/php which contains all 3 versions of PHP: 5.5, 5.6, and 7.0\nHere's an example in hiera of getting PHP 5.6 installed with php-fpm, pear/pecl, and composer:\n\n```\nphp::globals::php_version: '5.6'\nphp::fpm: true\nphp::dev: true\nphp::composer: true\nphp::pear: true\nphp::phpunit: false\n```\n\nIf you do not specify a php version, in Ubuntu the default will be 7.0 if you are\nrunning Xenial (16.04), otherwise PHP 5.6 will be installed (for other versions)\n\n### Apache support\n\nApache with `mod_php` is not supported by this module. Please use\n[puppetlabs/apache](https://forge.puppetlabs.com/puppetlabs/apache) instead.\n\nWe prefer using php-fpm. You can find an example Apache vhost in\n`manifests/apache_vhost.pp` that shows you how to use `mod_proxy_fcgi` to\nconnect to php-fpm.\n\n### Facts\n\nWe deliver a `phpversion` fact with this module. This is explicitly **NOT** intended\nto be used within your puppet manifests as it will only work on your second puppet\nrun. Its intention is to make querying PHP versions per server easy via PuppetDB or Foreman.\n\n### FreeBSD support\n\nOn FreeBSD systems we purge the system-wide `extensions.ini` in favour of\nper-module configuration files.\n\nPlease also note that support for Composer and PHPUnit on FreeBSD is untested\nand thus likely incomplete.\n\n### Running the test suite\n\nTo run the tests install the ruby dependencies with `bundler` and execute\n`rake`:\n\n```\nbundle install --path vendor/bundle\nbundle exec rake\n```\n\n## Bugs & New Features\n\nIf you happen to stumble upon a bug, please feel free to create a pull request\nwith a fix (optionally with a test), and a description of the bug and how it\nwas resolved.\n\nOr if you're not into coding, simply create an issue adding steps to let us\nreproduce the bug and we will happily fix it.\n\nIf you have a good idea for a feature or how to improve this module in general,\nplease create an issue to discuss it. We are very open to feedback. Pull\nrequests are always welcome.\n\nWe hate orphaned and unmaintained Puppet modules as much as you do and\ntherefore promise that we will continue to maintain this module and keep\nresponse times to issues short. If we happen to lose interest, we will write\na big fat warning into this README to let you know.\n\n## License\n\nThe project is released under the permissive MIT license.\n\nThe source can be found at\n[github.com/mayflower/puppet-php](https://github.com/mayflower/puppet-php/).\n\nThis Puppet module is being actively maintained by some fellow puppeteers at\n[Mayflower GmbH](https://mayflower.de).\n", + "changelog": "# Changelog\n\n## 4.0.0\n * Fix a bug turning `manage_repos` off on wheezy\n * Fix a deprecation warning on `apt::key` when using `manage_repos` on wheezy (#110)\n This change requires puppetlabs/apt at >= 1.8.0\n * Allow removal of config values (#124)\n * Add `phpversion` fact, for querying through PuppetDB or Foreman (#119)\n * Allow configuring the fpm pid file (#123)\n * Add embedded SAPI support (#115)\n * Add options to fpm config and pool configs (#139)\n * Add parameter logic for PHP 7 on Ubuntu/Debian (#180)\n * add SLES PHP 7.0 Support (#220)\n\n### Breaking Changes\n * Deep merge `php::extensions` the same way as `php::settings`. This technically is a\n breaking change but should not affect many people.\n * PHP 5.6 is the default version on all systems now (except Ubuntu 16.04, where 7.0 is the default).\n * There's a php::globals class now, where global paramters (like the PHP version) are set. (#132)\n * Removal of php::repo::ubuntu::ppa (#218)\n\n## 3.4.2\n * Fix a bug that changed the default of `php::manage_repos` to `false` on\n Debian-based operating systems except wheezy. It should be turned on by\n default. (#116)\n * Fix a bug that prevented reloading php-fpm on Ubuntu in some cases.\n (#117, #107)\n\n## 3.4.1\n * Fix reloading php-fpm on Ubuntu trusty & utopic (#107)\n\n## 3.4.0\n * New parameter `ppa` for class `php::repo::ubuntu` to specify the ppa\n name to use. We default to `ondrej/php5-oldstable` for precise and\n `ondrej/php5` otherwise.\n * New parameter `include` for `php::fpm::pool` resources to specify\n custom configuration files.\n\n## 3.3.1\n * Make `systemd_interval` parameter for class `php::fpm::config` optional\n\n## 3.3.0\n * `php::extension` resources:\n * New boolean parameter `settings_prefix` to automatically prefix all\n settings keys with the extensions names. Defaults to false to ensurre\n the current behaviour.\n * New string parameter `so_name` to set the DSO name of an extension if\n it doesn't match the package name.\n * New string parameter `php_api_version` to set a custom api version. If\n not `undef`, the `so_name` is prefixed with the full module path in the\n ini file. Defaults to `undef`.\n * The default of the parameter `listen_allowed_clients` of `php::fpm::pool`\n resources is now `undef` instead of `'127.0.0.1'`. This way it is more\n intuitive to change the default tcp listening socket at `127.0.0.1:9000`\n to a unix socket by only setting the `listen` parameter instead of\n additionally needing to unset `listen_allowed_clients`. This has no\n security implications.\n * New parameters for the `php::fpm::config` class:\n * `error_log`\n * `syslog_facility`\n * `syslog_ident`\n * `systemd_interval`\n * A bug that prevented merging the global `php::settings` parameter into\n SAPI configs for `php::cli` and `php::fpm` was fixed.\n * The dotdeb repos are now only installed for Debian wheezy as Debian jessie\n has a sufficiently recent PHP version.\n\n## 3.2.2\n * Fix a typo in hiera keys `php::settings` & `php::fpm::settings` (#83)\n\n## 3.2.1\n * Fixed default `yum_repo` key in `php::repo::redhat`\n * On Ubuntu precise we now use the ondrej/php5-oldstable ppa. This can be\n manually enabled with by setting `$php::repo::ubuntu::oldstable` to\n `true`.\n * `$php::ensure` now defaults to `present` instead of `latest`. Though,\n strictly speaking, this represents a functional change, we consider this\n to be a bugfix because automatic updates should be enabled explicitely.\n * `$php::ensure` is not anymore passed to `php::extension` resources as\n default ensure parameter because this doesn't make sense.\n\n## 3.2.0\n * Support for FreeBSD added by Frank Wall\n * RedHat now uses remi-php56 yum repo by default\n * The resource `php::fpm::pool` is now public, you can use it in your\n manifests without using `$php::fpm::pools`\n * We now have autogenerated documentation using `puppetlabs/strings`\n\n## 3.1.0\n * New parameter `pool_purge` for `php::extension` to remove files not\n managed by puppet from the pool directory.\n * The `pecl_source` parameter for `php::extension` was renamend to\n `source` because it is also useful for PEAR extensions.\n `pecl_source` can still be used but is deprecated and will be\n removed in the next major release.\n * Parameters referring to time in `php::fpm::config` can now be\n specified with units (i.e. `'60s'`, `'1d'`):\n * `emergency_restart_threshold`\n * `emergency_restart_interval`\n * `process_control_timeout`\n * The PEAR version is not independant of `$php::ensure` and can be\n configured with `$php::pear_ensure`\n * Give special thanks to the contributors of this release:\n * Petr Sedlacek\n * Sherlan Moriah\n\n## 3.0.1\n * Fix typo in package suffix for php-fpm on RHEL in params.pp\n\n## 3.0.0\n * Removes `$php::fpm::pool::error_log`. Use the `php_admin_flag` and\n `php_admin_value` parameters to set the php settings `log_errors` and\n `error_log` instead.\n * Removes support for PHP 5.3 on Debian-based systems. See the notes in the\n README for more information.\n * Removes the `php_version` fact which had only worked on the later puppet runs.\n * Moves CLI-package handling to `php::packages`\n * Allows changing the package prefix via `php::package_prefix`.\n * Moves FPM-package handling from `php::fpm::package` to `php::fpm`\n * Changes `php::packages`, so that `php::packages::packages` becomes\n `php::packages::names` and are installed and `php::packages::names_to_prefix`\n are installed prefixed by `php::package_prefix`.\n * PHPUnit is now installed as phar in the same way composer is installed,\n causing all parameters to change\n * The `php::extension` resource has a new parameter: `zend`. If set to true,\n exenstions that were installed with pecl are loaded with `zend_extension`.\n\n## 2.0.4\n * Style fixes all over the place\n * Module dependencies are now bound to the current major version\n\n## 2.0.3\n * Some issues & bugs with extensions were fixed\n * If you set the `provider` parameter of an extension to `\"none\"`, no\n extension packages will be installed\n * The EPEL yum repo has been added for RedHat systems\n\n## 2.0.2\n * Adds support for `header_packages` on all extensions\n * Adds `install_options` to pear package provider\n\n## 2.0.1\n * This is a pure bug fix release\n * Fix for CVE 2014-0185 (https://bugs.php.net/bug.php?id=67060)\n\n## 2.0.0\n * Remove augeas and switch to puppetlabs/inifile for configs\n * Old: `settings => [‘set PHP/short_open_tag On‘]`\n * New: `settings => {‘PHP/short_open_tag’ => ‘On‘}`\n * Settings parmeter cleanups\n * The parameter `config` of `php::extension` resources is now called `settings`\n * The parameters `user` and `group` of `php::fpm` have been moved to `php::fpm::config`\n * New parameter `php::settings` for global settings (i.e. CLI & FPM)\n * New parameter `php::cli` to disable CLI if supported\n\n## 1.1.2\n * SLES: PHP 5.5 will now be installed\n * Pecl extensions now autoload the .so based on $name instead of $title\n\n## 1.1.1\n * some nasty bugs with the pecl php::extension provider were fixed\n * php::extension now has a new pecl_source parameter for specifying custom\n source channels for the pecl provider\n\n## 1.1.0\n * add phpunit to main class\n * fix variable access for augeas\n\n## 1.0.2\n * use correct suse apache service name\n * fix anchoring of augeas\n\n## 1.0.1\n * fixes #9 undefined pool_base_dir\n\n## 1.0.0\nInitial release\n\n", + "license": null, + "reference": null, + "tasks": [ + + ], + "created_at": "2016-07-12 12:55:13 -0700", + "updated_at": "2016-07-12 13:00:13 -0700", + "deleted_at": null, + "deleted_for": null + }, + "releases": [ + { + "uri": "/v3/releases/mayflower-php-999.999.999", + "slug": "mayflower-php-999.999.999", + "version": "999.999.999", + "supported": false, + "created_at": "2016-09-12 04:59:18 -0700", + "deleted_at": "2016-09-12 05:01:31 -0700", + "file_uri": "/v3/files/mayflower-php-999.999.999.tar.gz", + "file_size": 30345 + }, + { + "uri": "/v3/releases/mayflower-php-4.0.0-beta1", + "slug": "mayflower-php-4.0.0-beta1", + "version": "4.0.0-beta1", + "supported": false, + "created_at": "2016-07-12 12:55:13 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-4.0.0-beta1.tar.gz", + "file_size": 33461 + }, + { + "uri": "/v3/releases/mayflower-php-3.4.2", + "slug": "mayflower-php-3.4.2", + "version": "3.4.2", + "supported": false, + "created_at": "2015-09-11 04:26:40 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-3.4.2.tar.gz", + "file_size": 29455 + }, + { + "uri": "/v3/releases/mayflower-php-3.4.1", + "slug": "mayflower-php-3.4.1", + "version": "3.4.1", + "supported": false, + "created_at": "2015-07-24 09:19:17 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-3.4.1.tar.gz", + "file_size": 29520 + }, + { + "uri": "/v3/releases/mayflower-php-3.4.0", + "slug": "mayflower-php-3.4.0", + "version": "3.4.0", + "supported": false, + "created_at": "2015-07-23 08:15:13 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-3.4.0.tar.gz", + "file_size": 29263 + }, + { + "uri": "/v3/releases/mayflower-php-3.3.1", + "slug": "mayflower-php-3.3.1", + "version": "3.3.1", + "supported": false, + "created_at": "2015-07-19 18:27:57 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-3.3.1.tar.gz", + "file_size": 28965 + }, + { + "uri": "/v3/releases/mayflower-php-3.3.0", + "slug": "mayflower-php-3.3.0", + "version": "3.3.0", + "supported": false, + "created_at": "2015-07-17 10:18:51 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-3.3.0.tar.gz", + "file_size": 28435 + }, + { + "uri": "/v3/releases/mayflower-php-3.2.2", + "slug": "mayflower-php-3.2.2", + "version": "3.2.2", + "supported": false, + "created_at": "2015-05-08 07:28:33 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-3.2.2.tar.gz", + "file_size": 27311 + }, + { + "uri": "/v3/releases/mayflower-php-3.2.1", + "slug": "mayflower-php-3.2.1", + "version": "3.2.1", + "supported": false, + "created_at": "2015-05-04 12:09:22 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-3.2.1.tar.gz", + "file_size": 26453 + }, + { + "uri": "/v3/releases/mayflower-php-3.2.0", + "slug": "mayflower-php-3.2.0", + "version": "3.2.0", + "supported": false, + "created_at": "2015-04-10 10:44:07 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-3.2.0.tar.gz", + "file_size": 25952 + }, + { + "uri": "/v3/releases/mayflower-php-3.1.0", + "slug": "mayflower-php-3.1.0", + "version": "3.1.0", + "supported": false, + "created_at": "2015-02-27 09:19:10 -0800", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-3.1.0.tar.gz", + "file_size": 24540 + }, + { + "uri": "/v3/releases/mayflower-php-3.0.1", + "slug": "mayflower-php-3.0.1", + "version": "3.0.1", + "supported": false, + "created_at": "2015-01-16 05:08:30 -0800", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-3.0.1.tar.gz", + "file_size": 24015 + }, + { + "uri": "/v3/releases/mayflower-php-3.0.0", + "slug": "mayflower-php-3.0.0", + "version": "3.0.0", + "supported": false, + "created_at": "2015-01-09 09:45:31 -0800", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-3.0.0.tar.gz", + "file_size": 23971 + }, + { + "uri": "/v3/releases/mayflower-php-2.0.4", + "slug": "mayflower-php-2.0.4", + "version": "2.0.4", + "supported": false, + "created_at": "2014-12-19 06:33:58 -0800", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-2.0.4.tar.gz", + "file_size": 23093 + }, + { + "uri": "/v3/releases/mayflower-php-2.0.3", + "slug": "mayflower-php-2.0.3", + "version": "2.0.3", + "supported": false, + "created_at": "2014-12-18 10:05:03 -0800", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-2.0.3.tar.gz", + "file_size": 23114 + }, + { + "uri": "/v3/releases/mayflower-php-2.0.2", + "slug": "mayflower-php-2.0.2", + "version": "2.0.2", + "supported": false, + "created_at": "2014-09-26 10:21:37 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-2.0.2.tar.gz", + "file_size": 22733 + }, + { + "uri": "/v3/releases/mayflower-php-2.0.1", + "slug": "mayflower-php-2.0.1", + "version": "2.0.1", + "supported": false, + "created_at": "2014-09-22 06:19:19 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-2.0.1.tar.gz", + "file_size": 22578 + }, + { + "uri": "/v3/releases/mayflower-php-2.0.0", + "slug": "mayflower-php-2.0.0", + "version": "2.0.0", + "supported": false, + "created_at": "2014-09-12 10:54:10 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-2.0.0.tar.gz", + "file_size": 21975 + }, + { + "uri": "/v3/releases/mayflower-php-1.1.3", + "slug": "mayflower-php-1.1.3", + "version": "1.1.3", + "supported": false, + "created_at": "2014-09-22 06:19:06 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-1.1.3.tar.gz", + "file_size": 20079 + }, + { + "uri": "/v3/releases/mayflower-php-1.1.2", + "slug": "mayflower-php-1.1.2", + "version": "1.1.2", + "supported": false, + "created_at": "2014-08-24 19:44:28 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-1.1.2.tar.gz", + "file_size": 20658 + }, + { + "uri": "/v3/releases/mayflower-php-1.1.1", + "slug": "mayflower-php-1.1.1", + "version": "1.1.1", + "supported": false, + "created_at": "2014-08-04 15:08:58 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-1.1.1.tar.gz", + "file_size": 20535 + }, + { + "uri": "/v3/releases/mayflower-php-1.1.0", + "slug": "mayflower-php-1.1.0", + "version": "1.1.0", + "supported": false, + "created_at": "2014-06-27 02:37:34 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-1.1.0.tar.gz", + "file_size": 20509 + }, + { + "uri": "/v3/releases/mayflower-php-1.0.2", + "slug": "mayflower-php-1.0.2", + "version": "1.0.2", + "supported": false, + "created_at": "2014-06-20 06:29:12 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-1.0.2.tar.gz", + "file_size": 20299 + }, + { + "uri": "/v3/releases/mayflower-php-1.0.1", + "slug": "mayflower-php-1.0.1", + "version": "1.0.1", + "supported": false, + "created_at": "2014-05-16 01:00:52 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-1.0.1.tar.gz", + "file_size": 20400 + }, + { + "uri": "/v3/releases/mayflower-php-1.0.0", + "slug": "mayflower-php-1.0.0", + "version": "1.0.0", + "supported": false, + "created_at": "2014-05-09 12:34:00 -0700", + "deleted_at": null, + "file_uri": "/v3/files/mayflower-php-1.0.0.tar.gz", + "file_size": 20277 + } + ], + "feedback_score": 75, + "homepage_url": "http://php.puppet.mayflower.de/", + "issues_url": "https://github.com/mayflower/puppet-php/issues" +}