Difference between revisions of "Mediawiki 1.35 Migration"
Jump to navigation
Jump to search
(41 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | {{PageSequence|prev=SMWConTalk2020-04|next= | + | {{PageSequence|prev=SMWConTalk2020-04|next=SMWConTalk2022-10|category=talk|categoryIcon=picture-o}}{{ShowSlides}} |
+ | |||
<slideshow style="bitplan" headingmark="⌘⌘" incmark="…" scaled="true" font="Arial" > | <slideshow style="bitplan" headingmark="⌘⌘" incmark="…" scaled="true" font="Arial" > | ||
− | ;title: [[File:WolfgangFahl.png|200px|left|link=https://www.semantic-mediawiki.org/wiki/User:WolfgangFahl]]<br><span style='font-size:150%'>Mediawiki 1.35 LTS migration</span> | + | ;title: [[File:BITPlanLogoFontLessTransparent.png|240px|link=http://www.bitplan.com|BITPlan]]<br>[[File:WolfgangFahl.png|200px|left|link=https://www.semantic-mediawiki.org/wiki/User:WolfgangFahl]]<br><span style='font-size:150%'>Mediawiki 1.35 LTS migration</span> |
;author: <span style='font-size:50%'><br> [https://www.semantic-mediawiki.org/wiki/User:WolfgangFahl Wolfgang Fahl] [mailto:info@bitplan.com info@bitplan.com]</span> | ;author: <span style='font-size:50%'><br> [https://www.semantic-mediawiki.org/wiki/User:WolfgangFahl Wolfgang Fahl] [mailto:info@bitplan.com info@bitplan.com]</span> | ||
;footer: Tutorial | ;footer: Tutorial | ||
;subfooter: SMW Con Fall 2020 | ;subfooter: SMW Con Fall 2020 | ||
</slideshow> | </slideshow> | ||
+ | ===⌘⌘ 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 == | == ⌘⌘ MediaWiki 1.35 LTS == | ||
[[File:MediaWikiLogo.png|132px|right]] | [[File:MediaWikiLogo.png|132px|right]] | ||
Line 12: | Line 21: | ||
* End of Life: September 2023. | * End of Life: September 2023. | ||
== ⌘⌘ Why should i migrate? == | == ⌘⌘ Why should i migrate? == | ||
+ | <div style='float:right'>{{Bigstock|id=1018025}}</div> | ||
* 1.31 LTS went end-of-life in June 2021. | * 1.31 LTS went end-of-life in June 2021. | ||
* 1.27 LTS went end-of-life in June 2019. | * 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? == | ||
+ | <div style='float:left'>{{Bigstock|id=6212739}}</div> | ||
+ | * It Depends ... | ||
+ | * BITPlan and <br>Hello World <br>report multi-week efforts ... | ||
+ | |||
== ⌘⌘ Is the migration reversible? == | == ⌘⌘ Is the migration reversible? == | ||
<div style='float:right'><youtube>aRoiM-buNHE</youtube></div> | <div style='float:right'><youtube>aRoiM-buNHE</youtube></div> | ||
− | + | * No its all or nothing! | |
− | * No! | ||
* really? | * really? | ||
+ | * Really there is no proper incremental way | ||
* You'll not like to try so better assume "No!" | * You'll not like to try so better assume "No!" | ||
== ⌘⌘ Prerequisites == | == ⌘⌘ Prerequisites == | ||
− | + | LAMP Stack .. | |
− | + | {| class="wikitable" | |
+ | |- | ||
+ | | [https://en.wikipedia.org/wiki/Linux Linux] || [[File:Ubuntu_logo.svg|120px]] || e.g. Ubuntu 20.04 || <source lang='bash'>lsb_release -a</source> | ||
+ | |- | ||
+ | | [https://en.wikipedia.org/wiki/Apache_HTTP_Server Apache Apache Server] || [[File:Apache_HTTP_server_logo_(2016).svg|120px|link=https://en.wikipedia.org/wiki/Apache_HTTP_Server]] || e.g. 2.4 || <source lang='bash'> /usr/sbin/apache2 -v</source> | ||
+ | |- | ||
+ | | [https://mariadb.org/ mariaDB] || [[File:Mariadb-seal-browntext.svg|120px|link=https://mariadb.org/]] || e.g. 15.1 / 10.3.25 || <source lang='bash'>mysql --version</source> | ||
+ | |- | ||
+ | | [https://www.php.net PHP] || [[File:PHP-logo.svg|120px|link=https://www.php.net]] || > 7.3.19 || <source lang='bash'>php --version</source> | ||
+ | |} | ||
+ | |||
== ⌘⌘ Backup == | == ⌘⌘ Backup == | ||
Line 29: | Line 57: | ||
# rsync of images directory<source lang='bash'>rsync -avz --no-perms --omit-dir-times $srcServer:$l_path/* $l_path</source> | # rsync of images directory<source lang='bash'>rsync -avz --no-perms --omit-dir-times $srcServer:$l_path/* $l_path</source> | ||
+ | == ⌘⌘ Trial environment == | ||
+ | [[File:Computer-kitten.jpg|200px|right]] | ||
+ | Kids <br> | ||
+ | don't do <br> | ||
+ | this in your <br> | ||
+ | production environment! | ||
Line 35: | Line 69: | ||
wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.0.tar.gz | wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.0.tar.gz | ||
wf@q:/var/www/mediawiki$ sudo tar xvfz /usr/local/src/mediawiki-1.35.0.tar.gz | wf@q:/var/www/mediawiki$ sudo tar xvfz /usr/local/src/mediawiki-1.35.0.tar.gz | ||
+ | </source> | ||
+ | |||
+ | == ⌘⌘ Composer based == | ||
+ | <source lang='json'> | ||
+ | { | ||
+ | "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" | ||
+ | } | ||
+ | } | ||
+ | </source> | ||
+ | <source lang='bash'> | ||
+ | sudo chmod -R g+w vendor extensions | ||
+ | composer update -vvv --no-dev | ||
+ | wfLoadExtension( 'Maps' ); | ||
</source> | </source> | ||
== ⌘⌘ List of Extensions == | == ⌘⌘ List of Extensions == | ||
Line 45: | Line 97: | ||
| ?Extension since = since | | ?Extension since = since | ||
}} | }} | ||
+ | == ⌘⌘ Try and error == | ||
+ | * start with an "empty" list of extensions | ||
+ | * activate extension by extension | ||
+ | * on error - fix or disable | ||
+ | |||
+ | == ⌘⌘ Debug == | ||
+ | [[File:Icon Debug 256x256.png|256px|left]] | ||
+ | * [https://www.mediawiki.org/wiki/Manual:How_to_debug Mediawiki Manual:How to debug] | ||
+ | * {{Link|target=PHP_Mediawiki_Eclipse_debugging}} | ||
+ | |||
+ | == ⌘⌘ Wiki Family == | ||
+ | [[File:Icon people.svg|200px|right]] | ||
+ | {{Link|target=Wiki_Family}} | ||
+ | {{:WikiFarm_Overview}} | ||
+ | == ⌘⌘ Site Transfer automation == | ||
+ | <source lang='bash'> | ||
+ | # Apache configuration | ||
+ | tsite partner -s s.bitplan.com -b -a | ||
+ | # Images, Localsettings and git | ||
+ | tsite partner -s s.bitplan.com -b -g -cs | ||
+ | # Pages via Database | ||
+ | tsite partner -s s.bitplan.com -b -g -db | ||
+ | # Update to new version | ||
+ | tsite partner -s s.bitplan.com -w | ||
+ | # Enable apache | ||
+ | tsite partner -e | ||
+ | </source> | ||
+ | == ⌘⌘ Apache configuration == | ||
+ | [[File:Clipboard20201125092135.png]] | ||
+ | |||
+ | == ⌘⌘ DNS entry == | ||
+ | [[File:Clipboard20201125092527.png]] | ||
+ | <source lang='bash'> | ||
+ | ping partner.q.bitplan.com | ||
+ | PING q.bitplan.com (91.250.86.204) 56(84) bytes of data. | ||
+ | 64 bytes from q.bitplan.com (91.250.86.204): icmp_seq=1 ttl=64 time=0.019 ms | ||
+ | </source> | ||
+ | == ⌘⌘ rsync images and settings == | ||
+ | [[File:Clipboard20201125092143.png]] | ||
+ | |||
+ | == ⌘⌘ automatic git control == | ||
+ | [[File:Clipboard20201125093912.png]] | ||
+ | == ⌘⌘ SQL database transfer == | ||
+ | [[File:Clipboard20201125094532.png]] | ||
+ | == ⌘⌘ maintainance/update.php == | ||
+ | [[File:Clipboard20201125094538.png]] | ||
+ | == ⌘⌘ Apache enable site / restart == | ||
+ | [[File:Clipboard20201125095140.png]] | ||
+ | == ⌘⌘ Family index.php == | ||
+ | http://q.bitplan.com | ||
+ | [[File:Clipboard20201125095324.png]] | ||
+ | |||
+ | == ⌘⌘ Test Site == | ||
+ | * [https://partner.bitplan.com/index.php/Special:Version check version] | ||
+ | * [https://partner.bitplan.com/index.php/Build_Your_Own_Self_Driving_Vehicle_with_Java check content] | ||
+ | [[File:Clipboard20201125100337.png|800px]] | ||
+ | |||
+ | == ⌘⌘ Questions/Discussion == | ||
+ | [[File:Bitplanpartner.png]] |
Latest revision as of 06:48, 19 April 2023
view Mediawiki 1.35 Migration as slides
<slideshow style="bitplan" headingmark="⌘⌘" incmark="…" scaled="true" font="Arial" >
- title
Mediawiki 1.35 LTS migration- author
Wolfgang Fahl info@bitplan.com- footer
- Tutorial
- subfooter
- SMW Con Fall 2020
</slideshow>
⌘⌘ 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
- https://www.mediawiki.org/wiki/MediaWiki_1.35
- Long Term Support LTS Version
- End of Life: September 2023.
⌘⌘ Why should i migrate?
- 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 | e.g. Ubuntu 20.04 | lsb_release -a
| |
Apache Apache Server | e.g. 2.4 | /usr/sbin/apache2 -v
| |
mariaDB | e.g. 15.1 / 10.3.25 | mysql --version
| |
PHP | > 7.3.19 | php --version
|
⌘⌘ Backup
- mysqldump (full)
/usr/bin/mysqldump $l_login_path --quick --routines $createopt --skip-add-locks --complete-insert --opt "$db" > $today/$dbfile
- rsync of images directory
rsync -avz --no-perms --omit-dir-times $srcServer:$l_path/* $l_path
⌘⌘ Trial environment
Kids
don't do
this in your
production environment!
⌘⌘ Installation
wget https://releases.wikimedia.org/mediawiki/1.35/mediawiki-1.35.0.tar.gz
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
Extension | name | url | purpose | since |
---|---|---|---|---|
Admin Links | Admin Links | https://www.mediawiki.org/wiki/Extension:Admin Links | Admin 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 |
Diagrams | Diagrams | https://www.mediawiki.org/wiki/Extension:Diagrams | Replaces deprecated
https://www.mediawiki.org/wiki/Extension:GraphViz and https://www.mediawiki.org/wiki/Extension:PlantUML extensions | 12 December 2019 |
Header Tabs | Header Tabs | https://www.mediawiki.org/wiki/Extension:Header Tabs | The Header Tabs extension transforms top-level MediaWiki headers into tabs using the jQuery UI JavaScript library. | 20 March 2008 |
HitCounters | HitCounters | https://www.mediawiki.org/wiki/Extension:HitCounters | HitCounters displays the view count in the page footer and the most viewed pages on a special page called Special:PopularPages. | 24 October 2014 |
ImageLink | ImageLink | https://github.com/BITPlan/ImageLink | Display Image and Link | 20 March 2008 |
MagicNoCache | MagicNoCache | https://www.mediawiki.org/wiki/Extension:MagicNoCache | The MagicNoCache extension creates a new magic word '"`UNIQ--nowiki-00000C16-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 frequently | 1 January 2012 |
Maps | Maps | https://www.mediawiki.org/wiki/Extension:Maps | displays maps | 2009 |
Mermaid | Mermaid | https://github.com/SemanticMediaWiki/Mermaid | This 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 |
MsUpload | MsUpload | https://www.mediawiki.org/wiki/Extension:MsUpload | The MsUpload extension allows users to upload multiple files by drag & drop in the standard MediaWiki edit page. | 17 April 2013 |
Network | Network | https://www.mediawiki.org/wiki/Extension:Network | Graphical display of page connections | 5 June 2020 |
PDFEmbed | PDFEmbed | https://github.com/WolfgangFahl/PDFEmbed | Display PDF content inline | |
Page Forms | Page Forms | https://www.mediawiki.org/wiki/Extension:Page Forms | allows users to add, edit and query data using forms. | 7 September 2016 |
ParserFunctions | ParserFunctions | https://www.mediawiki.org/wiki/Extension:ParserFunctions | The ParserFunctions extension enhances the wikitext parser with helpful functions, mostly related to logic and string-handling. | |
Piwo | Piwo | https://www.mediawiki.org/wiki/Extension:Piwo | Compiles and executes Python code stored in wiki pages. | 4 January 2018 |
Quiz-Extension | Quiz | https://www.mediawiki.org/wiki/Extension:Quiz | Quiz-Sets for Training Wikis | 24 March 2007 |
Reveal-Slides | Reveal-Slides | https://github.com/PascalNoisette/mediawiki-extensions-Slides | Slideshow presentation from Wikimarkup using reveal.js | 2021 |
S5SlideShow | S5SlideShow | https://www.mediawiki.org/wiki/Extension:S5SlideShow | Slideshow presentation from Wikimarkup | 2009 |
Semantic Cite | Semantic Cite | https://www.mediawiki.org/wiki/Extension:Semantic Cite | Bibliographic References | 2015 |
Semantic MediaWiki | Semantic Mediawiki | https://www.semantic-mediawiki.org/wiki/Semantic MediaWiki | Mediawiki with Semantic Annotation in Subject Predicate Object(Triple) style | 2005 |
Semantic Wikibase | Semantic Wikibase | https://www.mediawiki.org/wiki/Extension:Semantic Wikibase | ||
SimpleMathJax | SimpleMathJax | https://www.mediawiki.org/wiki/Extension:SimpleMathJax | The 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 |
SparqlResultFormat | SparqlResultFormat | https://www.mediawiki.org/wiki/Extension:SparqlResultFormat | Allows to render SPARQL query results | 7 August 2019 |
SyntaxHighlighting | SyntaxHighlight | https://www.mediawiki.org/wiki/Extension:SyntaxHighlight | syntax highlighting of diverse languages | 3 April 2007 |
UserFunctions | UserFunctions | https://www.mediawiki.org/wiki/Extension:UserFunctions | The UserFunctions extension provides a set of dynamic parser functions that trigger on the current user | 18 December 2011 |
Variables | Variables | https://www.mediawiki.org/wiki/Extension:Variables | The 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 client | Wikibase Client | https://www.mediawiki.org/wiki/Extension:Wikibase Client | ||
YouTube | YouTube | https://www.mediawiki.org/wiki/Extension:YouTube | Embed youtube videos | 26 October 2010 |
⌘⌘ Try and error
- start with an "empty" list of extensions
- activate extension by extension
- on error - fix or disable
⌘⌘ Debug
⌘⌘ Wiki Family
⌘⌘ Site Transfer automation
# Apache configuration
tsite partner -s s.bitplan.com -b -a
# Images, Localsettings and git
tsite partner -s s.bitplan.com -b -g -cs
# Pages via Database
tsite partner -s s.bitplan.com -b -g -db
# Update to new version
tsite partner -s s.bitplan.com -w
# Enable apache
tsite partner -e
⌘⌘ Apache configuration
⌘⌘ DNS entry
ping partner.q.bitplan.com
PING q.bitplan.com (91.250.86.204) 56(84) bytes of data.
64 bytes from q.bitplan.com (91.250.86.204): icmp_seq=1 ttl=64 time=0.019 ms