MDL-77837 cron: Ensure user is set when running tasks

We should be proactive in ensuring that the environment is clean when
running a task. We already ensure that we have a clean renderer and
other parts of the output chain, but we were not setting a clean user.

This change adds a call to setup the cron user before each task is
actually executed.
This commit is contained in:
Andrew Nicols 2023-04-04 09:25:04 +08:00
parent bd2de8edf6
commit 12b0f796b9

View File

@ -348,6 +348,10 @@ class cron {
$predbqueries = null;
$predbqueries = $DB->perf_get_queries();
$pretime = microtime(1);
// Ensure that we have a clean session with the correct cron user.
self::setup_user();
try {
get_mailer('buffer');
self::prepare_core_renderer();
@ -446,6 +450,9 @@ class cron {
}
self::setup_user($user);
} else {
// No user specified, ensure that we have a clean session with the correct cron user.
self::setup_user();
}
try {