2
0

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
disable_ssl: False
api:
# Installs the latest version of cherrpy/tornado from pip.
use_pip: True
# salt minion config:
minion:

View File

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