Merge pull request #32 from xclusv/feature-composer
Add php.composer state
This commit is contained in:
commit
2cf2d020e2
@ -40,6 +40,11 @@ Installs the php-cgi package.
|
|||||||
|
|
||||||
Installs the php-cli package.
|
Installs the php-cli package.
|
||||||
|
|
||||||
|
``php.composer``
|
||||||
|
-----------
|
||||||
|
|
||||||
|
Installs [composer](https://getcomposer.org) and keeps it updated.
|
||||||
|
|
||||||
``php.curl``
|
``php.curl``
|
||||||
------------
|
------------
|
||||||
|
|
||||||
|
34
php/composer.sls
Normal file
34
php/composer.sls
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
{% from "php/map.jinja" import php with context %}
|
||||||
|
{% set install_file = php.local_bin + '/composer' %}
|
||||||
|
|
||||||
|
include:
|
||||||
|
- php
|
||||||
|
|
||||||
|
get-composer:
|
||||||
|
cmd.run:
|
||||||
|
- name: 'CURL=`which curl`; $CURL -sS https://getcomposer.org/installer | php'
|
||||||
|
- unless: test -f {{ install_file }}
|
||||||
|
- cwd: {{ php.temp_dir }}
|
||||||
|
- require:
|
||||||
|
- pkg: php
|
||||||
|
|
||||||
|
install-composer:
|
||||||
|
cmd.wait:
|
||||||
|
- name: mv {{ php.temp_dir }}/composer.phar {{ install_file }}
|
||||||
|
- cwd: {{ php.temp_dir }}
|
||||||
|
- watch:
|
||||||
|
- cmd: 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.temp_dir }}
|
||||||
|
- require:
|
||||||
|
- cmd: install-composer
|
@ -32,6 +32,8 @@
|
|||||||
'mongo_pecl': 'mongo',
|
'mongo_pecl': 'mongo',
|
||||||
'mongo_ext': 'mongo.so',
|
'mongo_ext': 'mongo.so',
|
||||||
'ext_conf_path': '/etc/php5/mods-available',
|
'ext_conf_path': '/etc/php5/mods-available',
|
||||||
|
'local_bin': '/usr/local/bin',
|
||||||
|
'temp_dir': '/tmp',
|
||||||
},
|
},
|
||||||
'RedHat': {
|
'RedHat': {
|
||||||
'php_pkg': 'php',
|
'php_pkg': 'php',
|
||||||
@ -66,5 +68,7 @@
|
|||||||
'mongo_pecl': 'mongo',
|
'mongo_pecl': 'mongo',
|
||||||
'mongo_ext': 'mongo.so',
|
'mongo_ext': 'mongo.so',
|
||||||
'ext_conf_path': '/etc/php5/conf.d',
|
'ext_conf_path': '/etc/php5/conf.d',
|
||||||
|
'local_bin': '/usr/local/bin',
|
||||||
|
'temp_dir': '/tmp',
|
||||||
},
|
},
|
||||||
}, merge=salt['pillar.get']('php:lookup')) %}
|
}, merge=salt['pillar.get']('php:lookup')) %}
|
||||||
|
Loading…
Reference in New Issue
Block a user