Platform Roadmap

This page is intended to give an overview of the roadmap for the platform team. Currently it's a dump of the todo list I've been working on. 


Your thoughts and contributions are welcome.


Items are somewhat ordered...


TitleJIRANotesStateChampion
CSM Migration
  • CSM will run out of primary key


Old Mongo Migration

/wiki/spaces/~dormsbee/pages/525861934


https://github.com/edx/edx-platform/pull/17393/files

Needs Discovery
pymongo upgrade PLAT-753 - Getting issue details... STATUS
Ready for work
CSMH migration
  • Put this offline in S3
  • removes an entire database system
Needs Discovery
Django upgrade cleanup PLAT-1717 - Getting issue details... STATUS


Celery Upgrade
PLAT-1684 - Getting issue details... STATUS
Upgrade Celery 3 → Celery 4Ready for work

edx-platform Python 3 upgrade


  • Django 2.0 will require python 3. 
  • Django 1.11 support will end at the earliest on April 1, 2020
  • In order to properly support the open source community the edx-platform must be upgraded to python 3 / Django 2.0 before the lat 2019 
Needs Discovery
Boundry cleanup

PLAT-1782 - Getting issue details... STATUS

We are currently unable to import from certain paths in the edx-platform. Clean this up.Ready for work
Pact - Contract testing

Enables consumer driven contract testing, providing a mock service and DSL for the consumer project, and interaction playback and verification for the service provider project.


https://github.com/pact-foundation/pact-python

Needs Discovery
Image Resizing

Currently images are served at whatever size they were uploaded as. This allows course authors to do things such as:

  • Uplaod a 10meg image for a thumbnail
  • Cause slower page loads

We should have a way to resize images that are uploaded to optimize for page load times in the platform.

Dave's Doc: https://docs.google.com/document/d/17V3TXAnSfJXyYW1cC0273rJWSS6QtKu1yh70H-Bucr0/edit#

Possible solution: http://thumbor.org/

Needs Discovery
Bulk Emailer
  • Perhaps covered under ACE
  • One of the goals is to stop sending email via the web servers
Needs Discovery
Library upgrade pull request tool

PLAT-1783 - Getting issue details... STATUS

Should we just use requires.io? Ready for Discovery
Distributed Configuration
  • Separate configuration from code in all our applications.
  • One AMI built per cluster
    • For example, an 'edxapp' AMI instead of all these:
      • stage-edx-edxapp
      • loadtest-edx-edxapp
      • prod-edx-edxapp
      • prod-edge-edxapp
  • Would be nice:
    • Dynamic configuration changes without new AMI deployment
Needs Discovery
Open edx release automation PLAT-1921 - Getting issue details... STATUS Automate the steps necessary to do an open source release

Red/Black queue deployments 

PLAT-1751 - Getting issue details... STATUS
Isolate queues for each deployment. Engineers shouldn't need to program for isolation inside the application.Needs Discovery
Databases on demand
  • It takes too long to bring up databases for testing in environments
  • The data needs to be scrubed
  • would be nice if this could be a one click process
Needs Discovery