Skip to content
This repository has been archived by the owner on May 6, 2024. It is now read-only.

Commit

Permalink
Merge pull request #2772 from edx/ned/merge-dogwood-to-master
Browse files Browse the repository at this point in the history
Merge dogwood to master
  • Loading branch information
nedbat committed Feb 12, 2016
2 parents 43e2f6f + 5a80d2e commit adae6cf
Show file tree
Hide file tree
Showing 9 changed files with 68 additions and 100 deletions.
23 changes: 0 additions & 23 deletions playbooks/roles/certs/handlers/main.yml

This file was deleted.

17 changes: 7 additions & 10 deletions playbooks/roles/certs/tasks/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,12 @@
src=certs.env.json.j2
dest={{ certs_app_dir }}/env.json
sudo_user: "{{ certs_user }}"
notify: restart certs

- name: create certificate auth file
template: >
src=certs.auth.json.j2
dest={{ certs_app_dir }}/auth.json
sudo_user: "{{ certs_user }}"
notify: restart certs

- name: writing supervisor script for certificates
template: >
Expand All @@ -27,14 +25,12 @@
state=link
force=yes
mode=0644
notify: restart certs
when: not disable_edx_services

- name: create ssh script for git
template: >
src={{ certs_git_ssh|basename }}.j2 dest={{ certs_git_ssh }}
owner={{ certs_user }} mode=750
notify: restart certs
# This key is only needed if you are pulling down a private
# certificates repo
Expand All @@ -43,7 +39,6 @@
content="{{ CERTS_GIT_IDENTITY }}" dest={{ certs_git_identity }}
force=yes owner={{ certs_user }} mode=0600
when: CERTS_GIT_IDENTITY != "none"
notify: restart certs

- name: checkout certificates repo into {{ certs_code_dir }}
git: >
Expand All @@ -54,7 +49,6 @@
GIT_SSH: "{{ certs_git_ssh }}"
register: certs_checkout
when: CERTS_GIT_IDENTITY != "none"
notify: restart certs

- name: checkout certificates repo into {{ certs_code_dir }}
git: >
Expand All @@ -63,19 +57,16 @@
sudo_user: "{{ certs_user }}"
register: certs_checkout
when: CERTS_GIT_IDENTITY == "none"
notify: restart certs

- name: remove read-only ssh key for the certs repo
file: path={{ certs_git_identity }} state=absent
when: CERTS_GIT_IDENTITY != "none"
notify: restart certs

- name : install python requirements
pip: >
requirements="{{ certs_requirements_file }}" virtualenv="{{ certs_venv_dir }}" state=present
extra_args="-i {{ COMMON_PYPI_MIRROR_URL }}"
sudo_user: "{{ certs_user }}"
notify: restart certs

# call supervisorctl update. this reloads
# the supervisorctl config and restarts
Expand Down Expand Up @@ -110,4 +101,10 @@
- include: tag_ec2.yml tags=deploy
when: COMMON_TAG_EC2_INSTANCE

- set_fact: certs_installed=true
- name: restart certs
supervisorctl: >
name=certs
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=restarted
when: not disable_edx_services
7 changes: 0 additions & 7 deletions playbooks/roles/certs/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,15 +37,13 @@
home="{{ certs_app_dir }}"
createhome=no
shell=/bin/false
notify: restart certs
- name: create certs app dirs
file: >
path="{{ item }}"
state=directory
owner="{{ certs_user }}"
group="{{ common_web_group }}"
notify: restart certs
with_items:
- "{{ certs_app_dir }}"
# needed for the ansible 1.5 git module
Expand All @@ -68,35 +66,30 @@
path="{{ certs_gpg_dir }}" state=directory
owner="{{ common_web_user }}"
mode=0700
notify: restart certs
- name: copy the private gpg signing key
copy: >
src={{ CERTS_LOCAL_PRIVATE_KEY }}
dest={{ certs_app_dir }}/{{ CERTS_LOCAL_PRIVATE_KEY|basename }}
owner={{ common_web_user }} mode=0600
notify: restart certs
register: certs_gpg_key

- name: copy the pgp trust export
copy: >
content="{{ CERTS_OWNER_TRUST }}"
dest={{ certs_app_dir }}/trust.export
owner={{ common_web_user }} mode=0600
notify: restart certs
- name: load the gpg key
shell: >
/usr/bin/gpg --homedir {{ certs_gpg_dir }} --import {{ certs_app_dir }}/{{ CERTS_LOCAL_PRIVATE_KEY|basename }}
sudo_user: "{{ common_web_user }}"
when: certs_gpg_key.changed
notify: restart certs

