Install cherrypy/tornado from pip only if use_pip is True.

Signed-off-by: René Jochum <rene@jochums.at>
This commit is contained in:
René Jochum 2015-07-13 22:08:20 +02:00
parent 8a1b8dc9db
commit 90282eff03
3 changed files with 51 additions and 14 deletions

View File

@ -38,6 +38,10 @@ salt:
debug: False debug: False
disable_ssl: False disable_ssl: False
api:
# Installs the latest version of cherrpy/tornado from pip.
use_pip: True
# salt minion config: # salt minion config:
minion: minion:

View File

@ -2,12 +2,15 @@
{% from "salt/map.jinja" import salt_settings with context %} {% from "salt/map.jinja" import salt_settings with context %}
include:
- salt.master
- pip.extensions
{%- set cfg_salt = pillar.get('salt', {}) %} {%- set cfg_salt = pillar.get('salt', {}) %}
{%- set cfg_master = cfg_salt.get('master', {}) %} {%- set cfg_master = cfg_salt.get('master', {}) %}
{%- set use_pip = salt['pillar.get']('salt:api:use_pip', False) %}
include:
- salt.master
{%- if use_pip %}
- pip.extensions
{%- endif %}
salt_api_install: salt_api_install:
pkg.installed: pkg.installed:
@ -15,20 +18,31 @@ salt_api_install:
service.running: service.running:
- name: {{ salt_settings.get('api_service', 'salt-api') }} - name: {{ salt_settings.get('api_service', 'salt-api') }}
- require: - require:
{%- if use_pip %}
{%- if 'rest_cherrypy' in cfg_master %} {%- if 'rest_cherrypy' in cfg_master %}
- pip: salt_api_cherrypy - pip: salt_api_cherrypy
{% elif 'rest_tornado' in cfg_master %} {%- elif 'rest_tornado' in cfg_master %}
- pip: salt_api_tornado - pip: salt_api_tornado
{% endif %} {%- endif %}
{%- else %} # if use_pip
{%- if 'rest_cherrypy' in cfg_master %}
- pkg: salt_api_cherrypy
{%- elif 'rest_tornado' in cfg_master %}
- pkg: salt_api_tornado
{%- endif %}
{%- endif %}
- watch: - watch:
- pkg: salt-master - pkg: salt-master
- file: salt-master - file: salt-master
{%- if use_pip %}
{%- if 'rest_cherrypy' in cfg_master %} {%- if 'rest_cherrypy' in cfg_master %}
salt_api_cherrypy: salt_api_cherrypy:
pkg.purged: pkg:
- name: {{ salt_settings['python-cherrypy'] }} - purged
pip.installed: - name: {{ salt_settings['python_cherrypy'] }}
pip:
- installed
- name: cherrypy - name: cherrypy
- require: - require:
- pkg: salt_api_cherrypy - pkg: salt_api_cherrypy
@ -37,11 +51,30 @@ salt_api_cherrypy:
{%- if 'rest_tornado' in cfg_master %} {%- if 'rest_tornado' in cfg_master %}
salt_api_tornado: salt_api_tornado:
pkg.purged: pkg:
- name: {{ salt_settings['python-tornado'] }} - purged
pip.installed: - name: {{ salt_settings['python_tornado'] }}
pip:
- installed
- name: tornado - name: tornado
- require: - require:
- pkg: salt_api_tornado - pkg: salt_api_tornado
- pkg: pip_extensions - pkg: pip_extensions
{% endif %} {% endif %}
{%- else %} # if use_pip
{% if 'rest_cherrypy' in cfg_master %}
salt_api_cherrypy:
pkg:
- installed
- name: {{ salt_settings['python_cherrypy'] }}
{% endif %}
{% if 'rest_tornado' in cfg_master %}
salt_api_tornado:
pkg:
- installed
- name: {{ salt_settings['python_tornado'] }}
{% endif %}
{%- endif %}

View File

@ -18,8 +18,8 @@ salt:
salt_api: salt-api salt_api: salt-api
salt_ssh: salt-ssh salt_ssh: salt-ssh
python-cherrypy: python-cherrypy python_cherrypy: python-cherrypy
python-tornado: python-tornado python_tornado: python-tornado
master: master:
gitfs_provider: gitpython gitfs_provider: gitpython