From Gentoo Wiki
Jump to:navigation Jump to:search


  • Use wikitest.g.o site as staging area for MediaWiki stable releases.
  • Check system requirements for release.
    • Check present version: php --version
    • Update PHP to latest stable release (if necessary). It may be necessary to create docs on Infra wiki for this task, since they may not exist.

Pre-update checklist

Download, verify, decompress update file(s)

  1. Download the latest release (or the appropriate patch) and associated signature to the work directory.

Create backups

  1. Create a database export/backup (SQL and XML) of the current wiki on the database cluster. See the infrawiki's runbook for more details here.
  2. Backup current htdocs, copy wiki images to wikitest, then copy wikitest htdocs to updated:
    • htdocs: tar --create --preserve-permissions --xz --xattrs-include='*.*' --acls --verbose --file gentoowiki.tar.xz --directory /path/to/directory/ .

Apply update(s)

  1. Apply release:
    • TODO
  2. Apply patch:
    • patch -p1 --dry-run -i mediawiki-1.35.7.patch.gz
    • Apply the patch: patch -p1 -i mediawiki-1.35.7.patch.gz
      • Check Special:Version to see the version has been updated to the same version as the patch.
    • Apply database update: php maintenance/update.php

High-level checklist

Follow upstream's guide, and add the following for Gentoo stuff.

  1. If updating wiki.g.o: commit notification of planned downtime to infra-status site.
    • Add planned outage details under "Maintenance and outage notices" section of infra-status.
  2. Mark the wiki as read-only during data migration and upgrade: to LocalSettings.php
  1. Bring puppet and wiki repositories up to latest revisions.
  2. Update plugins and extensions via composer:
    • Run composer update --no-dev
    • Run php maintenance/update.php to update the database schema.
  3. Manual plugin updates:
    • Research updates from upstream locations.
        • Potentially upgrade Tyrian's embedded Bootstrap to latest release (v4.x).
  4. Other manual updates:
    • Update copyright year to latest year.
    • Ensure Gentoo_Wiki is set as NS_PROJECT in htdocs/includes/title/NamespaceInfo.php - This fixes some bugs that do not read the local config
  5. Once satisfied, release read-only or do a rollback.

Post-update checklist

Upon success update:

  1. Pending...

Rollback checklist

Upstream's instructions are found here.

In the event of update issues, here are procedures to follow:

  1. Halt edits via marking thee database read-only.
  2. Move target back to old database.
  3. Move old script files back.
  4. Revert puppet changes and wiki repository checkouts.
  5. Update/modify infra-status site with details as necessary.
    • Remove notification.
  6. Unlock read-only status on wiki.

Additional info