- name: import the trust export
shell: >
/usr/bin/gpg --homedir {{ certs_gpg_dir }} --import-ownertrust {{ certs_app_dir }}/trust.export
sudo_user: "{{ common_web_user }}"
when: certs_gpg_key.changed
notify: restart certs

- include: deploy.yml tags=deploy
10 changes: 0 additions & 10 deletions playbooks/roles/xqueue/handlers/main.yml

This file was deleted.

27 changes: 10 additions & 17 deletions playbooks/roles/xqueue/tasks/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,26 +23,20 @@
template: >
src=xqueue_gunicorn.py.j2 dest={{ xqueue_app_dir }}/xqueue_gunicorn.py
sudo_user: "{{ xqueue_user }}"
notify:
- restart xqueue
tags:
- install
- install:configuration

- name: create xqueue application config
template: src=xqueue.env.json.j2 dest={{ xqueue_app_dir }}/xqueue.env.json mode=0644
sudo_user: "{{ xqueue_user }}"
notify:
- restart xqueue
tags:
- install
- install:configuration

- name: create xqueue auth file
template: src=xqueue.auth.json.j2 dest={{ xqueue_app_dir }}/xqueue.auth.json mode=0644
sudo_user: "{{ xqueue_user }}"
notify:
- restart xqueue
tags:
- install
- install:configuration
Expand All @@ -54,8 +48,6 @@
accept_hostkey=yes
sudo_user: "{{ xqueue_user }}"
register: xqueue_checkout
notify:
- restart xqueue
tags:
- install
- install:code
Expand All @@ -67,8 +59,6 @@
requirements="{{ xqueue_pre_requirements_file }}" virtualenv="{{ xqueue_venv_dir }}" state=present
extra_args="-i {{ COMMON_PYPI_MIRROR_URL }} --exists-action w"
sudo_user: "{{ xqueue_user }}"
notify:
- restart xqueue
tags:
- install
- install:app-requirements
Expand All @@ -79,8 +69,6 @@
requirements="{{ xqueue_post_requirements_file }}" virtualenv="{{ xqueue_venv_dir }}" state=present
extra_args="-i {{ COMMON_PYPI_MIRROR_URL }} --exists-action w"
sudo_user: "{{ xqueue_user }}"
notify:
- restart xqueue
tags:
- install
- install:app-requirements
Expand All @@ -95,8 +83,6 @@
DB_MIGRATION_USER: "{{ COMMON_MYSQL_MIGRATE_USER }}"
DB_MIGRATION_PASS: "{{ COMMON_MYSQL_MIGRATE_PASS }}"
when: migrate_db is defined and migrate_db|lower == "yes" and COMMON_MYSQL_MIGRATE_PASS
notify:
- restart xqueue
tags:
- migrate
- migrate:db
Expand All @@ -105,8 +91,6 @@
shell: >
SERVICE_VARIANT=xqueue {{ xqueue_venv_bin }}/django-admin.py update_users --settings=xqueue.aws_settings --pythonpath={{ xqueue_code_dir }}
sudo_user: "{{ xqueue_user }}"
notify:
- restart xqueue
tags:
- manage
- manage:app-users
Expand Down Expand Up @@ -148,4 +132,13 @@
- install
- install:app-requirements

- set_fact: xqueue_installed=true
- name: restart xqueue
supervisorctl: >
name={{ item }}
supervisorctl_path={{ supervisor_ctl }}
config={{ supervisor_cfg }}
state=restarted
when: not disable_edx_services
with_items:
- xqueue
- xqueue_consumer
6 changes: 0 additions & 6 deletions playbooks/roles/xqueue/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@
home="{{ xqueue_app_dir }}"
createhome=no
shell=/bin/false
notify:
- restart xqueue
tags:
- install
- install:base
Expand All @@ -24,8 +22,6 @@
state=directory
owner="{{ xqueue_user }}"
group="{{ common_web_group }}"
notify:
- restart xqueue
with_items:
- "{{ xqueue_app_dir }}"
- "{{ xqueue_venvs_dir }}"
Expand All @@ -35,8 +31,6 @@

