Commit 4029ee26 by Feanil Patel

Merge pull request #2162 from edx/update-migration-script-cypress

Update migration script for Cypress
parents 788cb6b1 e154bf93
......@@ -29,8 +29,8 @@
- cms
- edxlocal
- mongo
- { role: 'edxapp', celery_worker: True }
- edxapp
- { role: 'edxapp', celery_worker: True }
- demo
- { role: 'rabbitmq', rabbitmq_ip: '127.0.0.1' }
- oraclejdk
......
......@@ -2,8 +2,9 @@
# defaults
CONFIGURATION="fullstack"
TARGET="named-release/birch"
TARGET="named-release/cypress.rc"
INTERACTIVE=true
OPENEDX_ROOT="/edx"
read -d '' HELP_TEXT <<- EOM
Attempts to migrate your Open edX installation to a different release.
......@@ -15,6 +16,9 @@ Attempts to migrate your Open edX installation to a different release.
Migrate to the given git ref. Defaults to \"$TARGET\"
-y
Run in non-interactive mode (reply \"yes\" to all questions)
-r OPENEDX_ROOT
The root directory under which all Open edX applications are installed.
Defaults to \"$OPENEDX_ROOT\"
-h
Show this help and exit.
EOM
......@@ -35,6 +39,9 @@ while getopts "hc:t:y" opt; do
y)
INTERACTIVE=false
;;
r)
OPENEDX_ROOT=$OPTARG
;;
esac
done
......@@ -70,21 +77,54 @@ EOM
fi
fi
if [[ $TARGET == *cypress* && $INTERACTIVE == true ]] ; then
cat <<"EOM"
WARNING WARNING WARNING WARNING WARNING
Due to the changes introduced between Birch and Cypress, you may encounter
some problems in this migration. If so, check this webpage for solutions:
https://openedx.atlassian.net/wiki/display/OpenOPS/Potential+Problems+Migrating+from+Birch+to+Cypress
Do you wish to proceed?
EOM
read input
if [ "$input" != "yes" -a "$input" != "y" ]; then
echo "Quitting"
exit 1
else
echo "Killing all celery worker processes."
sudo ${OPENEDX_ROOT}/bin/supervisorctl stop edxapp_worker:* &
sleep 3
# Supervisor restarts the process a couple of times so we have to kill it multiple times.
sudo pgrep -lf celery | grep worker | awk '{ print $1}' | sudo xargs -I {} kill -9 {}
sleep 3
sudo pgrep -lf celery | grep worker | awk '{ print $1}' | sudo xargs -I {} kill -9 {}
sleep 3
sudo pgrep -lf celery | grep worker | awk '{ print $1}' | sudo xargs -I {} kill -9 {}
sleep 3
sudo pgrep -lf celery | grep worker | awk '{ print $1}' | sudo xargs -I {} kill -9 {}
sudo -u forum git -C ${OPENEDX_ROOT}/app/forum/.rbenv reset --hard
fi
fi
if [ -f /edx/app/edx_ansible/server-vars.yml ]; then
SERVER_VARS="--extra-vars=\"@/edx/app/edx_ansible/server-vars.yml\""
SERVER_VARS="--extra-vars=\"@${OPENEDX_ROOT}/app/edx_ansible/server-vars.yml\""
fi
TEMPDIR=`mktemp -d`
chmod 777 $TEMPDIR
cd $TEMPDIR
git clone https://github.com/edx/configuration.git --depth=1 --single-branch --branch=$TARGET
virtualenv venv
source venv/bin/activate
pip install -r configuration/requirements.txt
echo "edx_platform_version: $TARGET" >> vars.yml
echo "ora2_version: $TARGET" >> vars.yml
echo "certs_version: $TARGET" >> vars.yml
echo "forum_version: $TARGET" >> vars.yml
echo "xqueue_version: $TARGET" >> vars.yml
cd configuration/playbooks
sudo /edx/app/edx_ansible/venvs/edx_ansible/bin/ansible-playbook \
sudo ansible-playbook \
--inventory-file=localhost, \
--connection=local \
--extra-vars=\"@../../vars.yml\" \
......@@ -96,5 +136,5 @@ if [ $exitcode != 0 ]; then
exit $exitcode;
fi
cd /
rm -rf $TEMPDIR
sudo rm -rf $TEMPDIR
echo "Migration complete. Please reboot your machine."
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