Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-81864

Create core_ltix backup and restore code

    • 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:

      1. Support backup and restore of tools and tool instances in new sites. I.e. no legacy data.
      2. 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:

      1. 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.
      2. 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.
      3. 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.

            rezaie9 Shamim Rezaie
            jaked Jake Dallimore
            Jake Dallimore Jake Dallimore
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 1 week, 3 days, 1 hour, 58 minutes
                1w 3d 1h 58m

                  Error rendering 'clockify-timesheets-time-tracking-reports:timer-sidebar'. Please contact your Jira administrators.