You are browsing a read-only backup copy of Wikitech. The live site can be found at wikitech.wikimedia.org

Deployments/Train: Difference between revisions

From Wikitech-static
Jump to navigation Jump to search
imported>Novem Linguae
(ce)
imported>Krinkle
No edit summary
Line 3: Line 3:
{{Navigation MediaWiki deployment}}
{{Navigation MediaWiki deployment}}


Each week the [[mediawikiwiki:Wikimedia_Release_Engineering_Team|Release Engineering Team]] deploys between 150–950 patches to the Wikimedia Foundation's 978 Wikimedia production wikis
The '''Deployment Train''' is a weekly process led by the [[mediawikiwiki:Wikimedia_Release_Engineering_Team|Release Engineering Team]], to deploy the latest alpha version of [[MediaWiki at WMF]] to production.


A production deployment at Wikimedia is composed of:
Typical numers as of September 2021:
* 198 repositories
** 188 extensions
** 8 skins
** <code>mediawiki/vendor</code>
** <code>mediawiki/core</code>


This is a process called the '''Deployment Train'''
* 198 code repositories (mediawiki/core, mediawiki/vendor, 188 MW extensions, and 8 MW skins).
* 978 wikis.
* betwen 150 and 1000 patches since the last train.


== Current week ==
== Current week ==
Line 19: Line 16:
* Train blocker task: https://train-blockers.toolforge.org/
* Train blocker task: https://train-blockers.toolforge.org/


== Typical Deployment Week ==
== Schedule ==
:''See also [[mw:MediaWiki {{#invoke:CurrentVersion|release}}/Roadmap|MediaWiki {{#invoke:CurrentVersion|release}}/Roadmap]] on mediawiki.org''
:''See also [[mw:MediaWiki {{#invoke:CurrentVersion|release}}/Roadmap|MediaWiki {{#invoke:CurrentVersion|release}}/Roadmap]] on mediawiki.org''
[[File:Deployment train diagram.png|546x546px|Deployment train diagram.|none|thumb]]
{| class="wikitable"
{| class="wikitable"
! Sunday
! Sunday
Line 39: Line 37:
|}
|}


{{clear}}
== Groups ==
[[File:Deployment train diagram.png|frameless|center|800px|Deployment train diagram.]]
{{clear}}


=== Tuesday ===
=== Tuesday ===
Line 47: Line 43:
Each Tuesday a Release Engineering team member cuts a new branch of all 198 repositories in a Wikimedia Production deployment. The branch is always prefixed with <code>wmf/</code> and then a version number. For example: [https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/core/+/refs/heads/wmf/1.37.0-wmf.1 wmf/1.37.0-wmf.1].
Each Tuesday a Release Engineering team member cuts a new branch of all 198 repositories in a Wikimedia Production deployment. The branch is always prefixed with <code>wmf/</code> and then a version number. For example: [https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/core/+/refs/heads/wmf/1.37.0-wmf.1 wmf/1.37.0-wmf.1].


The train conductor deploys that to Group0 wikis (see {{config file|dblists/group0.dblist}}). This group includes:
The train conductor deploys that to '''Group0''' wikis (see {{config file|dblists/group0.dblist}}). This group includes:


*[https://www.mediawiki.org/ www.mediawiki.org] (<code>mediawikiwiki</code>)
*[https://www.mediawiki.org/ www.mediawiki.org] (<code>mediawikiwiki</code>)
Line 59: Line 55:
On Wednesday Release Engineering leads a log triage session to find and file any new errors.
On Wednesday Release Engineering leads a log triage session to find and file any new errors.


Following the log triage, the train conductor for the week makes a go/no-go decision to deploy to '''Group1''' wikis.
Following the log triage, the train conductor for the week makes a go/no-go decision to deploy to Group1 wikis.


'''Group1''' is non-Wikipedias, see {{config file|dblists/group1.dblist}}.
'''Group1''' is non-Wikipedias, see {{config file|dblists/group1.dblist}}.
Line 86: Line 82:
If no blockers are found, the train conductor pushes code to all other Wikipedias, see {{config file|dblists/group2.dblist}}.
If no blockers are found, the train conductor pushes code to all other Wikipedias, see {{config file|dblists/group2.dblist}}.


This includes [https://en.wikipedia.org en.wikipedia.org] (English Wikipedia).
'''Group2''' includes [https://en.wikipedia.org en.wikipedia.org] (English Wikipedia).

Revision as of 16:04, 12 April 2022

Deployments

The Deployment Train is a weekly process led by the Release Engineering Team, to deploy the latest alpha version of MediaWiki at WMF to production.

Typical numers as of September 2021:

  • 198 code repositories (mediawiki/core, mediawiki/vendor, 188 MW extensions, and 8 MW skins).
  • 978 wikis.
  • betwen 150 and 1000 patches since the last train.

Current week

Schedule

See also MediaWiki 1.38/Roadmap on mediawiki.org
Deployment train diagram.
Sunday Monday Tuesday Wednesday Thursday Friday Saturday
Deploy to group 0 Deploy to group 1 Deploy to group 2

Groups

Tuesday

Each Tuesday a Release Engineering team member cuts a new branch of all 198 repositories in a Wikimedia Production deployment. The branch is always prefixed with wmf/ and then a version number. For example: wmf/1.37.0-wmf.1.

The train conductor deploys that to Group0 wikis (see dblists/group0.dblist). This group includes:

Wednesday

On Wednesday Release Engineering leads a log triage session to find and file any new errors.

Following the log triage, the train conductor for the week makes a go/no-go decision to deploy to Group1 wikis.

Group1 is non-Wikipedias, see dblists/group1.dblist.

Group1 includes:

Thursday

If no blockers are found, the train conductor pushes code to all other Wikipedias, see dblists/group2.dblist.

Group2 includes en.wikipedia.org (English Wikipedia).