Bladeren bron

Merge pull request #14 from spsoit/master

Adds NG states to php-formula
tags/v0.34.0
Seth House 10 jaren geleden
bovenliggende
commit
feb3c03e54
40 gewijzigde bestanden met toevoegingen van 886 en 11 verwijderingen
  1. +13
    -0
      CHANGELOG.rst
  2. +182
    -11
      README.rst
  3. +1
    -0
      VERSION
  4. +2
    -0
      php/map.jinja
  5. +2
    -0
      php/ng/adodb.sls
  6. +2
    -0
      php/ng/apc.sls
  7. +2
    -0
      php/ng/cgi.sls
  8. +9
    -0
      php/ng/cli/ini.sls
  9. +11
    -0
      php/ng/cli/init.sls
  10. +2
    -0
      php/ng/cli/install.sls
  11. +2
    -0
      php/ng/curl.sls
  12. +31
    -0
      php/ng/files/php.ini
  13. +15
    -0
      php/ng/fpm/config.sls
  14. +15
    -0
      php/ng/fpm/init.sls
  15. +2
    -0
      php/ng/fpm/install.sls
  16. +22
    -0
      php/ng/fpm/pools.sls
  17. +34
    -0
      php/ng/fpm/pools_config.sls
  18. +18
    -0
      php/ng/fpm/service.sls
  19. +2
    -0
      php/ng/gd.sls
  20. +2
    -0
      php/ng/imagick.sls
  21. +2
    -0
      php/ng/imap.sls
  22. +12
    -0
      php/ng/ini.jinja
  23. +2
    -0
      php/ng/init.sls
  24. +34
    -0
      php/ng/installed.jinja
  25. +2
    -0
      php/ng/json.sls
  26. +2
    -0
      php/ng/ldap.sls
  27. +27
    -0
      php/ng/macro.jinja
  28. +274
    -0
      php/ng/map.jinja
  29. +2
    -0
      php/ng/mbstring.sls
  30. +2
    -0
      php/ng/mcrypt.sls
  31. +2
    -0
      php/ng/memcache.sls
  32. +2
    -0
      php/ng/memcached.sls
  33. +2
    -0
      php/ng/mysql.sls
  34. +2
    -0
      php/ng/mysqlnd.sls
  35. +2
    -0
      php/ng/pear.sls
  36. +2
    -0
      php/ng/pgsql.sls
  37. +2
    -0
      php/ng/soap.sls
  38. +2
    -0
      php/ng/suhosin.sls
  39. +2
    -0
      php/ng/xml.sls
  40. +140
    -0
      pillar.example

+ 13
- 0
CHANGELOG.rst Bestand weergeven

@@ -0,0 +1,13 @@
===========
php-formula
===========

0.2.0
-----

- Added .ng states

0.1.0
-----

- Initial version

+ 182
- 11
README.rst Bestand weergeven

@@ -26,17 +26,17 @@ Installs the php package.
Installs the php-apc package.

``php.adodb``
------------
-------------

Installs the php-adodb package.

``php.cgi``
------------
-----------

Installs the php-cgi package.

``php.cli``
------------
-----------

Installs the php-cli package.

@@ -59,7 +59,7 @@ Installs the php-gd package.


``php.imagick``
------------
---------------

Installs the php-imagick package.

@@ -79,7 +79,7 @@ Installs the php-json package.
Installs the php-ldap package.

``php.mbstring``
---------------
----------------

Installs the php-mbstring package.

@@ -90,12 +90,12 @@ Installs the php-mcrypt package.


``php.memcache``
------------
----------------

Installs the php-memcache package.

``php.memcached``
------------
-----------------

Installs the php-memcached package.

@@ -105,7 +105,7 @@ Installs the php-memcached package.
Installs the php-mysql package.

``php.mysqlnd``
------------
---------------

Installs the php-mysqlnd package.

@@ -115,7 +115,7 @@ Installs the php-mysqlnd package.
Installs the php-pear package.

``php.pgsql``
------------
-------------

Installs the php-pgsql package.

@@ -125,11 +125,182 @@ Installs the php-pgsql package.
Installs the php-soap package.

``php.suhosin``
------------
---------------

Installs the php-suhosin package.

``php.xml``
------------
-----------

Installs the php-xml package.

