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

Add Moodle 2.6.0 upgrade line to all the upgrade.php scripts

    XMLWordPrintable

Details

    • Task
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 2.6
    • 2.6.1, 2.7
    • Installation
    • MOODLE_26_STABLE
    • MOODLE_26_STABLE, MOODLE_27_STABLE
    • MDL-42930-master
    • Easy
    • Hide

      1) find . -name upgrade.php | xargs grep -B4 'return true;' check all upgrade scripts have the v.2.6.0 comment before the return. Exception : ./question/upgrade.php isn't about db upgrade.
      2) check that the 3 commands in the description of the issue return 0 files.
      3) rock on.

      Show
      1) find . -name upgrade.php | xargs grep -B4 'return true;' check all upgrade scripts have the v.2.6.0 comment before the return. Exception : ./question/upgrade.php isn't about db upgrade. 2) check that the 3 commands in the description of the issue return 0 files. 3) rock on.

    Description

      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.6.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 26_STABLE and master branches, so they will allow quickly find where 2.6.0 started and act once we decide future requirements.

      The change can be performed globally with:

      #!/bin/bash
      export rel="2.6.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.6.0 release upgrade'
      

      Commands to detect that we have not added the lines to incorrect files:

      grep -lr 'Moodle v2.6.0 release upgrade' * | grep -v '/db/'
      grep -lr 'Moodle v2.6.0 release upgrade' * | xargs grep -L 'function.*xmldb_.*_upgrade'
      

      Ciao

      Attachments

        Issue Links

          Activity

            People

              damyon Damyon Wiese
              stronk7 Eloy Lafuente (stronk7)
              Petr Skoda Petr Skoda
              Dan Poltawski Dan Poltawski
              Rossiani Wijaya Rossiani Wijaya
              Matteo Scaramuccia, Andrew Lyons, Huong Nguyen, Jun Pataleta, Michael Hawkins, Shamim Rezaie, Simey Lameze
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                13/Jan/14