Project:Wiki/Updates/1.38.2
From Gentoo Wiki
< Project:Wiki | Updates
Jump to:navigation
Jump to:search
Testing
- 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)
- Download the latest release (or the appropriate patch) and associated signature to the work directory.
- Update MediaWiki release GPG signing keys: gpg --fetch-keys "https://www.mediawiki.org/keys/keys.txt"
- Download full release and signature:
- Release: wget https://releases.wikimedia.org/mediawiki/1.38/mediawiki-1.38.2.tar.gz
- Release signature example: https://releases.wikimedia.org/mediawiki/1.38/mediawiki-1.38.2.tar.gz.sig
- Check release signature: gpg --verify mediawiki-1.38.2.tar.gz.sig mediawiki-1.38.2.tar.gz
- Decompress tarball: tar --extract --gzip --preserve-permissions --xattrs-include='*.*' --acls --numeric-owner --verbose --file mediawiki-1.38.2.tar.gz --directory /output/location
- For LTS releases, download patch and signature:
- Patch: wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.7.patch.gz
- Patch signature: wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.7.patch.gz.sig
- Check patch signature: gpg --verify mediawiki-1.35.7.patch.gz.sig mediawiki-1.35.7.patch.gz
- Decompress patch: gunzip mediawiki-1.35.7.patch.gz
Create backups
- 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.
- 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)
- Apply release:
- TODO
- 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.
- 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.
- Mark the wiki as read-only during data migration and upgrade:
to LocalSettings.php
- Bring puppet and wiki repositories up to latest revisions.
- Update plugins and extensions via composer:
- Run composer update --no-dev
- Run php maintenance/update.php to update the database schema.
- Manual plugin updates:
- Research updates from upstream locations.
- Potentially upgrade Tyrian's embedded Bootstrap to latest release (v4.x).
- Research updates from upstream locations.
- 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
- Once satisfied, release read-only or do a rollback.
Post-update checklist
Upon success update:
- Pending...
Rollback checklist
Upstream's instructions are found here.
In the event of update issues, here are procedures to follow:
- Halt edits via marking thee database read-only.
- Move target back to old database.
- Move old script files back.
- Revert puppet changes and wiki repository checkouts.
- Update/modify infra-status site with details as necessary.
- Remove notification.
- Unlock read-only status on wiki.