Next-generation, alternate approach
===================================

The following states provide an alternate approach to managing PHP and FPM
pools, as well as code organization. Please provide feedback by filing issues,
discussing in ``#salt`` in Freenode and the mailing list as normal.

**Note:** php.ng states require the merge parameter of salt.modules.pillar.get(),
first available in the Helium release.

.. contents::
:local:

``php.ng``
----------

Installs the php package.

``php.ng.adodb``
----------------

Installs the php-adodb package.

``php.ng.apc``
--------------

Installs the php-apc package.

``php.ng.cgi``
--------------

Installs the php-cgi package.

``php.ng.cli``
--------------

Meta-state that combines `php.ng.cli.install`_ and `php.ng.cli.ini`_.

``php.ng.cli.install``
----------------------

Installs the php-cli package.

``php.ng.cli.ini``
------------------

Manages the php-cli ini file.

``php.ng.curl``
---------------

Installs the php5-curl package on Debian, and ensures that curl itself is
installed for RedHat systems, this is due to the curl libs being provided by
php-common, which will get installed with the main php package.

``php.ng.fpm``
--------------

Meta-state that combines all php.ng.fpm states.

``php.ng.fpm.config``
---------------------

Manages the (non-pool) php-fpm config files.


``php.ng.fpm.install``
----------------------

Installs the php-fpm package.


``php.ng.fpm.pools``
--------------------

Meta-state that combines `php.ng.fpm.service`_ and `php.ng.fpm.pools_config`_


``php.ng.fpm.pools_config``
---------------------------

Manages php-fpm pool config files.


``php.ng.fpm.service``
----------------------

Manages the php-fpm service.

``php.ng.gd``
-------------

Installs the php-gd package.


``php.ng.imagick``
------------------

Installs the php-imagick package.

``php.ng.imap``
---------------

Installs the php-imap package.

``php.ng.json``
---------------

Installs the php-json package.

``php.ng.ldap``
---------------

Installs the php-ldap package.

``php.ng.mbstring``
-------------------

Installs the php-mbstring package.

``php.ng.mcrypt``
-----------------

Installs the php-mcrypt package.


``php.ng.memcache``
-------------------

Installs the php-memcache package.

``php.ng.memcached``
--------------------

Installs the php-memcached package.

``php.ng.mysql``
----------------

Installs the php-mysql package.

``php.ng.mysqlnd``
------------------

Installs the php-mysqlnd package.

``php.ng.pear``
---------------

Installs the php-pear package.

``php.ng.pgsql``
----------------

Installs the php-pgsql package.

``php.ng.soap``
---------------

Installs the php-soap package.

``php.ng.suhosin``
------------------

Installs the php-suhosin package.

``php.ng.xml``
--------------

Installs the php-xml package.

+ 1
- 0
VERSION Bestand weergeven

@@ -0,0 +1 @@
0.0.4

+ 2
- 0
php/map.jinja Bestand weergeven

@@ -24,6 +24,7 @@
'adodb_pkg': 'php5-adodb',
'pgsql_pkg': 'php5-pgsql',
'ldap_pkg': 'php5-ldap',
'php_ini': '/etc/php5/apache2/php.ini',
},
'RedHat': {
'php_pkg': 'php',
@@ -50,5 +51,6 @@
'adodb_pkg': 'php-adodb',
'pgsql_pkg': 'php-pgsql',
'ldap_pkg': 'php-ldap',
'php_ini': '/etc/php.ini',
},
}, merge=salt['pillar.get']('php:lookup')) %}

+ 2
- 0
php/ng/adodb.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'adodb' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/apc.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'apc' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/cgi.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'cgi' %}
{% include "php/ng/installed.jinja" %}

+ 9
- 0
php/ng/cli/ini.sls Bestand weergeven

@@ -0,0 +1,9 @@
# Manages the php cli main ini file
{% from 'php/ng/map.jinja' import php with context %}
{% from "php/ng/ini.jinja" import php_ini %}

{% set settings = php.ini.defaults %}
{% do settings.update(php.cli.ini.settings) %}

php_cli_ini:
{{ php_ini(php.lookup.cli.ini, php.cli.ini.opts, settings) }}

+ 11
- 0
php/ng/cli/init.sls Bestand weergeven

@@ -0,0 +1,11 @@
# Installs php-cli and manages the associated php.ini

include:
- php.ng.cli.install
- php.ng.cli.ini

extend:
php_cli_ini:
file:
- require:
- sls: php.ng.cli.install

+ 2
- 0
php/ng/cli/install.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'cli' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/curl.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'curl' %}
{% include "php/ng/installed.jinja" %}

+ 31
- 0
php/ng/files/php.ini Bestand weergeven

@@ -0,0 +1,31 @@
{%- macro php_block(config) %}
{% for sections in config %}
{%- for section, settings in sections.items() -%}
{%- if settings is number or settings is string %}
{{ section }} = {{ settings }}
{%- else %}
[{{ section }}]
{%- for setting in settings -%}
{%- for key, value in setting.items() %}
{%- if value is number or value is string %}
{{ key }} = {{ value }}
{%- elif value is iterable -%}
{%- if key == 'error_reporting' %}
{{ key }} = {{ value|join(" & ") }}
{%- else %}
{{ key }} = {{ value|join(",") }}
{%- endif -%}
{%- endif -%}
{%- endfor -%}
{%- endfor -%}
{%- endif -%}
{%- endfor -%}
{% endfor %}
{%- endmacro -%}

; PHP configuration file.
;
; **** DO NOT EDIT THIS FILE ****
;
; This file is managed by Salt via {{ source }}
{{ php_block(config) }}

+ 15
- 0
php/ng/fpm/config.sls Bestand weergeven

@@ -0,0 +1,15 @@
# Manages the php-fpm main ini file
{% from 'php/ng/map.jinja' import php with context %}
{% from "php/ng/ini.jinja" import php_ini %}

{% set ini_settings = php.ini.defaults %}
{% do ini_settings.update(php.fpm.config.ini.settings) %}

{% set conf_settings = php.lookup.fpm.defaults %}
{% do conf_settings.update(php.fpm.config.conf.settings) %}

php_fpm_ini_config:
{{ php_ini(php.lookup.fpm.ini, php.fpm.config.ini.opts, ini_settings) }}

php_fpm_conf_config:
{{ php_ini(php.lookup.fpm.conf, php.fpm.config.conf.opts, conf_settings) }}

+ 15
- 0
php/ng/fpm/init.sls Bestand weergeven

@@ -0,0 +1,15 @@
# Meta-state to fully install php.fpm

include:
- php.ng.fpm.config
- php.ng.fpm.service
- php.ng.fpm.pools

extend:
php_fpm_service:
service:
- watch:
- file: php_fpm_ini_config
- file: php_fpm_conf_config
- require:
- sls: php.ng.fpm.config

+ 2
- 0
php/ng/fpm/install.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'fpm' %}
{% include "php/ng/installed.jinja" %}

+ 22
- 0
php/ng/fpm/pools.sls Bestand weergeven

@@ -0,0 +1,22 @@
# Manages the php-fpm pools config files
{% from "php/ng/map.jinja" import php with context %}
{% from "php/ng/macro.jinja" import sls_block %}
{% from "php/ng/fpm/pools_config.sls" import pool_states with context %}

{% macro file_requisites(states) %}
{%- for state in states %}
- file: {{ state }}
{%- endfor -%}
{% endmacro %}

include:
- php.ng.fpm.service
- php.ng.fpm.pools_config

extend:
php_fpm_service:
service:
- watch:
{{ file_requisites(pool_states) }}
- require:
{{ file_requisites(pool_states) }}

+ 34
- 0
php/ng/fpm/pools_config.sls Bestand weergeven

@@ -0,0 +1,34 @@
# Manages the php-fpm pools config files
{% from 'php/ng/map.jinja' import php with context %}
{% from "php/ng/macro.jinja" import sls_block, serialize %}

# Simple path concatenation.
{% macro path_join(file, root) -%}
{{ root ~ '/' ~ file }}
{%- endmacro %}

{% set pool_states = [] %}

{% for pool, config in php.fpm.pools.items() %}
{% set state = 'php_fpm_pool_conf_' ~ loop.index0 %}
{% set fpath = path_join(pool, php.lookup.fpm.pools) %}

