Browse Source

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

Signed-off-by: René Jochum <rene@jochums.at>
master
René Jochum 9 years ago
parent
commit
90282eff03
3 changed files with 50 additions and 13 deletions
  1. +4
    -0
      pillar.example
  2. +44
    -11
      salt/api.sls
  3. +2
    -2
      salt/defaults.yaml

+ 4
- 0
pillar.example View File

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:



+ 44
- 11
salt/api.sls View File



{% from "salt/map.jinja" import salt_settings with context %} {% from "salt/map.jinja" import salt_settings with context %}


{%- 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: include:
- salt.master - salt.master
{%- if use_pip %}
- pip.extensions - pip.extensions

{%- set cfg_salt = pillar.get('salt', {}) %}
{%- set cfg_master = cfg_salt.get('master', {}) %}
{%- endif %}


salt_api_install: salt_api_install:
pkg.installed: pkg.installed:
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:
- name: {{ salt_settings['python-cherrypy'] }}
pip.installed:
pkg:
- purged
- name: {{ salt_settings['python_cherrypy'] }}
pip:
- installed
- name: cherrypy - name: cherrypy
- require: - require:
- pkg: salt_api_cherrypy - pkg: salt_api_cherrypy


{%- if 'rest_tornado' in cfg_master %} {%- if 'rest_tornado' in cfg_master %}
salt_api_tornado: salt_api_tornado:
pkg.purged:
- name: {{ salt_settings['python-tornado'] }}
pip.installed:
pkg:
- purged
- 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 %}

+ 2
- 2
salt/defaults.yaml View File

salt_api: salt-api salt_api: salt-api
salt_ssh: salt-ssh salt_ssh: salt-ssh


python-cherrypy: python-cherrypy
python-tornado: python-tornado
python_cherrypy: python-cherrypy
python_tornado: python-tornado


master: master:
gitfs_provider: gitpython gitfs_provider: gitpython

Loading…
Cancel
Save