Difference between revisions of "Automated deployment of MediaWiki"

From Freephile Wiki
Jump to navigation Jump to search
(still needs review and updating; added section for WMF activity)
(review and organization)
Line 8: Line 8:
 
* [https://phabricator.wikimedia.org/T182020 Per RFC], distributors can override DefaultSettings.php with <code>includes/PlatformSettings.php</code>
 
* [https://phabricator.wikimedia.org/T182020 Per RFC], distributors can override DefaultSettings.php with <code>includes/PlatformSettings.php</code>
 
* OPEN task: [https://phabricator.wikimedia.org/T173955 Allow DefaultSettings.php be overridden by environment variables]
 
* OPEN task: [https://phabricator.wikimedia.org/T173955 Allow DefaultSettings.php be overridden by environment variables]
* [https://www.mediawiki.org/wiki/MediaWiki-Docker MediaWiki-Docker]
+
* [https://www.mediawiki.org/wiki/MediaWiki-Docker MediaWiki-Docker] (distributed with MediaWiki)
 
+
* [https://github.com/addshore/mediawiki-docker-dev MediaWiki-Docker-Dev] (Addshore's GitHub repo) for using Docker and MediaWiki (Developers)  See also: [https://github.com/addwiki/mediawiki-api MediaWiki API library] It's a library for making it easier to work with the MediaWiki API. Good to know/use/contribute. One member of a group of libraries to interact with WikiData, etc. ([https://addwiki.readthedocs.io/en/latest/ docs]) Addwiki repos are by Addshore, Jeroen DeDauw and Sam Wilson.
 
 
 
* [https://hub.docker.com/_/mediawiki/ Official Docker repository of MediaWiki]
 
* [https://hub.docker.com/_/mediawiki/ Official Docker repository of MediaWiki]
 
* [https://phabricator.wikimedia.org/tag/mediawiki-containers/ Phabricator workboard for MediaWiki-Containers]
 
* [https://phabricator.wikimedia.org/tag/mediawiki-containers/ Phabricator workboard for MediaWiki-Containers]
* [https://github.com/addshore/mediawiki-docker-dev Addshore's GitHub repo for using Docker and MediaWiki (Developers)] See also: [https://github.com/addwiki/mediawiki-api MediaWiki API library] Not exactly DevOps, but good to know/use/contribute. Addwiki repos are by Addshore, Jeroen DeDauw and Sam Wilson
 
 
* [https://github.com/wikimedia/mediawiki-docker Wikimedia Git repo of the Docker official image for MediaWiki] (forked from https://github.com/benhutchins/docker-mediawiki)
 
* [https://github.com/wikimedia/mediawiki-docker Wikimedia Git repo of the Docker official image for MediaWiki] (forked from https://github.com/benhutchins/docker-mediawiki)
 +
 +
=== Docker ===
 
* [https://github.com/docker-library/docs Docker Library Docs]
 
* [https://github.com/docker-library/docs Docker Library Docs]
 
* [https://github.com/docker-library/docs/tree/master/mediawiki Docker Library Docs for MediaWiki]
 
* [https://github.com/docker-library/docs/tree/master/mediawiki Docker Library Docs for MediaWiki]
 +
* [https://github.com/wikimedia/operations-docker-images-production-images Wikimedia base docker images for production] by [https://github.com/lavagetto lavagetto] (Giuseppe Lavagetto - Italy)
 +
 +
=== Node Services ===
 
* [https://github.com/wikimedia/mediawiki-node-services MediaWiki Node Services] Run several MediaWiki nodejs services (RESTBase, Parsoid) in a single docker container. Useful for small / low-memory installs. By WMF's [https://github.com/d00rman d00rman] (Marko Obrovac - Croatia) and [https://github.com/gwicke gwicke] (Gabriel Wicke - Menlo Park)
 
* [https://github.com/wikimedia/mediawiki-node-services MediaWiki Node Services] Run several MediaWiki nodejs services (RESTBase, Parsoid) in a single docker container. Useful for small / low-memory installs. By WMF's [https://github.com/d00rman d00rman] (Marko Obrovac - Croatia) and [https://github.com/gwicke gwicke] (Gabriel Wicke - Menlo Park)
* [https://github.com/wikimedia/operations-docker-images-production-images Wikimedia base docker images for production] by [https://github.com/lavagetto lavagetto] (Giuseppe Lavagetto - Italy)
+
 
 +
=== Lex Sulzer ===
 
* [https://smw-cindykate.com/main/Component_947846 Set up BlueSpice MediaWiki Enterprise Distribution] by [https://github.com/lexsulzer lexsulzer] (Lex Sulzer at Dataspects - Zurich, Switzerland)
 
* [https://smw-cindykate.com/main/Component_947846 Set up BlueSpice MediaWiki Enterprise Distribution] by [https://github.com/lexsulzer lexsulzer] (Lex Sulzer at Dataspects - Zurich, Switzerland)
 
* [https://github.com/dataspects Dataspects]' [https://smw-cindykate.com/main/Component0272684347 Easy System Cloning]
 
* [https://github.com/dataspects Dataspects]' [https://smw-cindykate.com/main/Component0272684347 Easy System Cloning]
* [https://github.com/dataspects/meza-building-blocks Meza Building Blocks] A series of roles to add to or complement Meza by Lex Sulzer
+
 
  
 
== Configuration Management and Deployment at WMF ==
 
== Configuration Management and Deployment at WMF ==
It should be noted that the WMF uses Puppet for configuration management, and [https://wikitech.wikimedia.org/wiki/Scap3 Scap3] (which is used in [https://wikitech.wikimedia.org/wiki/SWAT_deploys SWAT]) for [https://wikitech.wikimedia.org/wiki/Deployments deployments].  There is the [https://wikitech.wikimedia.org/wiki/Portal:Cloud_VPS Cloud VPS] which is powered by [[wp:OpenStack]] for projects related to the [https://meta.wikimedia.org/wiki/Wikimedia_movement Wikimedia movement]. The environment includes access to a variety of [https://wikitech.wikimedia.org/wiki/Portal:Data_Services data services]. Cloud VPS is meant to make it easier for developers and system administrators to try out improvements to Wikimedia infrastructure (including MediaWiki), power research and analytics, and host projects that are not viable in the [https://wikitech.wikimedia.org/wiki/Portal:Toolforge Toolforge] environment. Virtual machines running on Cloud VPS are subject to the [https://wikitech.wikimedia.org/wiki/Portal:Wikimedia_VPS/instance_lifecycle instance lifecycle].
+
It should be noted that the WMF uses Puppet for configuration management, and <strike>[https://wikitech.wikimedia.org/wiki/Scap3 Scap3] (which is used in [https://wikitech.wikimedia.org/wiki/SWAT_deploys SWAT])</strike> (obsolete) for [https://wikitech.wikimedia.org/wiki/Deployments deployments].  There is the [https://wikitech.wikimedia.org/wiki/Portal:Cloud_VPS Cloud VPS] which is powered by [[wp:OpenStack]] for projects related to the [https://meta.wikimedia.org/wiki/Wikimedia_movement Wikimedia movement]. The environment includes access to a variety of [https://wikitech.wikimedia.org/wiki/Portal:Data_Services data services]. Cloud VPS is meant to make it easier for developers and system administrators to try out improvements to Wikimedia infrastructure (including MediaWiki), power research and analytics, and host projects that are not viable in the [https://wikitech.wikimedia.org/wiki/Portal:Toolforge Toolforge] environment. Virtual machines running on Cloud VPS are subject to the [https://wikitech.wikimedia.org/wiki/Portal:Wikimedia_VPS/instance_lifecycle instance lifecycle].
  
 
=== Puppet ===
 
=== Puppet ===

Revision as of 20:11, 19 August 2020

As a contributor to Meza, and developer of QualityBox, we've been closely following the efforts in the MediaWiki community around easier/automated deployments of MediaWiki. Actually, it's a goal of the MWStakeholders Group. And, it's a crucial aspect of the whole 2017 Wikimedia Technology Department Goals since at least 2018. Here is a list of some of the efforts and projects within and outside the WMF for automating deployments of MediaWiki:

WMF[edit | edit source]

Docker[edit | edit source]

Node Services[edit | edit source]

  • MediaWiki Node Services Run several MediaWiki nodejs services (RESTBase, Parsoid) in a single docker container. Useful for small / low-memory installs. By WMF's d00rman (Marko Obrovac - Croatia) and gwicke (Gabriel Wicke - Menlo Park)

Lex Sulzer[edit | edit source]


Configuration Management and Deployment at WMF[edit | edit source]

It should be noted that the WMF uses Puppet for configuration management, and Scap3 (which is used in SWAT) (obsolete) for deployments. There is the Cloud VPS which is powered by wp:OpenStack for projects related to the Wikimedia movement. The environment includes access to a variety of data services. Cloud VPS is meant to make it easier for developers and system administrators to try out improvements to Wikimedia infrastructure (including MediaWiki), power research and analytics, and host projects that are not viable in the Toolforge environment. Virtual machines running on Cloud VPS are subject to the instance lifecycle.

Puppet[edit | edit source]


Config Settings[edit | edit source]

With any automation tooling and deployment, you will inevitably need to refer to the long list of MediaWiki Configuration settings.