Upgrade Mediawiki to v1.33.1
Jump to navigation
Jump to search
27 November 2019, BradnorRP1
Current situation
- Current version was v1.31.4 as installed by apt-get install mediawiki.
- This version is mainly installed under /usr/share/mediawiki with symlinks from $IP (set from MW_INSTALL_PATH, default /var/lib/mediawiki) except the cache, config, extensions and images directories, which are directly under $IP
- Latest version, v1.33.x not available by this means
- so downloaded from mediawiki.org.
- v1.33.1 is directly installed under $IP, i.e. /var/lib/mediawiki
Backup and modify current version
- Put up warning that wiki is old version
- In wiki modify 'Main_Page' with warning at start of the form
- ==<span style="color:red">Warning!! :: this is 192.168.192.201 Mediawiki <small>v</small>1.31.4</span>==
- and maybe alter logo at /var/lib/mediawiki/resources/assets/bradnor-logo.png
- ==<span style="color:red">Warning!! :: this is 192.168.192.201 Mediawiki <small>v</small>1.31.4</span>==
- In wiki modify 'Main_Page' with warning at start of the form
- Backup and restore wiki database
- $ sudo automysqlbackup
- and copy locally and extract
- $ sudo cp /var/lib/automysqlbackup/daily/bradnor/bradnor_2019-11-27_16h55m.Wednesday.sql.gz .
- $ sudo chown ch:ch ./bradnor_2019-11-27_16h55m.Wednesday.sql.gz
- $ gunzip ./bradnor_2019-11-27_16h55m.Wednesday.sql.gz
- edit the sql file to change the hardcoded database reference
- $ emacs ./bradnor_2019-11-27_16h55m.Wednesday.sql
- and change the CREATE DATABASE and USE statements to reference a different database 'bradnor1314'
- $ emacs ./bradnor_2019-11-27_16h55m.Wednesday.sql
- restore database to new database
- $ cat bradnor_2019-11-27_16h55m.Wednesday.sql | sudo mysql
- and set privileges
- $ sudo mysql
- GRANT SELECT,CREATE,UPDATE,DELETE ON bradnor1314.* TO 'mediawiki'@'localhost';
- $ cat bradnor_2019-11-27_16h55m.Wednesday.sql | sudo mysql
- Advertise Bradnorwiki as being under maintenance by redirecting symlink in web directory to holding page
- $ sudo ln -sf /var/www/html/bradnorwiki-maintenence /var/www/html/bradnorwiki
- Ensure current version can run from 'non-standard' directory name, i.e. .../mediawiki.1.31.4
- Move installation directory to new name
- $ sudo mv /var/lib/mediawiki /var/lib/mediawiki.1.31.4
- edit soft link from web directory
- $ sudo ln -sfn /var/lib/mediawiki.1.31.4 /var/www/html/bradnorwiki-old
- edit LocalSettings
- rename LocalSettings file and update symlink
- $ sudo mv /etc/mediawiki/LocalSettings.php /etc/mediawiki/LocalSettings.1.31.4.php
- $ sudo ln -sf /etc/mediawiki/LocalSettings.1.31.4.php /var/lib/mediawiki.1.31.4/LocalSettings.php
- $ sudo emacs /etc/mediawiki/LocalSettings.1.31.4.php
- and change $wgScriptPath to be /bradnorwiki-old
- rename LocalSettings file and update symlink
- change database login in LocalSettings
- $ sudo cp -a /var/security/db.php /var/security/db.1.31.4.php
- $ sudo emacs /var/security/db.1.31.4.php
- and change $wgDBname = "bradnor"; to $wgDBname = "bradnor1314";
- and edit
- $ sudo emacs /etc/mediawiki/LocalSettings.1.31.4.php
- and change require_once "/var/security/db.php"; to require_once "/var/security/db.1.31.4.php";
- $ sudo emacs /etc/mediawiki/LocalSettings.1.31.4.php
- Move installation directory to new name
- Edit apache config
- $ sudo emacs /etc/apache2/conf-enabled/mediawiki.conf
- and update or add setenv MW_INSTALL_PATH /var/lib/mediawiki.1.31.4
- $ sudo emacs /etc/apache2/conf-enabled/mediawiki.conf
- restart apache
- $ sudo systemctl restart apache2
Install new version
- Download and extract latest version of mediawiki
- $ cd tmp
- $ wget https://releases.wikimedia.org/mediawiki/1.33/mediawiki-1.33.1.tar.gz
- $ tar -xvzf ./mediawiki-1.33.1.tar.gz
- $ rm ./mediawiki-1.33.1.tar.gz
- $ mv ./mediawiki-1.33.1 ./mediawiki-1.33.1
- Copy some files, such as images, config and logos
- $ sudo cp -a /etc/mediawiki/LocalSettings.1.31.4.php /etc/mediawiki/LocalSettings.1.33.1.php
- $ sudo ln -s /etc/mediawiki/LocalSettings.1.33.1.php /etc/mediawiki/LocalSettings.php
- $ sudo ln -s /etc/mediawiki/LocalSettings.php var/lib/mediawiki-1.33.1/LocalSettings.php
- $ sudo cp -a /var/lib/mediawiki.1.31.4/resources/assets/bradnor-logo.png /var/lib/mediawiki-1.33.1/resources/assets/
- $ sudo cp /var/lib/mediawiki.1.31.4/robots.txt /var/lib/mediawiki-1.33.1/
- $ sudo cp -a /var/lib/mediawiki.1.31.4/images/. /var/lib/mediawiki-1.33.1/images/
- and some security stuff
- $ sudo find ./images -type d -exec chmod 755 {} \;
- $ sudo chgrp -R www-data /var/lib//mediawiki-1.33.1/images
- download and install latest versions of extensions
- namely PDFEmbed, UserMerge, Elastica, Cirrussearch (note: not got working yet)
- make the new folder the distribution
- $ sudo ln -sfn /var/lib/mediawiki-1.33.1 /var/lib/mediawiki
Configure new version
- Modify LocalSettings to deprecate
- $ sudo emacs /etc/mediawiki/LocalSettings.php
- comment out the line require_once "$IP/includes/PlatformSettings.php";
- and change $wgScriptPath to be bradnorwiki-new
- change require_once "/var/security/db.1.31.4.php"; to require_once "/var/security/db.php";
- $ sudo emacs /etc/mediawiki/LocalSettings.php
- Run update script
- $ sudo cd /var/lib/mediawiki
- $ sudo php maintenance/update.php
- note that might have to all privileges to database for mediawiki
- update symlink in web directory
- $ sudo ln -sfn /var/lib/mediawiki.1.33.1 /var/www/html/bradnorwiki-new
- Edit apache config
- $ sudo emacs /etc/apache2/conf-enabled/mediawiki.conf
- and update or add setenv MW_INSTALL_PATH /var/lib/mediawiki.1.33.1
- $ sudo emacs /etc/apache2/conf-enabled/mediawiki.conf
- restart apache
- $ sudo systemctl restart apache2
- Test
- Browse to 192.168.192.201/bradnorwiki-new
- Check Version page for version and installed extensions
- Browse to check if everything is OK
- Edit Main_Page to remove warning
- Browse to 192.168.192.201/bradnorwiki-new
Finish
- Bring Bradnorwiki online by redirecting symlink in web directory
- $ sudo ln -sfn /var/lib/mediawiki /var/www/html/bradnorwiki