Saltstack Official PHP Formula
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

macro.jinja 1.2KB

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
8 years ago
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
8 years ago
12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. # -*- coding: utf-8 -*-
  2. # vim: ft=jinja
  3. {# Returns a generic block of values suitable for inclusion in most states #}
  4. {% macro sls_block(dict, ind=4) %}
  5. {% for key, value in dict.items() %}
  6. {{ '-'|indent(ind, True) }} {{ key }}: {{ value|json() }}
  7. {% endfor %}
  8. {% endmacro %}
  9. {# Serializes dicts into sequenced data #}
  10. {%- macro serialize(data) -%}
  11. {%- if data is mapping -%}
  12. {%- set ret = [] -%}
  13. {%- for key, value in data.items() -%}
  14. {%- set value = serialize(value)|load_json() -%}
  15. {%- do ret.append({key: value}) -%}
  16. {%- endfor -%}
  17. {%- elif data is iterable and data is not string -%}
  18. {%- set ret = [] -%}
  19. {%- for value in data -%}
  20. {%- set value = serialize(value)|load_json() -%}
  21. {%- do ret.append(value) -%}
  22. {%- endfor -%}
  23. {%- else -%}
  24. {% set ret = data %}
  25. {%- endif -%}
  26. {{ ret|json() }}
  27. {%- endmacro -%}
  28. {% macro file_requisites(states) %}
  29. {%- for state in states %}
  30. - file: {{ state }}
  31. {%- endfor -%}
  32. {% endmacro %}
  33. {%- macro format_kwargs(kwarg) -%}
  34. {%- filter indent(4) %}
  35. {%- for k, v in kwarg|dictsort() %}
  36. - {{ k }}: {{ v }}
  37. {%- endfor %}
  38. {%- endfilter %}
  39. {%- endmacro %}