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
OpenEdx
configuration
Commits
8268bc68
Commit
8268bc68
authored
Dec 22, 2014
by
Brandon DeRosier
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix edxapp not restarting
parent
b95ad648
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
20 additions
and
156 deletions
+20
-156
playbooks/roles/edxapp/handlers/main.yml
+0
-20
playbooks/roles/edxapp/tasks/deploy.yml
+20
-77
playbooks/roles/edxapp/tasks/main.yml
+0
-18
playbooks/roles/edxapp/tasks/python_sandbox_env.yml
+0
-21
playbooks/roles/edxapp/tasks/service_variant_config.yml
+0
-20
No files found.
playbooks/roles/edxapp/handlers/main.yml
deleted
100644 → 0
View file @
b95ad648
---
-
name
:
restart edxapp
supervisorctl_local
:
>
state=restarted
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
name="edxapp:{{ item }}"
when
:
edxapp_installed is defined and celery_worker is not defined and not disable_edx_services
sudo_user
:
"
{{
supervisor_service_user
}}"
with_items
:
service_variants_enabled
-
name
:
restart edxapp_workers
supervisorctl_local
:
>
name="edxapp_worker:{{ item.service_variant }}_{{ item.queue }}_{{ item.concurrency }}"
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=restarted
when
:
edxapp_installed is defined and celery_worker is defined and not disable_edx_services
with_items
:
edxapp_workers
sudo_user
:
"
{{
common_web_user
}}"
playbooks/roles/edxapp/tasks/deploy.yml
View file @
8268bc68
-
name
:
setup the edxapp env
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
template
:
>
src=edxapp_env.j2 dest={{ edxapp_app_dir }}/edxapp_env
owner={{ edxapp_user }} group={{ common_web_user }}
...
...
@@ -11,9 +8,6 @@
file
:
>
path="{{ EDXAPP_CFG_DIR }}" state=directory
owner="{{ edxapp_user }}" group="{{ common_web_group }}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# Optional auth for git
-
name
:
create ssh script for git (not authenticated)
...
...
@@ -45,16 +39,10 @@
environment
:
GIT_SSH
:
"
{{
edxapp_git_ssh
}}"
register
:
edxapp_platform_checkout
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
-
name
:
git clean after checking out edx-platform
shell
:
cd {{ edxapp_code_dir }} && git clean -xdf
sudo_user
:
"
{{
edxapp_user
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
-
name
:
checkout theme
git
:
>
...
...
@@ -67,9 +55,6 @@
environment
:
GIT_SSH
:
"
{{
edxapp_git_ssh
}}"
register
:
edxapp_theme_checkout
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
-
name
:
create checksum for requirements, package.json and Gemfile
shell
:
>
...
...
@@ -91,9 +76,6 @@
command
:
|
/bin/sed -i -e 's/github\.com/{{ COMMON_GIT_MIRROR }}/g' {{ " ".join(edxapp_all_req_files) }}
sudo_user
:
"
{{
edxapp_user
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# Ruby plays that need to be run after platform updates.
-
name
:
gem install bundler
...
...
@@ -103,9 +85,6 @@
executable=/bin/bash
environment
:
"
{{
edxapp_environment
}}"
sudo_user
:
"
{{
edxapp_user
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
-
name
:
bundle install
shell
:
>
...
...
@@ -114,9 +93,6 @@
executable=/bin/bash
sudo_user
:
"
{{
edxapp_user
}}"
environment
:
"
{{
edxapp_environment
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# Set the npm registry
# This needs to be done as root since npm is weird about
...
...
@@ -126,27 +102,18 @@
npm config set registry '{{ COMMON_NPM_MIRROR_URL }}'
creates="{{ edxapp_app_dir }}/.npmrc"
environment
:
"
{{
edxapp_environment
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# Set the npm registry permissions
-
name
:
Set the npm registry permissions
file
:
path="{{ edxapp_app_dir }}/.npmrc"
owner=edxapp group=edxapp
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# Node play that need to be run after platform updates.
-
name
:
Install edx-platform npm dependencies
shell
:
npm install chdir={{ edxapp_code_dir }}
sudo_user
:
"
{{
edxapp_user
}}"
environment
:
"
{{
edxapp_environment
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# Install the python pre requirements into {{ edxapp_venv_dir }}
...
...
@@ -158,9 +125,6 @@
extra_args="-i {{ COMMON_PYPI_MIRROR_URL }}"
sudo_user
:
"
{{
edxapp_user
}}"
environment
:
"
{{
edxapp_environment
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
when
:
not inst.stat.exists or new.stat.md5 != inst.stat.md5
# Install the python modules into {{ edxapp_venv_dir }}
...
...
@@ -173,9 +137,6 @@
chdir={{ edxapp_code_dir }}
environment
:
"
{{
edxapp_environment
}}"
sudo_user
:
"
{{
edxapp_user
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
when
:
not inst.stat.exists or new.stat.md5 != inst.stat.md5
# Install the python post requirements into {{ edxapp_venv_dir }}
...
...
@@ -187,9 +148,6 @@
extra_args="-i {{ COMMON_PYPI_MIRROR_URL }}"
sudo_user
:
"
{{
edxapp_user
}}"
environment
:
"
{{
edxapp_environment
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
when
:
not inst.stat.exists or new.stat.md5 != inst.stat.md5
# Install the python paver requirements into {{ edxapp_venv_dir }}
...
...
@@ -201,9 +159,6 @@
extra_args="-i {{ COMMON_PYPI_MIRROR_URL }}"
sudo_user
:
"
{{
edxapp_user
}}"
environment
:
"
{{
edxapp_environment
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
when
:
not inst.stat.exists or new.stat.md5 != inst.stat.md5
# Install the python custom requirements into {{ edxapp_venv_dir }}
...
...
@@ -220,9 +175,6 @@
extra_args="-i {{ COMMON_PYPI_MIRROR_URL }}"
sudo_user
:
"
{{
edxapp_user
}}"
environment
:
"
{{
edxapp_environment
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
when
:
custom_requirements.stat.exists and new.stat.md5 != inst.stat.md5
# Install the final python modules into {{ edxapp_venv_dir }}
...
...
@@ -237,9 +189,6 @@
-
"
{{
github_requirements_file
}}"
-
"
{{
local_requirements_file
}}"
sudo_user
:
"
{{
edxapp_user
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# Private requriements require a ssh key to install, use the same key as the private key for edx-platform
# If EDXAPP_INSTALL_PRIVATE_REQUIREMENTS is set to true EDXAPP_USE_GIT_IDENTITY must also be true
...
...
@@ -256,9 +205,6 @@
environment
:
GIT_SSH
:
"
{{
edxapp_git_ssh
}}"
when
:
EDXAPP_INSTALL_PRIVATE_REQUIREMENTS
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# Install any custom extra requirements if defined in EDXAPP_EXTRA_REQUIREMENTS.
-
name
:
install python extra requirements
...
...
@@ -270,9 +216,6 @@
state=present
with_items
:
EDXAPP_EXTRA_REQUIREMENTS
sudo_user
:
"
{{
edxapp_user
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# If using CAS and you have a function for mapping attributes, install
# the module here. The next few tasks set up the python code sandbox
...
...
@@ -284,7 +227,6 @@
extra_args="-i {{ COMMON_PYPI_MIRROR_URL }} --exists-action w --use-mirrors"
sudo_user
:
"
{{
edxapp_user
}}"
when
:
EDXAPP_CAS_ATTRIBUTE_PACKAGE|length > 0
notify
:
"
restart
edxapp"
# Install the sandbox python modules into {{ edxapp_venv_dir }}
-
name
:
install sandbox requirements into regular venv
...
...
@@ -300,9 +242,6 @@
-
"
{{
sandbox_post_requirements
}}"
sudo_user
:
"
{{
edxapp_user
}}"
when
:
"
not
EDXAPP_PYTHON_SANDBOX
and
(not
inst.stat.exists
or
new.stat.md5
!=
inst.stat.md5)"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# The next few tasks set up the python code sandbox
...
...
@@ -322,9 +261,6 @@
extra_args="-i {{ COMMON_PYPI_MIRROR_URL }} --exists-action w --use-mirrors"
sudo_user
:
"
{{
edxapp_sandbox_user
}}"
when
:
EDXAPP_PYTHON_SANDBOX
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
tags
:
-
edxapp-sandbox
...
...
@@ -339,9 +275,6 @@
when
:
EDXAPP_PYTHON_SANDBOX
register
:
sandbox_install_output
changed_when
:
sandbox_install_output.stdout is defined and 'installed' in sandbox_install_output.stdout
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
tags
:
-
edxapp-sandbox
...
...
@@ -354,23 +287,16 @@
-
name
:
compiling all py files in the edx-platform repo
shell
:
"
{{
edxapp_venv_bin
}}/python
-m
compileall
-x
.git/.*
{{
edxapp_code_dir
}}"
sudo_user
:
"
{{
edxapp_user
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# alternative would be to give {{ common_web_user }} read access
# to the virtualenv but that permission change will require
# root access.
-
name
:
give other read permissions to the virtualenv
command
:
chmod -R o+r "{{ edxapp_venv_dir }}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
-
name
:
create checksum for installed requirements
shell
:
cp /var/tmp/edxapp.req.new /var/tmp/edxapp.req.installed
sudo_user
:
"
{{
edxapp_user
}}"
notify
:
"
restart
edxapp"
# https://code.launchpad.net/~wligtenberg/django-openid-auth/mysql_fix/+merge/22726
...
...
@@ -380,9 +306,6 @@
shell
:
sed -i -e 's/claimed_id = models.TextField(max_length=2047, unique=True/claimed_id = models.TextField(max_length=2047/' {{ edxapp_venv_dir }}/lib/python2.7/site-packages/django_openid_auth/models.py
when
:
openid_workaround is defined
sudo_user
:
"
{{
edxapp_user
}}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# The next few tasks install xml courses.
...
...
@@ -492,3 +415,23 @@
when
:
COMMON_TAG_EC2_INSTANCE
-
set_fact
:
edxapp_installed=true
-
name
:
restart edxapp
supervisorctl_local
:
>
state=restarted
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
name="edxapp:{{ item }}"
when
:
edxapp_installed is defined and celery_worker is not defined and not disable_edx_services
sudo_user
:
"
{{
supervisor_service_user
}}"
with_items
:
service_variants_enabled
-
name
:
restart edxapp_workers
supervisorctl_local
:
>
name="edxapp_worker:{{ item.service_variant }}_{{ item.queue }}_{{ item.concurrency }}"
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=restarted
when
:
edxapp_installed is defined and celery_worker is defined and not disable_edx_services
with_items
:
edxapp_workers
sudo_user
:
"
{{
common_web_user
}}"
playbooks/roles/edxapp/tasks/main.yml
View file @
8268bc68
...
...
@@ -6,17 +6,11 @@
user
:
>
name="{{ edxapp_user }}" home="{{ edxapp_app_dir }}"
createhome=no shell=/bin/false
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
-
name
:
create edxapp user dirs
file
:
>
path="{{ item }}" state=directory
owner="{{ edxapp_user }}" group="{{ common_web_group }}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
with_items
:
-
"
{{
edxapp_app_dir
}}"
# needed for the ansible 1.5 git module
...
...
@@ -44,18 +38,12 @@
file
:
>
path="{{ edxapp_log_dir }}" state=directory
owner="{{ common_log_user }}" group="{{ common_log_user }}"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
-
name
:
create web-writable edxapp data dirs
file
:
>
path="{{ item }}" state=directory
owner="{{ common_web_user }}" group="{{ edxapp_user }}"
mode="0775"
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
with_items
:
-
"
{{
edxapp_course_data_dir
}}"
-
"
{{
edxapp_upload_dir
}}"
...
...
@@ -66,9 +54,6 @@
-
name
:
install system packages on which LMS and CMS rely
apt
:
pkg={{','.join(edxapp_debian_pkgs)}} state=present update_cache=yes
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
-
name
:
set up edxapp .npmrc
template
:
...
...
@@ -77,9 +62,6 @@
mode=0600
-
name
:
create log directories for service variants
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
file
:
>
path={{ edxapp_log_dir }}/{{ item }} state=directory
owner={{ common_log_user }} group={{ common_log_user }}
...
...
playbooks/roles/edxapp/tasks/python_sandbox_env.yml
View file @
8268bc68
...
...
@@ -10,33 +10,21 @@
-
name
:
code sandbox | Create edxapp sandbox user
user
:
name={{ edxapp_sandbox_user }} shell=/bin/false home={{ edxapp_sandbox_venv_dir }}
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
tags
:
-
edxapp-sandbox
-
name
:
code sandbox | Install apparmor utils system pkg
apt
:
pkg=apparmor-utils state=present
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
tags
:
-
edxapp-sandbox
-
name
:
code sandbox | write out apparmor code sandbox config
template
:
src=code.sandbox.j2 dest=/etc/apparmor.d/code.sandbox mode=0644 owner=root group=root
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
tags
:
-
edxapp-sandbox
-
name
:
code sandbox | write out sandbox user sudoers config
template
:
src=95-sandbox-sudoer.j2 dest=/etc/sudoers.d/95-{{ edxapp_sandbox_user }} mode=0440 owner=root group=root validate='visudo -c -f %s'
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
tags
:
-
edxapp-sandbox
...
...
@@ -44,24 +32,15 @@
# so we need to enable it in main.yml
-
name
:
code sandbox | start apparmor service
service
:
name=apparmor state=started
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
tags
:
-
edxapp-sandbox
-
name
:
code sandbox | (bootstrap) load code sandbox profile
command
:
apparmor_parser -r /etc/apparmor.d/code.sandbox
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
tags
:
-
edxapp-sandbox
-
name
:
code sandbox | (bootstrap) put code sandbox into aa-enforce or aa-complain mode depending on EDXAPP_SANDBOX_ENFORCE
command
:
/usr/sbin/{{ edxapp_aa_command }} /etc/apparmor.d/code.sandbox
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
tags
:
-
edxapp-sandbox
playbooks/roles/edxapp/tasks/service_variant_config.yml
View file @
8268bc68
...
...
@@ -5,9 +5,6 @@
sudo_user
:
"
{{
edxapp_user
}}"
tags
:
edxapp_cfg
with_items
:
service_variants_enabled
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
-
name
:
"
create
{{
item
}}
auth
file"
template
:
>
...
...
@@ -15,9 +12,6 @@
dest={{ edxapp_app_dir }}/{{ item }}.auth.json
sudo_user
:
"
{{
edxapp_user
}}"
tags
:
edxapp_cfg
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
with_items
:
service_variants_enabled
-
name
:
"
create
{{
item
}}
application
config"
...
...
@@ -27,9 +21,6 @@
sudo_user
:
"
{{
edxapp_user
}}"
tags
:
edxapp_cfg
with_items
:
service_variants_enabled
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
-
name
:
"
create
{{
item
}}
auth
file"
template
:
>
...
...
@@ -37,9 +28,6 @@
dest={{ EDXAPP_CFG_DIR }}/{{ item }}.auth.yaml
sudo_user
:
"
{{
edxapp_user
}}"
tags
:
edxapp_cfg
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
with_items
:
service_variants_enabled
...
...
@@ -65,8 +53,6 @@
src={{ item }}_gunicorn.py.j2 dest={{ edxapp_app_dir }}/{{ item }}_gunicorn.py
with_items
:
service_variants_enabled
sudo_user
:
"
{{
edxapp_user
}}"
notify
:
-
restart edxapp
# write the supervisor script for celery workers
...
...
@@ -125,9 +111,6 @@
DB_MIGRATION_PASS
:
"
{{
COMMON_MYSQL_MIGRATE_PASS
}}"
EDX_PLATFORM_SETTINGS_OVERRIDE
:
"
aws_migrate"
with_items
:
service_variants_enabled
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
# Gather assets using paver if possible
...
...
@@ -135,6 +118,3 @@
command
:
"
{{
COMMON_BIN_DIR
}}/edxapp-update-assets-{{
item
}}"
when
:
celery_worker is not defined and not devstack and item != "lms-preview"
with_items
:
service_variants_enabled
notify
:
-
"
restart
edxapp"
-
"
restart
edxapp_workers"
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