|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- # 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 %}
-
- {% if grains['os_family']=="Debian" and (state == 'cli' or state == 'fpm' or state == 'php') %}
- {% set use_ppa = salt['pillar.get']('php:use_ppa', False) %}
- {% if use_ppa %}
-
- {% set ppa_name = salt['pillar.get']('php:ppa_name', 'ondrej/php5') %}
-
- php_ppa_env_{{ state }}:
- cmd.run:
- - name: apt-add-repository -y ppa:{{ ppa_name }}
- - env:
- - LC_ALL: C.UTF-8
- - unless: test -f /etc/apt/sources.list.d/{{ ppa_name|replace('/', '-', 1) }}-trusty.list
-
- php_ppa_{{ state }}:
- pkgrepo.managed:
- - ppa: {{ ppa_name }}
- - require:
- - cmd: php_ppa_env_{{ state }}
- - require_in:
- - pkg: php_install_{{ state }}
- pkg.latest:
- - name: {{ state }}
- - pkgs: {{ pkgs|json() }}
- - refresh: True
- - onchanges:
- - pkgrepo: php_ppa_{{ state }}
- {% endif %}
- {% 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 %}
|