Mediawiki 1.35 Migration

From BITPlan Wiki
Jump to navigation Jump to search

<slideshow style="bitplan" headingmark="⌘⌘" incmark="…" scaled="true" font="Arial" >


Mediawiki 1.35 LTS migration

Wolfgang Fahl
SMW Con Fall 2020


⌘⌘ Agenda

  • Why should i migrate / what is the effort / is it reversible?
  • Prerequisites/Backup/Trial environment/Installation
  • Extensions / Composer Based / List of Extensions
  • Try and Error / Debug
  • Wiki Family / Site Transfer automation
  • Questions / Discussion

⌘⌘ MediaWiki 1.35 LTS


⌘⌘ Why should i migrate?

Bigstockphoto Pray 1018025.jpg
  • 1.31 LTS went end-of-life in June 2021.
  • 1.27 LTS went end-of-life in June 2019.
  • its an opportunity to clean and fix things
  • Avoid the "Just upgrade!" shame

⌘⌘ What is the effort?

  • It Depends ...
  • BITPlan and
    Hello World
    report multi-week efforts ...

⌘⌘ Is the migration reversible?

  • No its all or nothing!
  • really?
  • Really there is no proper incremental way
  • You'll not like to try so better assume "No!"

⌘⌘ Prerequisites

LAMP Stack ..

Linux Ubuntu logo.svg e.g. Ubuntu 20.04
lsb_release -a
Apache Apache Server Apache HTTP server logo (2019-present).svg e.g. 2.4
 /usr/sbin/apache2 -v
mariaDB Mariadb-seal-browntext.svg e.g. 15.1 / 10.3.25
mysql --version
PHP PHP-logo.svg > 7.3.19
php --version

⌘⌘ Backup

  1. mysqldump (full)
    /usr/bin/mysqldump $l_login_path --quick --routines $createopt --skip-add-locks --complete-insert --opt "$db" > $today/$dbfile
  2. rsync of images directory
    rsync -avz  --no-perms --omit-dir-times $srcServer:$l_path/* $l_path

⌘⌘ Trial environment


don't do
this in your
production environment!

⌘⌘ Installation

wf@q:/var/www/mediawiki$ sudo tar xvfz /usr/local/src/mediawiki-1.35.0.tar.gz

⌘⌘ Composer based

  "require": {
    "mediawiki/semantic-media-wiki": "~3.2.0",
    "mediawiki/semantic-cite": "~2.1.1",
    "mediawiki/semantic-result-formats": "~3.2.0",
    "mediawiki/page-forms": "^4.9.5",
    "mediawiki/maps": "~7.0"
sudo chmod -R  g+w vendor extensions
composer update -vvv --no-dev
wfLoadExtension( 'Maps' );

⌘⌘ List of Extensions

Admin LinksAdmin Links LinksAdmin Links is an extension to MediaWiki that defines a special page, "Special:AdminLinks",
that holds links meant to be helpful for wiki administrators;
it is meant to serve as a "control panel" for the functions an administrator would typically perform in a wiki.
All users can view this page; however, for those with the 'adminlinks' permission (sysops/administrators, by default),
a link to the page also shows up in their "Personal URLs", between "Talk" and "Preferences".
13 May 2009
DiagramsDiagrams deprecated and

12 December 2019
Header TabsHeader Tabs TabsThe Header Tabs extension transforms top-level MediaWiki headers into tabs using the jQuery UI JavaScript library.20 March 2008
HitCountersHitCounters displays the view count in the page footer
and the most viewed pages on a special page called Special:PopularPages.
24 October 2014
MagicNoCacheMagicNoCache MagicNoCache extension creates a new magic word '"`UNIQ--nowiki-00000BBD-QINU`"' and disables the cache for any page in which it finds it. Thus it makes sure that specific pages never get cached as they get updated extremely frequently1 January 2012
MapsMaps maps2009
MermaidMermaid extension provides the #mermaid parser function to support the generation of diagrams and flowcharts with the help of the mermaid script language.30 December 2017
MsUploadMsUpload MsUpload extension allows users to upload multiple files by drag & drop in the standard MediaWiki edit page.17 April 2013
NetworkNetwork display of page connections5 June 2020
PDFEmbedPDFEmbed PDF content inline
Page FormsPage Forms Formsallows users to add, edit and query data using forms.7 September 2016
ParserFunctionsParserFunctions ParserFunctions extension enhances the wikitext parser with helpful functions, mostly related to logic and string-handling.
PiwoPiwo and executes Python code stored in wiki pages.4 January 2018
Quiz-ExtensionQuiz for Training Wikis24 March 2007
Reveal-SlidesReveal-Slides presentation from Wikimarkup using reveal.js2021
S5SlideShowS5SlideShow presentation from Wikimarkup2009
Semantic CiteSemantic Cite CiteBibliographic References2015
Semantic MediaWikiSemantic Cite CiteBibliographic References2015
Semantic WikibaseSemantic Wikibase Wikibase
SimpleMathJaxSimpleMathJax SimpleMathJax extension enables MathJax, a JavaScript library,
for typesetting TeX formula in MediaWiki inside math environments.
- Workaround if extension Math does not work
10 September 2014
SparqlResultFormatSparqlResultFormat to render SPARQL query results7 August 2019
SyntaxHighlightingSyntaxHighlight highlighting of diverse languages3 April 2007
UserFunctionsUserFunctions UserFunctions extension provides a set of dynamic parser functions that trigger on the current user18 December 2011
VariablesVariables Variables extension allows you to define a variable on a page, use it later in that same page or included templates ...13 November 2011
Wikibase clientWikibase Client Client
YouTubeYouTube youtube videos26 October 2010

⌘⌘ Try and error

  • start with an "empty" list of extensions
  • activate extension by extension
  • on error - fix or disable

⌘⌘ Debug

Icon Debug 256x256.png

⌘⌘ Wiki Family

Icon people.svg


⌘⌘ Site Transfer automation

#  Apache configuration
tsite partner -s   -b -a
# Images, Localsettings and git
tsite partner -s   -b -g -cs
# Pages via Database
tsite partner -s   -b -g -db
# Update to new version
tsite partner -s   -w
# Enable apache
tsite partner -e

⌘⌘ Apache configuration


⌘⌘ DNS entry


PING ( 56(84) bytes of data.
64 bytes from ( icmp_seq=1 ttl=64 time=0.019 ms

⌘⌘ rsync images and settings


⌘⌘ automatic git control


⌘⌘ SQL database transfer


⌘⌘ maintainance/update.php


⌘⌘ Apache enable site / restart


⌘⌘ Family index.php Clipboard20201125095324.png

⌘⌘ Test Site


⌘⌘ Questions/Discussion