php-formula/php/suhosin.sls

90 lines
2.3 KiB
Plaintext
Raw Normal View History

New structure for new Ubuntu PPA and other fixes (#113) * Initial commit for new branch * Quick change to base test files * Updated map.jinja, added `php` dependency for all subformulas * Fixing mongo module and map.jinja needed OpenSSL dev libraries * Should be final changes needed for Mongo module * Updating Suhosin package since many distros don't have package in their repos anymore * Generalizing suhosin module, and updating pillar.example for new PPA * Adding addtional logic for RedHat based families to Suhosin * Initial commit of NG refactored map.jinja file * Deleting FFMpeg state file since the module is quite old, and has been replaced by using a Composer library. See https://github.com/PHP-FFMpeg/PHP-FFMpeg for details * Updating NG formulas for new definitions * Removing 'twig' as a state since it can be installed via Composer * Changes to installed.jinja to set correct PHP path based on version * NG Composer and NG Suhosin changes * Version bump and deleting README for deleted states * Finished refactor of NG map.jinja file * Adding trailing commas (forgot them earler) * Adding changes list, and modifying map file for missing definitions when using Ubuntu 16.04 and NOT using a PPA * Changes needed after performing testing on RHEL 7 * Changes needed for Ubuntu Trusty without using PPA * Removing testing files; keep on local * Map changes needed after testing Debian Jessie * Changed needed for Debian Wheezy * Adding more pkgs for Arch Linux support * More ArchLinux support * Stupid tabs * Removing extra line breaks, and using the general "use_external_repo" in the future if DotDeb (Debian) or Webtactic (RedHat) * Accoutning for Precise `phpenmod` and others
2016-12-13 22:37:53 +01:00
{%- from "php/map.jinja" import php with context %}
2014-02-14 14:38:20 +01:00
New structure for new Ubuntu PPA and other fixes (#113) * Initial commit for new branch * Quick change to base test files * Updated map.jinja, added `php` dependency for all subformulas * Fixing mongo module and map.jinja needed OpenSSL dev libraries * Should be final changes needed for Mongo module * Updating Suhosin package since many distros don't have package in their repos anymore * Generalizing suhosin module, and updating pillar.example for new PPA * Adding addtional logic for RedHat based families to Suhosin * Initial commit of NG refactored map.jinja file * Deleting FFMpeg state file since the module is quite old, and has been replaced by using a Composer library. See https://github.com/PHP-FFMpeg/PHP-FFMpeg for details * Updating NG formulas for new definitions * Removing 'twig' as a state since it can be installed via Composer * Changes to installed.jinja to set correct PHP path based on version * NG Composer and NG Suhosin changes * Version bump and deleting README for deleted states * Finished refactor of NG map.jinja file * Adding trailing commas (forgot them earler) * Adding changes list, and modifying map file for missing definitions when using Ubuntu 16.04 and NOT using a PPA * Changes needed after performing testing on RHEL 7 * Changes needed for Ubuntu Trusty without using PPA * Removing testing files; keep on local * Map changes needed after testing Debian Jessie * Changed needed for Debian Wheezy * Adding more pkgs for Arch Linux support * More ArchLinux support * Stupid tabs * Removing extra line breaks, and using the general "use_external_repo" in the future if DotDeb (Debian) or Webtactic (RedHat) * Accoutning for Precise `phpenmod` and others
2016-12-13 22:37:53 +01:00
include:
- php
- php.dev
{%- set php_version = salt['pillar.get']('php:version', '7.0')|string %}
{%- if salt['grains.get']('os') == "Ubuntu" %}
{%- if php_version >= '7.0' %}
{%- set suhosin_ext = php.suhosin7_ext %}
{%- set suhosin_name = 'suhosin7' %}
{%- set suhosin_repo = php.suhosin7_repo %}
{%- set tmppath = '/tmp/suhosin7' %}
{%- else %}
{%- set suhosin_ext = php.suhosin5_ext %}
{%- set suhosin_name = 'suhosin' %}
{%- set suhosin_repo = php.suhosin5_repo %}
{%- set tmppath = '/tmp/suhosin5' %}
{%- endif %}
{%- elif salt['grains.get']('os_family') == "RedHat" %}
{%- if grains['osmajorrelease'] == "7" %}
{%- set suhosin_ext = php.suhosin5_ext %}
{%- set suhosin_name = 'suhosin' %}
{%- set suhosin_repo = php.suhosin5_repo %}
{%- set tmppath = '/tmp/suhosin5' %}
{%- else %}
{# RHEL version 6 contains PHP 5.3, which is not supported by Suhosin #}
{%- endif %}
{%- else %}
{%- set suhosin_ext = php.suhosin5_ext %}
{%- set suhosin_name = 'suhosin' %}
{%- set suhosin_repo = php.suhosin5_repo %}
{%- set tmppath = '/tmp/suhosin5' %}
{%- endif %}
build-pkgs:
2014-12-13 08:19:59 +01:00
pkg.installed:
New structure for new Ubuntu PPA and other fixes (#113) * Initial commit for new branch * Quick change to base test files * Updated map.jinja, added `php` dependency for all subformulas * Fixing mongo module and map.jinja needed OpenSSL dev libraries * Should be final changes needed for Mongo module * Updating Suhosin package since many distros don't have package in their repos anymore * Generalizing suhosin module, and updating pillar.example for new PPA * Adding addtional logic for RedHat based families to Suhosin * Initial commit of NG refactored map.jinja file * Deleting FFMpeg state file since the module is quite old, and has been replaced by using a Composer library. See https://github.com/PHP-FFMpeg/PHP-FFMpeg for details * Updating NG formulas for new definitions * Removing 'twig' as a state since it can be installed via Composer * Changes to installed.jinja to set correct PHP path based on version * NG Composer and NG Suhosin changes * Version bump and deleting README for deleted states * Finished refactor of NG map.jinja file * Adding trailing commas (forgot them earler) * Adding changes list, and modifying map file for missing definitions when using Ubuntu 16.04 and NOT using a PPA * Changes needed after performing testing on RHEL 7 * Changes needed for Ubuntu Trusty without using PPA * Removing testing files; keep on local * Map changes needed after testing Debian Jessie * Changed needed for Debian Wheezy * Adding more pkgs for Arch Linux support * More ArchLinux support * Stupid tabs * Removing extra line breaks, and using the general "use_external_repo" in the future if DotDeb (Debian) or Webtactic (RedHat) * Accoutning for Precise `phpenmod` and others
2016-12-13 22:37:53 +01:00
- pkgs: {{ php.build_pkgs }}
git:
pkg.installed: []
suhosin-source:
git.latest:
- name: {{ suhosin_repo }}
- target: {{ tmppath }}
- unless:
- test -d {{ tmppath }}
- require:
- pkg: git
install-suhosin:
cmd.run:
- name: |
phpize
./configure
make
make install
- cwd: {{ tmppath }}
- shell: /bin/bash
- runas: root
- unless:
- test -e {{ php.ext_conf_path }}/{{ suhosin_name }}.ini
- require:
- pkg: build-pkgs
- git: suhosin-source
php-suhosin-conf:
file.managed:
- name: {{ php.ext_conf_path }}/{{ suhosin_name }}.ini
- contents: |
extension={{ suhosin_ext }}
suhosin.executor.include.whitelist=phar
- require:
- pkg: {{ php.php_pkg }}
- cmd: install-suhosin
- unless:
- test -e {{ php.ext_conf_path }}/{{ suhosin_name }}.ini
{%- if salt['grains.get']('os_family') == "Debian" %}
php-suhosin-enable:
cmd.run:
- name: {{ php.phpenmod_command }} {{ suhosin_name }}
- require:
- file: php-suhosin-conf
{%- endif %}