Commit 4e6e2680 by John Jarvis

updating supervisor to use a venv

parent 32199c7b
...@@ -11,5 +11,16 @@ ...@@ -11,5 +11,16 @@
# Defaults for role supervisor # Defaults for role supervisor
# #
--- ---
supervisor_log_dir: /var/log/supervisor
supervisor_cfg: /etc/supervisord.conf supervisor_app_dir: "{{ app_dir }}/supervisor"
supervisor_cfg_dir: "{{ supervisor_app_dir }}/conf.d"
supervisor_data_dir: "{{ data_dir }}/supervisor"
supervisor_venvs_dir: "{{ venvs_dir }}/supervisor"
supervisor_venv_dir: "{{ supervisor_venvs_dir }}/supervisor"
supervisor_venv_bin: "{{ supervisor_venv_dir }}/bin"
# by default supervisor runs as the web user
# which by default is set to www-data in
# the common role
supervisor_user: "{{ common_web_user }}"
edxapp_log_dir: "{{ log_dir }}/supervisor"
supervisor_cfg: "{{ supervisor_app_dir }}/supervisord.conf"
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
# Parameterized role for supervisord # Parameterized role for supervisord
# Supervisor templates must exist in the # Supervisor templates must exist in the
# templates/ dir for each server # templates/ dir for each server
# #
# Dependencies: # Dependencies:
# - common # - common
# #
...@@ -29,24 +29,31 @@ ...@@ -29,24 +29,31 @@
- fail: supervisor_servers is a required parameter for this role - fail: supervisor_servers is a required parameter for this role
when: supervisor_servers is not defined when: supervisor_servers is not defined
- name: supervisor | install supervisor at the system level
pip: name=supervisor state=present
- name: supervisor | create supervisor directories - name: supervisor | create supervisor directories
file: name={{ item }} state=directory file: >
name={{ item }}
state=directory
owner={{ supervisor_user }}
group={{ supervisor_user }}
with_items: with_items:
- /etc/supervisor - "{{ supervisor_app_dir }}"
- /etc/supervisor/conf.d - "{{ supervisor_cfg_dir }}"
- "{{ superivsor_data_dir }}"
- "{{ supervisor_venvs_dir }}"
- "{{ supervisor_log_dir }}" - "{{ supervisor_log_dir }}"
- name: supervisor | install supervisor in its venv
pip: name=supervisor virtualenv="{{supervisor_venv_dir}}" state=present
- name: supervisor | create supervisor upstart job - name: supervisor | create supervisor upstart job
template: src=supervisor-upstart.conf.j2 dest=/etc/init/supervisor.conf template: src=supervisor-upstart.conf.j2 dest={{ supervisor_cfg }}
- name: supervisor | create supervisor master config - name: supervisor | create supervisor master config
template: src=supervisord.conf.j2 dest={{ supervisor_cfg }} template: src=supervisord.conf.j2 dest={{ supervisor_cfg }}
- name: supervisor | create supervisor configs - name: supervisor | create supervisor configs
template: src={{ item }}.conf.j2 dest=/etc/supervisor/conf.d/{{ item }}.conf template: src={{ item }}.conf.j2 dest={{ supervisor_cfg_dir }}/{{ item }}.conf
with_items: supervisor_servers with_items: supervisor_servers
- name: supervisor | ensure supervisor is started - name: supervisor | ensure supervisor is started
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment