Copy moodle/testdata/automated_backup_single.php under Moodle's admin/cli. (helper scripts will be embedded in the Mash binary in the future)
From Moodle's root:
mash autobackup
Drop-in replacement for Moodle's ./admin/cli/automated_backups.php or Moodle's regular cron running automated backups.
Replaces the regular automated backups task with more efficient, concurrent, controlled version for large sites.
It operates by the definitions from Moodle's settings for automated backups from the database.
Respected Settings
- backup_auto_active
- backup_auto_max_kept
- backup_auto_storage
- backup_auto_destination
- backup_auto_skip_modif_prev
In addition, if contextlocking setting is enabled, Frozen courses and courses under frozen categories will be skipped.
This will serve as a POC for the moodle/ go package
Copy moodle/testdata/config-dist.php to moodle source direcotry, Adjust Parameters, Run clean installation of moodle (>=3.8).
Than symlink to moodle/testdata/config.php, This config.php need to contain $CFG->dirroot pointing to moodle's code
Than go test ./...
Some tests will need to create multiple backups, So it will sleep 1 minute between backups (Backups are timestamped to minute, so if we dont sleep it will override each-other)