{{ state }}:
{% if config.enabled %}
file.managed:
{{ sls_block(config.get('opts', {})) }}
- name: {{ fpath }}
- source: salt://php/ng/files/php.ini
- template: jinja
- context:
config: {{ serialize(config.get('settings', {})) }}
{% else %}
file.absent:
- name: {{ fpath }}
{% endif %}

{% do pool_states.append(state) %}
{% endfor %}




+ 18
- 0
php/ng/fpm/service.sls Bestand weergeven

@@ -0,0 +1,18 @@
# Manages the php-fpm service.
{% from "php/ng/map.jinja" import php with context %}
{% from "php/ng/macro.jinja" import sls_block %}

{% set service_function = {True:'running', False:'dead'}.get(php.fpm.service.enabled) %}

include:
- php.ng.fpm.install

php_fpm_service:
service.{{ service_function }}:
{{ sls_block(php.fpm.service.opts) }}
- name: {{ php.lookup.fpm.service }}
- enable: {{ php.fpm.service.enabled }}
- require:
- sls: php.ng.fpm.install
- watch:
- pkg: php_install_fpm

+ 2
- 0
php/ng/gd.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'gd' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/imagick.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'imagick' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/imap.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'imap' %}
{% include "php/ng/installed.jinja" %}

+ 12
- 0
php/ng/ini.jinja Bestand weergeven

@@ -0,0 +1,12 @@
# php.ini management macro.
{% from "php/ng/macro.jinja" import sls_block, serialize %}

{% macro php_ini(filename, opts={}, settings={}) %}
file.managed:
{{ sls_block(opts) }}
- name: {{ filename }}
- source: salt://php/ng/files/php.ini
- template: jinja
- context:
config: {{ serialize(settings) }}
{%- endmacro -%}

+ 2
- 0
php/ng/init.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'php' %}
{% include "php/ng/installed.jinja" %}

+ 34
- 0
php/ng/installed.jinja Bestand weergeven

@@ -0,0 +1,34 @@
# Template for installing packages.
{% from "php/ng/map.jinja" import php with context %}
{% from "php/ng/macro.jinja" import sls_block %}


{% set pkginfo = php.lookup.pkgs.get(state) %}

{% set pkgs = [] %}
{% set specials = [] %}

{% if pkginfo is iterable and pkginfo is not string %}
{% for pkg in pkginfo %}
{% if pkg is mapping %}
{% do specials.append(pkg) %}
{% else %}
{% do pkgs.append(pkg) %}
{% endif %}
{% endfor %}
{% else %}
{% do pkgs.append(pkginfo) %}
{% endif %}

php_install_{{ state }}:
pkg.installed:
- name: {{ state }}
- pkgs: {{ pkgs|json() }}

{% for pkg in specials %}

php_install_{{ state }}_{{ pkg.get('name') }}:
pkg.installed:
{{ sls_block(pkg) }}

{% endfor %}

+ 2
- 0
php/ng/json.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'json' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/ldap.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'ldap' %}
{% include "php/ng/installed.jinja" %}

+ 27
- 0
php/ng/macro.jinja Bestand weergeven

@@ -0,0 +1,27 @@
# Returns a generic block of values suitable for inclusion in most states.
{% macro sls_block(dict, ind=4) %}
{% for key, value in dict.items() %}
{{ '-'|indent(ind, True) }} {{ key }}: {{ value|json() }}
{% endfor %}
{% endmacro %}

# Serializes dicts into sequenced data
{%- macro serialize(data) -%}
{%- if data is mapping -%}
{%- set ret = [] -%}
{%- for key, value in data.items() -%}
{%- set value = serialize(value)|load_json() -%}
{%- do ret.append({key: value}) -%}
{%- endfor -%}
{%- elif data is iterable and data is not string -%}
{%- set ret = [] -%}
{%- for value in data -%}
{%- set value = serialize(value)|load_json() -%}
{%- do ret.append(value) -%}
{%- endfor -%}
{%- else -%}
{% set ret = data %}
{%- endif -%}

{{ ret|json() }}
{%- endmacro -%}

+ 274
- 0
php/ng/map.jinja Bestand weergeven

