Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
configuration
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
configuration
Commits
e48399ba
Commit
e48399ba
authored
Oct 30, 2013
by
John Jarvis
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #381 from antoviaque/supervisor-xqueue
Move xqueue to supervisor
parents
aed38103
e495268a
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
68 additions
and
53 deletions
+68
-53
playbooks/roles/xqueue/defaults/main.yml
+1
-0
playbooks/roles/xqueue/handlers/main.yml
+20
-7
playbooks/roles/xqueue/tasks/deploy.yml
+31
-9
playbooks/roles/xqueue/tasks/main.yml
+0
-6
playbooks/roles/xqueue/templates/xqueue.conf.j2
+9
-18
playbooks/roles/xqueue/templates/xqueue_consumer.conf.j2
+7
-13
No files found.
playbooks/roles/xqueue/defaults/main.yml
View file @
e48399ba
...
...
@@ -39,6 +39,7 @@ XQUEUE_DJANGO_PASSWORD: 'password'
XQUEUE_RABBITMQ_USER
:
'
edx'
XQUEUE_RABBITMQ_PASS
:
'
edx'
XQUEUE_RABBITMQ_HOSTNAME
:
'
localhost'
XQUEUE_LANG
:
'
en_US.UTF-8'
XQUEUE_MYSQL_DB_NAME
:
'
xqueue'
XQUEUE_MYSQL_USER
:
'
root'
...
...
playbooks/roles/xqueue/handlers/main.yml
View file @
e48399ba
-
name
:
xqueue | stop xqueue
service
:
name=xqueue state=stopped
supervisorctl
:
>
name=xqueue
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=stopped
tags
:
-
xqueue
-
deploy
-
name
:
xqueue | start xqueue
service
:
name=xqueue state=started
supervisorctl
:
>
name=xqueue
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=started
tags
:
-
xqueue
-
deploy
-
name
:
xqueue | restart xqueue
service
:
name=xqueue state=restarted
supervisorctl
:
>
name=xqueue
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=restarted
tags
:
-
xqueue
-
deploy
-
name
:
xqueue | restart xqueue consumer
service
:
name=xqueue_consumer state=restarted
supervisorctl
:
>
name=xqueue_consumer
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=restarted
playbooks/roles/xqueue/tasks/deploy.yml
View file @
e48399ba
# Stop xqueue service.
-
name
:
xqueue | stop xqueue service
service
:
name=xqueue state=stopped
supervisorctl
:
>
name=xqueue
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=stopped
tags
:
-
deploy
-
name
:
xqueue | stop xqueue consumer service
service
:
name=xqueue_consumer state=stopped
supervisorctl
:
>
name=xqueue_consumer
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=stopped
tags
:
-
deploy
...
...
@@ -21,6 +29,17 @@
tags
:
-
deploy
-
name
:
"
xqueue
|
writing
supervisor
scripts
-
xqueue,
xqueue
consumer"
template
:
>
src={{ item }}.conf.j2 dest={{ supervisor_cfg_dir }}/{{ item }}.conf
owner={{ supervisor_user }} group={{ common_web_user }} mode=0644
with_items
:
[
'
xqueue'
,
'
xqueue_consumer'
]
tags
:
-
deploy
-
name
:
xqueue | reload supervisor to allow to start the new services
shell
:
"
{{
supervisor_ctl
}}
-c
{{
supervisor_cfg
}}
reload"
# Do A Checkout
-
name
:
xqueue | git checkout xqueue repo into xqueue_code_dir
git
:
dest={{ xqueue_code_dir }} repo={{ xqueue_source_repo }} version={{ xqueue_version }}
...
...
@@ -58,17 +77,20 @@
tags
:
-
deploy
-
name
:
xqueue | stop xqueue
service
:
name=xqueue state=stopped
tags
:
-
deploy
-
name
:
xqueue | start xqueue
service
:
name=xqueue state=started
supervisorctl
:
>
name=xqueue
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=started
tags
:
-
deploy
-
name
:
xqueue | start xqueue consumer
service
:
name=xqueue_consumer state=started
supervisorctl
:
>
name=xqueue_consumer
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=started
tags
:
-
deploy
playbooks/roles/xqueue/tasks/main.yml
View file @
e48399ba
...
...
@@ -40,12 +40,6 @@
encoding=utf8
when
:
xqueue_create_db is defined and xqueue_create_db|lower == "yes"
-
name
:
xqueue | creating xqueue upstart script
template
:
src=xqueue.conf.j2 dest=/etc/init/xqueue.conf mode=0640 owner=root group=adm
-
name
:
xqueue | create xqueue consumer upstart script
template
:
src=xqueue_consumer.conf.j2 dest=/etc/init/xqueue_consumer.conf mode=0640 owner=root group=adm
-
include
:
deploy.yml
-
name
:
xqueue | create a symlink for venv python
...
...
playbooks/roles/xqueue/templates/xqueue.conf.j2
View file @
e48399ba
#/etc/init/xqueue.conf
[program:xqueue]
description "xqueue server"
author "edX <info@edx.org>"
respawn
respawn limit 3 30
env PID=/var/tmp/xqueue.pid
{% if ansible_processor|length > 0 %}
env WORKERS={{ ansible_processor|length * 2 }}
command={{ xqueue_venv_bin }}/gunicorn --preload -b {{ xqueue_gunicorn_host }}:{{ xqueue_gunicorn_port }} -w {{ ansible_processor|length * 2 }} --timeout=300 --pythonpath={{ xqueue_code_dir }} xqueue.wsgi
{% else %}
env WORKERS=2
command={{ xqueue_venv_bin }}/gunicorn --preload -b {{ xqueue_gunicorn_host }}:{{ xqueue_gunicorn_port }} -w 2 --timeout=300 --pythonpath={{ xqueue_code_dir }} xqueue.wsgi
{% endif %}
env PORT={{ xqueue_gunicorn_port }}
env ADDRESS={{ xqueue_gunicorn_host }}
env LANG=en_US.UTF-8
env DJANGO_SETTINGS_MODULE=xqueue.aws_settings
env SERVICE_VARIANT="xqueue"
user={{ common_web_user }}
directory={{ xqueue_code_dir }}
environment=PID=/var/tmp/xqueue.pid,PORT={{ xqueue_gunicorn_port }},ADDRESS={{ xqueue_gunicorn_host }},LANG={{ XQUEUE_LANG }},DJANGO_SETTINGS_MODULE=xqueue.aws_settings,SERVICE_VARIANT="xqueue"
chdir {{ xqueue_code_dir }}
s
etuid {{ xqueue_user }}
stdout_logfile={{ supervisor_log_dir }}/%(program_name)-stdout.log
s
tderr_logfile={{ supervisor_log_dir }}/%(program_name)-stderr.log
exec {{ xqueue_venv_dir }}/bin/gunicorn --preload -b $ADDRESS:$PORT -w $WORKERS --timeout=300 --pythonpath={{ xqueue_code_dir }} xqueue.wsgi
playbooks/roles/xqueue/templates/xqueue_consumer.conf.j2
View file @
e48399ba
# gunicorn
[program:xqueue_consumer]
description "xqueue server"
author "devops <devops@edx.org>"
command={{xqueue_venv_bin}}/django-admin.py run_consumer --pythonpath={{xqueue_code_dir}} --settings=xqueue.aws_settings $WORKERS_PER_QUEUE
start on runlevel [2345]
stop on runlevel [!2345]
user={{ common_web_user }}
directory={{ xqueue_code_dir }}
respawn
respawn limit 3 30
environment=LANG={{ XQUEUE_LANG }},WORKERS_PER_QUEUE={{xqueue_env_config.XQUEUE_WORKERS_PER_QUEUE}},SERVICE_VARIANT="xqueue"
env LANG=en_US.UTF-8
env WORKERS_PER_QUEUE={{xqueue_env_config.XQUEUE_WORKERS_PER_QUEUE}}
env SERVICE_VARIANT="xqueue"
chdir {{xqueue_code_dir}}
setuid {{ xqueue_user }}
stdout_logfile={{ supervisor_log_dir }}/%(program_name)-stdout.log
stderr_logfile={{ supervisor_log_dir }}/%(program_name)-stderr.log
exec {{xqueue_venv_dir}}/bin/django-admin.py run_consumer --pythonpath={{xqueue_code_dir}} --settings=xqueue.aws_settings $WORKERS_PER_QUEUE
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment