-
Task
-
Resolution: Unresolved
-
Minor
-
None
-
Future Dev
-
MDL-81864-main-4
-
-
-
8
-
Team Alpha - Sprint 2 I4-2024, Team Alpha - Sprint 3 I4-2024, Team Alpha - Planning I1-2025, Team Alpha - Sprint 1 I1-2025, Team Alpha - Sprint 2 I1-2025, Team Alpha - Sprint 3 I1-2025, Team Alpha - Sprint 4 I1-2025, Team Alpha - Planning I2-2025, Team Alpha - Sprint 1 I2-2025, Team Alpha - Sprint 2 I2-2025
At a high level, the goals for backup and restore in the LTI migration project are as follows:
- Support backup and restore of tools and tool instances in new sites. I.e. no legacy data.
- Support the restoration of legacy mod_lti backups into new sites.
This issue is focused on tackling the first of the above two goals, and deals with the core_ltix chunk of the backup and restore. MDL-79848 will deal with the shim code that will be required inside mod_lti to support legacy backups (code that will eventually call into the core_ltix restore code to restore a legacy tool into the proper location).
The goals for this issue are therefore:
- Course and site tools should be included in activity/course backups when relevant.
- These tools are housed inside core_ltix now
- We'll need to double check the current rules for inclusion used by mod_lti, which I believe are something like "include the tools only if they are used, otherwise omit". Essentially, we want to use the same logic for inclusion as we always have.
- Restore should return these course and site tools also per the existing mod_lti logic which, again, we'll need to check and clearly document.
- Both backup and restore need to be aware of ltixservice and ltixsource plugins, as was the case in the past (albeit with the mod_lti subplugins, ltiservice and ltisource). Once again, mod_lti should prove to be a good source of truth for when to include the service data in backups.
Note: At this point in time, since MDL-79973 isn't done yet, we won't have a clear way to define "This tool is being used" (since that issue is redefining the tool instances data structures which we've historically used to determine that). We can start this work, but we may have to just stub that part of the code until I've finished 79973.
Initially, we probably want to just document how mod_lti backup/restore works in a number of scenarios, so we better understand what we're aiming to achieve.