Commit 57afc315 by John Jarvis

updating xqueue for new directory structure

parent de71ca54
......@@ -5,6 +5,8 @@
data_dir: /edx/var
app_dir: /edx/app
log_dir: "{{ data_dir }}/log"
venvs_dir: "{{ app_dir }}/venvs"
os_name: ubuntu
ENV_NAME: 'default_env'
......
......@@ -95,8 +95,7 @@ EDXAPP_LMS_PREVIEW_BASIC_AUTH: False
edxapp_data_dir: "{{ data_dir }}/edxapp"
edxapp_app_dir: "{{ app_dir }}/edxapp"
edxapp_log_dir: "{{ log_dir }}/edxapp"
edxapp_venvs_dir: "{{ app_dir }}/venvs"
edxapp_venv_dir: "{{ edxapp_venvs_dir }}/edxapp"
edxapp_venv_dir: "{{ venvs_dir }}/edxapp"
edxapp_venv_bin: "{{ edxapp_venv_dir }}/bin"
edxapp_rbenv_dir: "{{ edxapp_app_dir }}"
edxapp_rbenv_root: "{{ edxapp_rbenv_dir }}/.rbenv"
......
......@@ -4,19 +4,19 @@
XQUEUE_NGINX_PORT: 18040
XQUEUE_BASIC_AUTH: False
xqueue_code_dir: "{{ app_dir }}/xqueue"
xqueue_app_dir: "{{ app_dir }}/xqueue"
xqueue_code_dir: "{{ xqueue_app_dir }}/xqueue"
xqueue_data_dir: "{{ data_dir }}/xqueue"
xqueue_venv_dir: "{{ venvs_dir }}/xqueue"
xqueue_venv_bin: "{{ xqueue_venv_dir }}/bin"
xqueue_user: "xqueue"
# Default nginx listen port
# These should be overrided if you want
# to serve all content on port 80
xqueue_code_dir: "{{ app_dir }}/xqueue"
xqueue_gunicorn_port: 8040
xqueue_gunicorn_host: 127.0.0.1
xqueue_user: "xqueue"
xqueue_user_home: "/opt/xqueue"
xqueue_venv_dir: "{{ xqueue_user_home }}/virtualenvs/{{ xqueue_user }}"
XQUEUE_QUEUES:
# push queue
'edX-DemoX': 'http://localhost:18050'
......
......@@ -2,97 +2,72 @@
- name: xqueue | stop xqueue service
service: name=xqueue state=stopped
tags:
- xqueue
- deploy
- name: xqueue | stop xqueue consumer service
service: name=xqueue_consumer state=stopped
tags:
- xqueue
- deploy
- name: xqueue | create xqueue application config
template: src=xqueue.env.json.j2 dest={{app_dir}}/xqueue.env.json mode=0640 owner={{ xqueue_user }} group=adm
template: src=xqueue.env.json.j2 dest={{xqueue_app_dir}}/xqueue.env.json mode=0640 owner={{ xqueue_user }} group=adm
sudo_user: "{{ xqueue_user }}"
tags:
- xqueue
- deploy
- name: xqueue | create xqueue auth file
template: src=xqueue.auth.json.j2 dest={{app_dir}}/xqueue.auth.json mode=0640 owner={{ xqueue_user }} group=adm
template: src=xqueue.auth.json.j2 dest={{xqueue_app_dir}}/xqueue.auth.json mode=0640 owner={{ xqueue_user }} group=adm
sudo_user: "{{ xqueue_user }}"
tags:
- xqueue
- deploy
# Do A Checkout
- name: xqueue | git checkout xqueue repo into {{app_dir}}
git: dest={{xqueue_code_dir}} repo={{xqueue_source_repo}} version={{xqueue_version}}
sudo_user: "{{ xqueue_user }}"
tags:
- xqueue
- deploy
# Do Post Checkout Tasks.
- name: xqueue | create xqueue code dir
file: path={{xqueue_code_dir}} state=directory owner={{ xqueue_user }} group={{ xqueue_user }} mode=755
tags:
- xqueue
- deploy
# TODO: Check git.py _run_if_changed() to see if the logic there to skip running certain
# portions of the deploy needs to be incorporated here.
- name: xqueue | sets permissions on xqueue code dir and contents
file: path={{xqueue_code_dir}} state=directory owner={{ xqueue_user }} group={{ xqueue_user }} recurse=yes
# Post Checkout tasks will get run as handlers when the {{ xqueue_code_dir }} is ready.
# Look at the handlers/main.yml in this role for a description of the tasks stated below.
tags:
- xqueue
- deploy
# Install the python pre requirements into {{ xqueue_venv_dir }}
- name : install python pre-requirements
pip: requirements="{{xqueue_pre_requirements_file}}" virtualenv="{{xqueue_venv_dir}}" state=present
sudo_user: "{{ xqueue_user }}"
tags:
- xqueue
- deploy
# Install the python post requirements into {{ xqueue_venv_dir }}
- name : install python post-requirements
pip: requirements="{{xqueue_post_requirements_file}}" virtualenv="{{xqueue_venv_dir}}" state=present
sudo_user: "{{ xqueue_user }}"
tags:
- xqueue
- deploy
- name: xqueue | syncdb and migrate
shell: sudo -u {{ xqueue_user }} SERVICE_VARIANT=xqueue {{ xqueue_venv_dir }}/bin/django-admin.py syncdb --migrate --noinput --settings=xqueue.aws_settings --pythonpath=/opt/wwc/xqueue
shell: SERVICE_VARIANT=xqueue {{ xqueue_venv_dir }}/bin/django-admin.py syncdb --migrate --noinput --settings=xqueue.aws_settings --pythonpath=/opt/wwc/xqueue
when: migrate_db is defined and migrate_db|lower == "yes"
sudo_user: "{{ xqueue_user }}"
tags:
- xqueue
- syncdb
- deploy
- name: xqueue | create users
shell: sudo -u {{ xqueue_user }} SERVICE_VARIANT=xqueue {{ xqueue_venv_dir }}/bin/django-admin.py update_users --settings=xqueue.aws_settings --pythonpath=/opt/wwc/xqueue
shell: SERVICE_VARIANT=xqueue {{ xqueue_venv_dir }}/bin/django-admin.py update_users --settings=xqueue.aws_settings --pythonpath=/opt/wwc/xqueue
when: update_users is defined
sudo_user: "{{ xqueue_user }}"
tags:
- xqueue
- syncdb
- deploy
- name: xqueue | stop xqueue
service: name=xqueue state=stopped
tags:
- xqueue
- deploy
- name: xqueue | start xqueue
service: name=xqueue state=started
tags:
- xqueue
- deploy
- name: xqueue | start xqueue consumer
service: name=xqueue_consumer state=started
tags:
- xqueue
- deploy
......@@ -3,46 +3,30 @@
# - common/tasks/main.yml
---
# Check out xqueue repo to {{xqueue_code_dir}}
- name: xqueue | install git and its recommends
apt: pkg=git state=present install_recommends=yes
tags:
- xqueue
#
#
- name: xqueue | create application user
user: >
name="{{ xqueue_user }}"
home="{{ xqueue_app_dir }}"
createhome=no
shell=/bin/false
- name: xqueue | create xqueue app dir
file: >
path="{{ xqueue_app_dir }}"
state=directory
owner="{{ xqueue_user }}"
group="{{ common_web_group }}"
- name: xqueue | install a bunch of system packages on which xqueue relies
apt: pkg={{','.join(xqueue_debian_pkgs)}} state=present
notify:
- xqueue | restart xqueue
- xqueue | restart xqueue consumer
tags:
- xqueue
- name: xqueue | create {{ xqueue_user_home }}
# workaround for the case where the parent
# directory doesn't exist
file: >
path={{ xqueue_user_home }}
state=directory
- name: xqueue | create xqueue user {{ xqueue_user }}
user: >
name={{ xqueue_user }}
state=present
shell=/bin/bash
home={{ xqueue_user_home }}
createhome=yes
tags:
- forum
- update
- name: xqueue | ensure homedir permissions {{ xqueue_user_home }}
# workaround for the case where the parent
# directory doesn't exist
file: >
path={{ xqueue_user_home }}
owner={{ xqueue_user }}
group={{ xqueue_user }}
state=directory
recurse=yes
- name: xqueue | create xqueue db
mysql_db: >
......@@ -56,17 +40,8 @@
- name: xqueue | creating xqueue upstart script
template: src=xqueue.conf.j2 dest=/etc/init/xqueue.conf mode=0640 owner=root group=adm
tags:
- xqueue
- deploy
- 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
tags:
- xqueue
- deploy
- include: deploy.yml
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