1e3e3032f3
* 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
50 lines
1.6 KiB
Plaintext
50 lines
1.6 KiB
Plaintext
{% from "php/ng/map.jinja" import php with context %}
|
|
|
|
{% set install_file = php.lookup.pkgs.local_bin + '/' + php.lookup.pkgs.composer_bin %}
|
|
|
|
{% if not salt['config.get']('sudo_user') %}
|
|
{% set salt_user = salt['config.get']('user', 'root') %}
|
|
{% else %}
|
|
{% set salt_user = salt['config.get']('sudo_user', 'root') %}
|
|
{% endif %}
|
|
|
|
{% set salt_user_home = salt['user.info'](salt_user).get('home', '/root') %}
|
|
|
|
include:
|
|
- php.ng
|
|
|
|
get-composer:
|
|
file.managed:
|
|
- name: {{ php.lookup.pkgs.temp_dir }}/installer
|
|
- mode: 0755
|
|
- unless: test -f {{ install_file }}
|
|
- source: https://getcomposer.org/installer
|
|
- source_hash: https://composer.github.io/installer.sig
|
|
- require:
|
|
- pkg: php
|
|
|
|
install-composer:
|
|
cmd.run:
|
|
- name: php {{ php.lookup.pkgs.temp_dir }}/installer --filename={{ php.lookup.pkgs.composer_bin }} --install-dir={{ php.lookup.pkgs.local_bin }}
|
|
- unless: test -f {{ install_file }}
|
|
- env:
|
|
- HOME: {{ salt_user_home }}
|
|
- require:
|
|
- file: get-composer
|
|
|
|
# Get COMPOSER_DEV_WARNING_TIME from the installed composer, and if that time has passed
|
|
# then it's time to run `composer selfupdate`
|
|
#
|
|
# It would be nice if composer had a command line switch to get this, but it doesn't,
|
|
# and so we just grep for it.
|
|
#
|
|
update-composer:
|
|
cmd.run:
|
|
- name: "{{ install_file }} selfupdate"
|
|
- unless: test $(grep --text COMPOSER_DEV_WARNING_TIME {{ install_file }} | egrep '^\s*define' | sed -e 's,[^[:digit:]],,g') \> $(php -r 'echo time();')
|
|
- cwd: {{ php.lookup.pkgs.local_bin }}
|
|
- env:
|
|
- HOME: {{ salt_user_home }}
|
|
- require:
|
|
- cmd: install-composer
|