- name: install a bunch of system packages on which xqueue relies
apt: pkg={{','.join(xqueue_debian_pkgs)}} state=present
notify:
- restart xqueue
tags:
- install
- install:system-requirements
Expand Down
52 changes: 40 additions & 12 deletions util/vagrant/migrate.sh
Original file line number Diff line number Diff line change
Expand Up @@ -64,14 +64,8 @@ confirm_proceed () {
}

# Check we are in the right place, and have the info we need.

if [[ "`whoami`" != "vagrant" ]]; then
echo "Run this from the vagrant account in your Open edX machine."
exit 1
fi

if [[ ! -d /edx/app/edxapp ]]; then
echo "Run this from the vagrant account in your Open edX machine."
echo "Run this on your Open edX machine."
exit 1
fi

Expand All @@ -90,6 +84,11 @@ if [[ $CONFIGURATION == none ]]; then
exit 1
fi

APPUSER=edxapp
if [[ $CONFIGURATION == fullstack ]] ; then
APPUSER=www-data
fi

# Birch details

if [[ $TARGET == *birch* && $INTERACTIVE == true ]] ; then
Expand Down Expand Up @@ -173,6 +172,22 @@ make_config_venv
# Dogwood details

if [[ $TARGET == *dogwood* ]] ; then
# Run the forum migrations.
cat > migrate-008-context.js <<"EOF"
// from: https://github.com/edx/cs_comments_service/blob/master/scripts/db/migrate-008-context.js
print ("Add the new indexes for the context field");
db.contents.ensureIndex({ _type: 1, course_id: 1, context: 1, pinned: -1, created_at: -1 }, {background: true})
db.contents.ensureIndex({ _type: 1, commentable_id: 1, context: 1, pinned: -1, created_at: -1 }, {background: true})
print ("Adding context to all comment threads where it does not yet exist\n");
var bulk = db.contents.initializeUnorderedBulkOp();
bulk.find( {_type: "CommentThread", context: {$exists: false}} ).update( {$set: {context: "course"}} );
bulk.execute();
printjson (db.runCommand({ getLastError: 1, w: "majority", wtimeout: 5000 } ));
EOF

mongo cs_comments_service migrate-008-context.js

# We are upgrading Python from 2.7.3 to 2.7.10, so remake the venvs.
sudo rm -rf /edx/app/*/v*envs/*

Expand All @@ -194,7 +209,7 @@ if [[ $TARGET == *dogwood* ]] ; then
make_config_venv

# Need to get rid of South from edx-platform, or things won't work.
sudo -u edxapp /edx/app/edxapp/venvs/edxapp/bin/pip uninstall -y South
sudo -u edxapp /edx/bin/pip.edxapp uninstall -y South

echo "Upgrading to the beginning of Django 1.8"
cd configuration/playbooks/vagrant
Expand All @@ -211,10 +226,8 @@ if [[ $TARGET == *dogwood* ]] ; then

echo "Running the Django 1.8 faked migrations"
for item in lms cms; do
sudo -u edxapp \
/edx/app/edxapp/venvs/edxapp/bin/python \
/edx/app/edxapp/edx-platform/manage.py $item migrate \
--settings=aws --noinput --fake-initial
sudo -u $APPUSER -E /edx/bin/python.edxapp \
/edx/bin/manage.edxapp $item migrate --settings=aws --noinput --fake-initial
done

if [[ $CONFIGURATION == fullstack ]] ; then
Expand All @@ -226,6 +239,7 @@ if [[ $TARGET == *dogwood* ]] ; then
fi
fi

echo "Updating to final version of code"
cd configuration/playbooks
echo "edx_platform_version: $TARGET" > vars.yml
echo "ora2_version: $TARGET" >> vars.yml
Expand All @@ -238,6 +252,20 @@ sudo ansible-playbook \
--extra-vars="@vars.yml" \
$SERVER_VARS \
vagrant-$CONFIGURATION.yml
cd ../..

if [[ $TARGET == *dogwood* ]] ; then
echo "Running data fixup management commands"
sudo -u $APPUSER -E /edx/bin/python.edxapp \
/edx/bin/manage.edxapp lms --settings=aws generate_course_overview --all

sudo -u $APPUSER -E /edx/bin/python.edxapp \
/edx/bin/manage.edxapp lms --settings=aws post_cohort_membership_fix --commit

# Run the forums migrations again to catch things made while this script
# was running.
mongo cs_comments_service migrate-008-context.js
fi

cd /
sudo rm -rf $TEMPDIR
Expand Down
Loading

0 comments on commit adae6cf

Please sign in to comment.