Juniper
The 10th Open edX release will be named Juniper.
Put stuff here that we have to remember when we start packaging up for Juniper. Especially important is information that system installers or operators will need to know. Please include your name when you add an item, so that we can get back to you with questions.
Timeline
Juniper is gated by the upgrade to Django 2.2
As of April 27, it looks like all services will be upgraded and in production this week. The master branches can be created soon after that point. We are triaging issues ( - CRI-171Getting issue details... STATUS ) and will decide when to make the master branches based on that triaging.
Upgrading from Ironwood
A high-level upgrade guide is being collaboratively created here.
Installation and Operations
- HTTP Cookie Sharing
- Studio redirects to the LMS for login and registration. (Robert Raposa, Nimisha Asthagiri (Deactivated))
- The DISABLE_STUDIO_SSO_OVER_LMS setting used in Ironwood has been removed. See https://github.com/edx/edx-platform/pull/22416 for background on why this change was made.
- Note: for community members who will have difficulty sharing cookies across Studio and LMS, see https://github.com/edx/edx-platform/pull/19845#issuecomment-559154256 for possible alternative solutions from Felipe Montoya. These solutions can be discussed here: https://discuss.openedx.org/t/deprecation-removal-complete-removal-of-studio-signin-and-signup-pages-relates-to-depr-6/962
- Studio redirects to the LMS for login and registration. (Robert Raposa, Nimisha Asthagiri (Deactivated))
- Runbook Configuration
- We are looking at doing large migrations for the
courseware_studentmodule
table to prevent running out of primary keys. These will likely be large, semi-manually done migrations on CSM and it's history table(s). Nothing is settled yet, but if we get this in before Juniper we will need to share our runbooks for anyone upgrading to it. (Brian Mesick (Deactivated)) - Part of the django upgrade includes a migration on the auth-user table to increase the size of the last_name column from 30 to 150 characters. If your user table is above a million rows, the to make this update might be long enough to cause downtime. edX.org has opted to skip this migration and has limited the length of the last name field to the previous 30 characters in the user change forms. It's recommend that openedx do the same.
The relevant command to run before you run the rest of the migration is the following:
sudo -HEu www-data /edx/bin/python.edxapp /edx/bin/manage.edxapp lms migrate --fake auth 0009
- Run this command after loading the new code but before running the migrations.
- We are looking at doing large migrations for the
- Django Configuration and SetUp
- Remote Configuration (Cory Lee (Deactivated), Bill DeRusha (Deactivated))
JWT Cookies require JWK setup. This was disabled in Ironwood. Thanks to Pierre Mailhot for the following steps to generate and configure the JWT signing keys. (Robert Raposa, Nimisha Asthagiri (Deactivated))
Alternatively, the following piece of code (created for Tutor) can be generated to manually generate the private/public signing keys.
- Third Party Auth Organizations linking is no longer managed via ApplicationOrganization model. This model will be removed and the linking will be done by explicitly defining filters for the application. See relevant decisions:
- We upgraded
sorl-thumbnail
from a version that didn't have migrations to one that does, so the initial migration needs to be faked in any environment that previously installed the old version:./manage.py lms migrate thumbnail --fake
. - Management Commands
- As part of https://github.com/edx/edx-platform/pull/20698, send_verification_expiry_email command arguments, --resend-days and --days-range were removed from the management command and moved to lms common settings. (Zainab Amir (Deactivated))
- As part of https://github.com/edx/edx-platform/pull/20698, send_verification_expiry_email command arguments, --resend-days and --days-range were removed from the management command and moved to lms common settings. (Zainab Amir (Deactivated))
- Celery
- The django-celery library has been removed from edx-celeryutils. The corresponding management command has now been deleted and should be removed from upgrade instructions. (Tim McCormack, Diana Huang)
- Inter-service Communication Impact
- OAuth2 DOP→DOT Migration (Nimisha Asthagiri (Deactivated), Julia Eskew (Deactivated), Troy Sankey, Robert Raposa,