-
Task
-
Resolution: Fixed
-
Critical
-
2.2, 2.3
-
MOODLE_22_STABLE, MOODLE_23_STABLE
-
MOODLE_22_STABLE
-
Easy
-
In order to have it properly detected for the future it would be great to add to all the upgrade.php scripts some lines like these:
// Moodle v2.3.0 release upgrade line
|
// Put any upgrade step following this
|
exactly before the "return true;" present in all the scripts.
I think it's ok to do that both in the 23_STABLE and master branches, so they will allow quickly find where 2.3.0 started and act once we decide future requirements.
The change can be performed globally with:
#!/bin/bash
|
export rel="2.3.0" && find . -name upgrade.php | \
|
xargs grep -l 'function.*xmldb_.*_upgrade' | \
|
grep '/db/' | \
|
xargs grep -L "Moodle v${rel} release upgrade" | \
|
xargs perl -p -i -e 's@( *)(return true;)@\1// Moodle v$ENV{rel} release upgrade line\n\1// Put any upgrade step following this\n\n\n\1\2@s'
|
Command to detect all the upgrade.php files not having those lines:
find . -name upgrade.php | xargs grep -l 'function.*xmldb_.*_upgrade' | grep '/db/' | xargs grep -L 'Moodle v2.3.0 release upgrade'
|
Commands to detect that we have not added the lines to incorrect files:
grep -lr 'Moodle v2.3.0 release upgrade' * | grep -v '/db/'
|
grep -lr 'Moodle v2.3.0 release upgrade' * | xargs grep -L 'function.*xmldb_.*_upgrade'
|
Ciao