Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Import and export of Blockstore-backed content libraries.

  • Copy-paste Text templates in the library-authoring experience.Text templates in the library-authoring experience

  • Filtering content library problems by type when referencing them in courses.

Get Ready to slash-n-burn!

This project will deprecate a number of features and areas of code. The first is Blockstore’s capability to run as a separate service. The second, and largest task, will be to enable the removal of all of the V1 content libraries code.

In addition, we will be removing the library_source block, an initial attempt to add specific library reference. Instead, we will be offering one library block, the library content block, which will allow for both randomized and specific content.

Design Diagram

...

This is a high level diagram of the feature implementation. Note that Library content is consumed in courses by xblocks, which contain a reference to that library content in their metadata. Learning contexts can then use that reference to “pull” in the required content from the library. Someday, courses might also store their metadata and content in a fashion similar to blockstore, as it is more performant. It is more performant because V2 xblocks better differentiate their content from metadata, and therefore can operate more efficiently. In addition, S3 provides an elegant solution for object storage, which opens the door for better static asset management and flexibility in learning context structure.

...

T&L is splitting this work into two streams, since parallelization is possible.  Dave Ormsbee and Kyle McCormick from Axim will also contribute to the project with code and reviews, focusing mostly on the backend work. Braden MacDonald from openCraft will also contribute to the project with technical/domain guidance.

Milestone 1:
Discovery

What is left to operationalize course-authoring repo and MFE?
What bugs exist in the current MFE?
Should we consider learning-core instead of blockstore?

Milestone 2a:
Blockstore IDA -> plugin

Switch the site to use plugin
Turn off IDA
Tear down IDA
DEPR IDA

Milestone 3a:
LA MFE uses v2 Editors

Ingress & Egress

Milestone 3b:
Library Import Flow

Library export package Import/Export capability
Possibly a converter from v1 package to v2 library?

Milestone 2b:
Libraries v1->v2

Create Library, Reference, Cleanup commands
Write runbook
Execute runbook locally, on sandbox, on stage (NOT PROD)

Milestone 4a:
UAT

Internal product, eng, UX testing
Missing feature buildout
Bug fixes

Milestone 4b:
Beta

Beta testing in sandbox and/or Stage environments.
Possibly limited beta in prod (no course-side)

Rollout!

Single cutover event with T&L and SRE.
Will require a scheduled Studio downtime window.

Rollout Strategy

The rollout of Library Authoring v2 will be atomic in nature (aka flipping the waffleflag for all users), and will require a scheduled Studio downtime window to ensure the migration of Content Library data is comprehensive.  The rollout date will be heavily communicated with edx.org content authors through all available communication channels.  

...