Manual upgrade instructions#
Occasionally there is a change to devstack that requires existing devstack installations to be manually upgraded. When this happens, instructions should be added here.
Please add new instructions to the top, include a date, and make a post in the Devstack forum.
(If you just need to update your devstack to the latest version of everything, see updating_devstack.)
2024-02-25 - Mongo upgrade from version 4.4 to 5.0#
As mongo 4.4 is reaching EOL, we have upgraded mongo version 4.4 to mongo version 5.0. Developers will need to follow the following instructions.
Take latest
git pullofdevstackTake the latest pull of images
make dev.pull
Run mongo5 upgrade script, already added to devstack repo
./upgrade_mongo_5_0.sh
2023-10-05 - MySQL upgrade from version 5.7 to 8.0#
The MySQL service has been upgraded from version 5.7 to 8.0. Developers will need to follow the following instructions.
Take latest
git pullofdevstackandedx-platform.Take the latest pull of images
make dev.pull
Run provisioning command
make dev.provision
[Optional] Additionally, there is a database copy command to help you transfer data from MySQL 5.7 to 8.0. After provisioning use the
dev.dbcopyall8command. This command will stop all of your services, clean yourmysql80container, and copy all of your databases frommysql57tomysql80.make dev.dbcopyall8
This command copies the following databases:
credentials
discovery
ecommerce
registrar
notes
edxapp
xqueue
edxapp_csmh
dashboard
analytics-api
reports
reports_v1
If you prefer not to copy all databases, update DB_NAMES_LIST in the Makefile of devstack before running the dbcopy command.
Now start your desired services again using
dev.upcommand. For example running following command will startlms,cmsmake dev.up.lms+cms
You might need to apply latest migrations to your
mysql80container for some services. To do that, you can usedev.migratecommand. For example forlmsyou can runmake dev.migrate.lms
2023-08-02 - Forum upgrade from Ruby 2 to 3#
The forum service has been upgraded from Ruby 2 to Ruby 3. Developers who use forum will need to pull the new image and reprovision the service:
make dev.pull.forum # pull in new forum image
make dev.provision.forum # provision forum service