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
b868764e
Commit
b868764e
authored
Jul 02, 2013
by
John Jarvis
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #138 from edx/jarv/ora-conf
Jarv/ora conf
parents
82e66a6c
1b1c92e4
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
164 additions
and
51 deletions
+164
-51
playbooks/edx_jenkins_tests.yml
+2
-0
playbooks/edx_provision_test.yml
+1
-0
playbooks/roles/ora/handlers/main.yml
+5
-0
playbooks/roles/ora/tasks/deploy.yml
+29
-42
playbooks/roles/ora/tasks/ease.yml
+11
-9
playbooks/roles/ora/tasks/main.yml
+26
-0
playbooks/roles/ora/templates/edx-ora-celery.conf.j2
+17
-0
playbooks/roles/ora/templates/edx-ora.conf.j2
+24
-0
playbooks/roles/ora/vars/main.yml
+44
-0
playbooks/secure_example/vars/edx_jenkins_tests.yml
+5
-0
No files found.
playbooks/edx_jenkins_tests.yml
View file @
b868764e
...
...
@@ -9,6 +9,8 @@
vars_files
:
-
"
{{
secure_dir
}}/vars/edxapp_ref_users.yml"
-
"
{{
secure_dir
}}/vars/edxapp_sandbox.yml"
# overrides specific to the jenkins test playbook
-
"
{{
secure_dir
}}/vars/edx_jenkins_tests.yml"
roles
:
-
common
-
nginx
...
...
playbooks/edx_provision_test.yml
View file @
b868764e
...
...
@@ -23,6 +23,7 @@
vars_files
:
-
"
{{
secure_dir
}}/vars/edxapp_ref_users.yml"
-
"
{{
secure_dir
}}/vars/edxapp_sandbox.yml"
-
"
{{
secure_dir
}}/vars/edx_jenkins_tests.yml"
roles
:
-
common
-
nginx
...
...
playbooks/roles/ora/handlers/main.yml
0 → 100644
View file @
b868764e
---
-
name
:
restart edx-ora
service
:
name=edx-ora state=restarted
-
name
:
restart edx-ora-celery
service
:
name=edx-ora-celery state=restarted
playbooks/roles/ora/tasks/deploy.yml
View file @
b868764e
...
...
@@ -16,6 +16,7 @@
-
name
:
stop edx-ora service
service
:
name=edx-ora state=stopped
when
:
edx_ora_installed.stdout == 'Found'
notify
:
restart edx-ora
tags
:
-
ora
-
deploy
...
...
@@ -23,6 +24,7 @@
-
name
:
stop edx-ora-celery service
service
:
name=edx-ora-celery state=stopped
when
:
edx_ora_celery_installed.stdout == 'Found'
notify
:
restart edx-ora-celery
tags
:
-
ora
-
deploy
...
...
@@ -30,6 +32,9 @@
# Do A Checkout
-
name
:
git checkout ora repo into $app_base_dir
git
:
dest={{ora_code_dir}} repo={{ora_source_repo}} version={{ora_version}}
notify
:
-
restart edx-ora
-
restart edx-ora-celery
tags
:
-
ora
-
deploy
...
...
@@ -37,49 +42,34 @@
# Do Post Checkout Tasks.
-
name
:
change permissions on ora code dir
file
:
path={{ora_code_dir}} state=directory owner=www-data group=www-data mode=755 recurse=yes
notify
:
-
restart edx-ora
-
restart edx-ora-celery
tags
:
-
ora
-
deploy
-
name
:
copy over edx-ora upstart scripts from repo
shell
:
"
cp
{{ora_code_dir}}/edx-ora.conf
/etc/init/edx-ora.conf;
chmod
644
/etc/init/edx-ora.conf;
chown
root:root
/etc/init/edx-ora.conf;"
tags
:
-
ora
-
deploy
-
name
:
set correct port in edx-ora.conf
lineinfile
:
dest=/etc/init/edx-ora.conf regexp="^env PORT=[0-9]+" line="env PORT={{ora_gunicorn_port}}"
tags
:
-
ora
-
deploy
-
name
:
copy over edx-ora-celery upstart scripts from repo
shell
:
"
cp
{{ora_code_dir}}/edx-ora-celery.conf
/etc/init/edx-ora-celery.conf;
chmod
644
/etc/init/edx-ora-celery.conf;
chown
root:root
/etc/init/edx-ora-celery.conf;"
tags
:
-
ora
-
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
:
install ora apt-packages
command
:
xargs -a {{ora_code_dir}}/apt-packages.txt apt-get install -y
tags
:
-
ora
-
deploy
# Install the python pre requirements into {{ venv_dir }}
# Install the python pre requirements into {{
ora_
venv_dir }}
-
name
:
install python pre-requirements
pip
:
requirements="{{ora_pre_requirements_file}}" virtualenv="{{venv_dir}}" state=present
pip
:
requirements="{{ora_pre_requirements_file}}" virtualenv="{{ora_venv_dir}}" state=present
notify
:
-
restart edx-ora
-
restart edx-ora-celery
tags
:
-
ora
-
deploy
# Install the python post requirements into {{ venv_dir }}
# Install the python post requirements into {{
ora_
venv_dir }}
-
name
:
install python post-requirements
pip
:
requirements="{{ora_post_requirements_file}}" virtualenv="{{venv_dir}}" state=present
pip
:
requirements="{{ora_post_requirements_file}}" virtualenv="{{ora_venv_dir}}" state=present
notify
:
-
restart edx-ora
-
restart edx-ora-celery
tags
:
-
ora
-
deploy
...
...
@@ -87,33 +77,30 @@
#Needed if using redis to prevent memory issues
-
name
:
change memory commit settings -- needed for redis
command
:
sysctl vm.overcommit_memory=1
notify
:
-
restart edx-ora
-
restart edx-ora-celery
tags
:
-
ora
-
deploy
-
name
:
syncdb and migrate
shell
:
sudo -u www-data {{venv_dir}}/bin/django-admin.py syncdb --migrate --noinput --settings=edx_ora.aws --pythonpath={{ora_code_dir}}
shell
:
sudo -u www-data {{
ora_
venv_dir}}/bin/django-admin.py syncdb --migrate --noinput --settings=edx_ora.aws --pythonpath={{ora_code_dir}}
when
:
migrate_db
notify
:
-
restart edx-ora
-
restart edx-ora-celery
tags
:
-
ora
-
syncdb
-
deploy
-
name
:
create users
shell
:
sudo -u www-data {{venv_dir}}/bin/django-admin.py update_users --settings=edx_ora.aws --pythonpath={{ora_code_dir}}
shell
:
sudo -u www-data {{ora_venv_dir}}/bin/django-admin.py update_users --settings=edx_ora.aws --pythonpath={{ora_code_dir}}
notify
:
-
restart edx-ora
-
restart edx-ora-celery
tags
:
-
ora
-
syncdb
-
deploy
-
name
:
restart edx-ora
service
:
name=edx-ora state=restarted
tags
:
-
ora
-
deploy
-
name
:
restart edx-ora-celery
service
:
name=edx-ora-celery state=restarted
tags
:
-
ora
-
deploy
playbooks/roles/ora/tasks/ease.yml
View file @
b868764e
...
...
@@ -45,29 +45,31 @@
# 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
:
install ease apt-packages
command
:
xargs -a {{ease_code_dir}}/apt-packages.txt apt-get install -y
#
-
name
:
install ease system packages
apt
:
pkg={{item}} state=present
with_items
:
ease_debian_pkgs
tags
:
-
ease
-
deploy
# Install the python pre requirements into {{ venv_dir }}
# Install the python pre requirements into {{ ease_venv_dir }}
-
name
:
install ease python pre-requirements
pip
:
requirements="{{ease_pre_requirements_file}}" virtualenv="{{venv_dir}}" state=present
pip
:
requirements="{{ease_pre_requirements_file}}" virtualenv="{{
ease_
venv_dir}}" state=present
tags
:
-
ease
-
deploy
# Install the python post requirements into {{ venv_dir }}
# Install the python post requirements into {{
ease_
venv_dir }}
-
name
:
install ease python post-requirements
pip
:
requirements="{{ease_post_requirements_file}}" virtualenv="{{venv_dir}}" state=present
pip
:
requirements="{{ease_post_requirements_file}}" virtualenv="{{
ease_
venv_dir}}" state=present
tags
:
-
ease
-
deploy
-
name
:
install ease python package
shell
:
command="{{venv_dir}}/bin/activate; cd {{ease_code_dir}}; python setup.py install"
shell
:
command="{{
ease_
venv_dir}}/bin/activate; cd {{ease_code_dir}}; python setup.py install"
tags
:
-
ease
-
deploy
...
...
@@ -82,7 +84,7 @@
-
name
:
install nltk data using rendered shell script
command
:
"
{{venv_dir}}/bin/python
-m
nltk.downloader
-d
{{nltk_data_dir}}
all"
command
:
"
{{
ease_
venv_dir}}/bin/python
-m
nltk.downloader
-d
{{nltk_data_dir}}
all"
when
:
nltk_data_installed.stdout != "Found"
tags
:
-
ease
...
...
playbooks/roles/ora/tasks/main.yml
View file @
b868764e
...
...
@@ -35,6 +35,32 @@
tags
:
-
ora
-
name
:
create ora upstart script
template
:
src=edx-ora.conf.j2 dest=/etc/init/edx-ora.conf mode=0640 owner=root group=adm
tags
:
-
ora
-
name
:
create ora-celery upstart script
template
:
src=edx-ora-celery.conf.j2 dest=/etc/init/edx-ora-celery.conf mode=0640 owner=root group=adm
tags
:
-
ora
-
name
:
install debian packages that ora needs
apt
:
pkg={{item}} state=present
with_items
:
ora_debian_pkgs
tags
:
-
ora
-
name
:
create the ora virtual environment
file
:
path={{ ora_venv_dir }} owner=root group=adm mode=2775 state=directory
tags
:
-
ora
-
name
:
bootstrap the ora virtual environment
command
:
/usr/local/bin/virtualenv {{ ora_venv_dir }} --distribute creates={{ora_venv_dir}}/bin/activate
tags
:
-
ora
# Install nginx site
-
include
:
../../nginx/tasks/nginx_site.yml state=link site_name=ora
...
...
playbooks/roles/ora/templates/edx-ora-celery.conf.j2
0 → 100644
View file @
b868764e
#Celery task for edx-ora
description "Celery grading controller"
author "Vik Paruchuri <vik@edx.org>"
start on runlevel [2345]
stop on runlevel [!2345]
respawn
respawn limit 3 30
env DJANGO_SETTINGS_MODULE=edx_ora.aws
chdir {{ ora_code_dir }}
setuid www-data
exec {{ ora_venv_dir }}/bin/python {{ ora_code_dir }}/manage.py celeryd --loglevel=info --settings=edx_ora.aws --pythonpath={{ ora_code_dir}} -B --autoscale=4,1
playbooks/roles/ora/templates/edx-ora.conf.j2
0 → 100644
View file @
b868764e
# /etc/init/edx-ora.conf
description "edX ORA server"
author "edx <info@edx.org>"
start on runlevel [2345]
stop on runlevel [!2345]
respawn
respawn limit 3 30
env PID=/var/run/gunicorn/edx-ora.pid
env WORKERS={{ ora_gunicorn_workers }}
env PORT={{ ora_gunicorn_port }}
env LANG=en_US.UTF-8
env DJANGO_SETTINGS_MODULE=edx_ora.aws
pre-start script
end script
chdir {{ ora_code_dir }}
setuid www-data
exec {{ ora_venv_dir}}/bin/gunicorn --preload -b 127.0.0.1:$PORT -w $WORKERS --timeout=90 --pythonpath={{ ora_code_dir}} edx_ora.wsgi
playbooks/roles/ora/vars/main.yml
View file @
b868764e
...
...
@@ -4,6 +4,9 @@ ora_code_dir: "{{ app_base_dir }}/edx-ora"
# Default nginx listen port
# These should be overrided if you want
# to serve all content on port 80
ora_venv_dir
:
"
{{
venv_dir
}}"
ease_venv_dir
:
"
{{
venv_dir
}}"
ora_gunicorn_workers
:
4
ora_nginx_port
:
18091
ora_gunicorn_port
:
8091
ora_auth_config
:
{}
...
...
@@ -21,3 +24,44 @@ ease_pre_requirements_file: "{{ ease_code_dir }}/pre-requirements.txt"
ease_post_requirements_file
:
"
{{
ease_code_dir
}}/requirements.txt"
ease_debian_pkgs
:
[]
nltk_data_dir
:
/usr/share/nltk_data
ora_debian_packages
:
-
python-software-properties
-
pkg-config
-
curl
-
git
-
python-virtualenv
-
build-essential
-
python-dev
-
gfortran
-
libfreetype6-dev
-
libpng12-dev
-
libxml2-dev
-
libxslt-dev
-
yui-compressor
-
graphviz
-
graphviz-dev
-
libmysqlclient-dev
-
libreadline6
-
libreadline6-dev
-
super
-
aspell
-
libblas3gf
-
libblas-dev
-
liblapack3gf
-
liblapack-dev
-
libatlas-base-dev
-
redis-server
ease_debian_packages
:
-
python-pip
-
gcc
-
g++
-
gfortran
-
libblas3gf
-
libblas-dev
-
liblapack3gf
-
liblapack-dev
-
libatlas-base-dev
-
libxml2-dev
-
libxslt1-dev
-
aspell
-
python
playbooks/secure_example/vars/edx_jenkins_tests.yml
0 → 100644
View file @
b868764e
---
# override the default virtualenv for ora
ora_venv_dir
:
"
/opt/wwc/virtualenvs/ora"
# ease and ora share the same virtualenv
ease_venv_dir
:
"
/opt/wwc/virtualenvs/ora"
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