@@ -0,0 +1,274 @@
{% set php = salt['pillar.get']('php:ng', {
'lookup': salt['grains.filter_by']({
'Debian': {
'pkgs': {
'php': 'php5',
'apc': 'php-apc',
'cgi': 'php5-cgi',
'cli': 'php5-cli',
'curl': 'php5-curl',
'fpm': 'php5-fpm',
'gd': 'php5-gd',
'mbstring': 'php5',
'mcrypt': 'php5-mcrypt',
'memcache': 'php5-memcache',
'memcached': 'php5-memcached',
'mysql': 'php5-mysql',
'mysqlnd': 'php5-mysqlnd',
'pear': ' php-pear',
'soap': ' php-soap',
'xml': ' php5-xml',
'imagick': 'php5-imagick',
'suhosin': 'php5-suhosin',
'imap': 'php5-imap',
'adodb': 'php5-adodb',
'pgsql': 'php5-pgsql',
'ldap': 'php5-ldap',
'json': 'php5-json',
},
'fpm': {
'conf': '/etc/php5/fpm/php-fpm.conf',
'ini': '/etc/php5/fpm/php.ini',
'pools': '/etc/php5/fpm/pool.d',
'service': 'php5-fpm',
'defaults': odict([
('global', odict([
('pid', '/var/run/php5-fpm.pid'),
('error_log', '/var/log/php5-fpm.log'),
('include', '/etc/php5/fpm/pool.d/*.conf'),
])),
]),
},
'cli': {
'ini': '/etc/php5/cli/php.ini',
},
},
'RedHat': {
'pkgs': {
'php': 'php',
'apc': 'php-pecl-apc',
'cgi': 'php-cgi',
'cli': 'php-cli',
'curl': ['php-common', 'curl'],
'fpm': 'php-fpm',
'gd': 'php-gd',
'mbstring': 'php-mbstring',
'mcrypt': 'php-mcrypt',
'memcache': 'php-pecl-memcache',
'memcached': 'php-pecl-memcached',
'mysql': 'php-mysql',
'mysqlnd': 'php-mysqlnd',
'pear': ' php-pear',
'soap': ' php-soap',
'xml': ' php-xml',
'imagick': 'php-imagick',
'suhosin': 'php-suhosin',
'imap': 'php-imap',
'adodb': 'php-adodb',
'pgsql': 'php-pgsql',
'ldap': 'php-ldap',
'json': 'php-common',
},
'fpm': {
'conf': '/etc/php-fpm.conf',
'ini': '/etc/php.ini',
'pools': '/etc/php-fpm.d',
'service': 'php-fpm',
'defaults': {
'global': {
'pid': '/var/run/php-fpm/php-fpm.pid',
'error_log': '/var/log/php-fpm/error.log',
'include': '/etc/php-fpm.d/*.conf',
},
},
},
'cli': {
'ini': '/etc/php.ini',
},
},
}),
'fpm': {
'service': {
'enabled': True,
'opts': {},
},
'config': {
'ini': {
'opts': {},
'settings': {},
},
'conf': {
'opts': {},
'settings': {},
},
},
'pools': {},
},
'cli': {
'ini': {
'opts': {},
'settings': {},
}
},
'ini': {
'defaults': {
'PHP': {
'engine': 'On',
'short_open_tag': 'Off',
'asp_tags': 'Off',
'precision': 14,
'output_buffering': 4096,
'zlib.output_compression': 'Off',
'implicit_flush': 'Off',
'serialize_precision': 17,
'disable_functions': ['pcntl_alarm','pcntl_fork','pcntl_waitpid','pcntl_wait','pcntl_wifexited','pcntl_wifstopped','pcntl_wifsignaled',
'pcntl_wexitstatus','pcntl_wtermsig','pcntl_wstopsig','pcntl_signal','pcntl_signal_dispatch','pcntl_get_last_error','pcntl_strerror',
'pcntl_sigprocmask','pcntl_sigwaitinfo','pcntl_sigtimedwait','pcntl_exec','pcntl_getpriority','pcntl_setpriority'],
'zend.enable_gc': 'On',
'expose_php': 'On',
'max_execution_time': 30,
'max_input_time': 60,
'max_input_nesting_level': 64,
'max_input_vars': 1000,
'memory_limit': '128M',
'error_reporting': ['E_ALL', '~E_DEPRECATED', '~E_STRICT'],
'display_errors': 'Off',
'display_startup_errors': 'Off',
'log_errors': 'On',
'log_errors_max_len': 1024,
'ignore_repeated_errors': 'Off',
'ignore_repeated_source': 'Off',
'report_memleaks': 'On',
'track_errors': 'Off',
'html_errors': 'On',
'variables_order': 'GPCS',
'request_order': 'GP',
'register_argc_argv': 'Off',
'auto_globals_jit': 'On',
'post_max_size': '8M',
'default_mimetype': '"text/html"',
'enable_dl': 'Off',
'file_uploads': 'On',
'upload_max_filesize': '2M',
'max_file_uploads': 20,
'allow_url_fopen': 'On',
'allow_url_include': 'Off',
'default_socket_timeout': 60
},
'CLI Server': {
'cli_server.color': 'On'
},
'Date': {
'date.timezone': 'America/New_York'
},
'Pdo_mysql': {
'pdo_mysql.cache_size': 2000
},
'mail function': {
'SMTP': 'localhost',
'mail.add_x_header': 'On'
},
'SQL': {
'sql.safe_mode': 'Off'
},
'ODBC': {
'odbc.allow_persistent': 'On',
'odbc.check_persistent': 'On',
'odbc.max_persistent': '-1',
'odbc.max_links': '-1',
'odbc.defaultlrl': 4096,
'odbc.defaultbinmode': 1
},
'Interbase': {
'ibase.allow_persistent': 1,
'ibase.max_persistent': -1,
'ibase.max_links': -1,
'ibase.timestampformat': '"%Y-%m-%d %H:%M:%S"',
'ibase.dateformat': '"%Y-%m-%d"',
'ibase.timeformat': '"%H:%M:%S"'
},
'MySQL': {
'mysql.allow_local_infile': 'On',
'mysql.allow_persistent': 'On',
'mysql.cache_size': '2000',
'mysql.max_persistent': -1,
'mysql.max_links': -1,
'mysql.connect_timeout': 60,
'mysql.trace_mode': 'Off'
},
'MySQLi': {
'mysqli.max_persistent': -1,
'mysqli.allow_persistent': 'On',
'mysqli.max_links': -1,
'mysqli.cache_size': 2000,
'mysqli.default_port': 3306,
'mysqli.reconnect': 'Off'
},
'mysqlnd': {
'mysqlnd.collect_statistics': 'On',
'mysqlnd.collect_memory_statistics': 'Off'
},
'PostgreSQL': {
'pgsql.allow_persistent': 'On',
'pgsql.auto_reset_persistent': 'Off',
'pgsql.max_persistent': -1,
'pgsql.max_links': -1,
'pgsql.ignore_notice': 0,
'pgsql.log_notice': 0
},
'Sybase-CT': {
'sybct.allow_persistent': 'On',
'sybct.max_persistent': -1,
'sybct.max_links': -1,
'sybct.min_server_severity': 10,
'sybct.min_client_severity': 10
},
'bcmath': {
'bcmath.scale': 0
},
'Session': {
'session.save_handler': 'files',
'session.use_strict_mode': 0,
'session.use_cookies': 1,
'session.use_only_cookies': 1,
'session.name': 'PHPSESSID',
'session.auto_start': 0,
'session.cookie_lifetime': 0,
'session.cookie_path': '/',
'session.serialize_handler': 'php',
'session.gc_probability': 0,
'session.gc_divisor': 1000,
'session.gc_maxlifetime': 1440,
'session.bug_compat_42': 'Off',
'session.bug_compat_warn': 'Off',
'session.cache_limiter': 'nocache',
'session.cache_expire': '180',
'session.use_trans_sid': 0,
'session.hash_function': 0,
'session.hash_bits_per_character': 5,
'url_rewriter.tags': '"a=href,area=href,frame=src,input=src,form=fakeentry"'
},
'MSSQL': {
'mssql.allow_persistent': 'On',
'mssql.max_persistent': -1,
'mssql.max_links': -1,
'mssql.min_error_severity': 10,
'mssql.min_message_severity': 10,
'mssql.compatibility_mode': 'Off',
'mssql.secure_connection': 'Off'
},
'Tidy': {
'tidy.clean_output': 'Off'
},
'soap': {
'soap.wsdl_cache_enabled': 1,
'soap.wsdl_cache_dir': '"/tmp"',
'soap.wsdl_cache_ttl': 86400,
'soap.wsdl_cache_limit': 5
},
'ldap': {
'ldap.max_links': -1
},
},
},
}, merge=True) %}

+ 2
- 0
php/ng/mbstring.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'mbstring' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/mcrypt.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'mcrypt' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/memcache.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'memcache' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/memcached.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'memcached' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/mysql.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'mysql' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/mysqlnd.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'mysqld' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/pear.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'pear' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/pgsql.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'pgsql' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/soap.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'soap' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/suhosin.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'suhosin' %}
{% include "php/ng/installed.jinja" %}

+ 2
- 0
php/ng/xml.sls Bestand weergeven

@@ -0,0 +1,2 @@
{% set state = 'xml' %}
{% include "php/ng/installed.jinja" %}

+ 140
- 0
pillar.example Bestand weergeven

@@ -0,0 +1,140 @@
## php.ng pillar examples

php:
ng:
# this section contains mostly grain filtered data, while overrides
# are possible in the pillar for unique cases, if your OS is not
# represented, please consider adding it to the map.jinja for
# upstream inclusion
lookup:

# package definitions, these can strings, lists of strings, or
# lists of dictionaries
pkgs:
memcached: php5-memcached
# ensures both will be installed
curl:
- php-common
- curl
# a dictionary can be used in more complex cases where you want
# to pass forward special arguments to the pkg.installed call
# you MUST include the name argument for this to work
cli:
-
name: php-cli
fromrepo: my-specialrepo
-
name: php-common
skip_verify: True

# php-fpm os-specific settings
fpm:
conf: /location/of/php-fpm/config.conf
ini: /location/of/php-fpm/php.ini
pools: /location/of/php-fpm/pool.d
service: name-of-php5-fpm-service

# the default content of the php5-fpm main config file
defaults:
global:
pid: /var/run/php5-fpm.pid

# php-cli os-specific settings
cli:
ini: /location/of/php-cli/php.ini

# php-fpm settings
fpm:

# settings for the php-fpm service
service:
# if True, enables the php-fpm service, if False disables it
enabled: True
# additional arguments passed forward to
# service.enabled/disabled
opts:
reload: True

# settings for the relevant php-fpm configuration files
config:

# options to manage the php.ini file used by php-fpm
ini:
# arguments passed through to file.managed
opts:
recurse: True
# php.ini file contents that will be merged with the
# defaults in php.ng.ini.defaults. See php.ng.ini.defaults for
# syntax guidelines.
settings:
PHP:
engine: 'Off'

# options to manage the php-fpm conf file
conf:
# arguments passed through to file.managed
opts:
recurse: True
# php-fpm conf file contents that will be merged with
# php.ng.lookup.fpm.defaults. See php.ng.ini.defaults for
# ini-style syntax guidelines.
settings:
global:
pid: /var/run/php-fpm/special-pid.file

# settings for fpm-pools
pools:
# name of the pool file to be managed, this will be appended
# to the path specified in php.ng.lookup.fpm.pools
'mypool.conf':
# If true, the pool file will be managed, if False it will be
# absent
enabled: True
# arguments passed forward to file.managed or file.absent
opts:
replace: False

# pool file contents. See php.ng.ini.defaults for ini-style
# syntax guidelines.
settings:
myapp:
user: www-data
group: www-data
listen: /var/run/php5-fpm-myapp.sock
pm: dynamic
pm.max_children: 5
pm.start_servers: 2
pm.min_spare_servers: 1
pm.max_spare_servers: 3
'php_admin_value[memory_limit]': 300M

# php-cli settings
cli:
# settings to manage the cli's php.ini
ini:
# opts passed forward directly to file.managed
opts:
replace: False
# contents of the php.ini file that are merged with defaults
# from php.ng.ini.defaults. See php.ng.ini.defaults for ini-style
# syntax guidelines
settings:
PHP:
engine: 'Off'

# global php.ini settings
ini:
# Default php.ini contents. These follow a strict format. The top-
# level dict keys form ini group headings. Nested key/value
# pairs represent setting=value statements. If a value is a list,
# its contents will be joined by commas in final rendering.
defaults:
PHP:
engine: on
output_buffering: 4096
disable_functions:
- pcntl_alarm
- pcntl_fork
- pcntl_wait
'CLI Server':
cli_server_color: 'On'

Laden…
Annuleren
Opslaan