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>Krinkle
m (Krinkle moved page Deployments/One week to Deployments/Train)
 
imported>Krinkle
No edit summary
 
(8 intermediate revisions by 8 users not shown)
Line 1: Line 1:
The Wikimedia Foundation began using a one-week deploy cycle in June of 2013 and modified in June 2015 to a more simple one. This page describes that cycle. The cycle consists of 3 deploys a week, to three groups of wikis, in 3 phases, starting on Tuesday. This means a version of MediaWiki that starts to go out to the WMF cluster on Tuesday the 7th will be on all WMF-hosted wikis by Thursday the 9th in the same week.
{{Navigation MediaWiki deployment}}
{{TOC|align=right}}


== Generalized deploy calendar ==
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.
 
Typical numbers 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 ==
 
* Train status: https://versions.toolforge.org/
* Train blocker task: https://train-blockers.toolforge.org/
 
== 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 15: Line 28:
|
|
|
|
| group 0
| Deploy to group 0
| group 1
| Deploy to group 1
| group 2
| Deploy to group 2
|  
|  
|  
|  
|}
|}


=== Group 0 ===
== Groups ==
These are canary wikis, see {{config file|dblists/group0.dblist}}. This group includes:
 
=== 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 <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:


*[https://www.mediawiki.org/ www.mediawiki.org] (<code>mediawikiwiki</code>)
*[https://www.mediawiki.org/ www.mediawiki.org] (<code>mediawikiwiki</code>)
*[https://test.wikipedia.org/ test.wikipedia.org] (<code>testwiki</code>)
*[https://test.wikipedia.org/ test.wikipedia.org] (<code>testwiki</code>)
*[https://test.wikidata.org/ test.wikidata.org] (<code>testwikidatawiki</code>)
*[https://test.wikidata.org/ test.wikidata.org] (<code>testwikidatawiki</code>)
*[https://office.wikimedia.org/ office.wikimedia.org] (<code>officewiki</code>)
*[https://office.wikimedia.org/ office.wikimedia.org] (<code>officewiki</code>)
* all closed wikis
* all closed wikis


=== Group 1 ===
=== Wednesday ===
These are non-Wikipedias, see {{config file|dblists/group1.dblist}}.<br>These are most wikis, except canary wikis and Wikipedia. There are also individual Wikipedia sites that have chosen to be in Group 1 for early feedback ({{config file|dblists/group1-wikipedia.dblist}}). This group includes:
 
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 {{config file|dblists/group1.dblist}}.
 
Group1 includes:


*[https://www.wikidata.org www.wikidata.org] (<code>wikidatawiki</code>)
*[https://www.wikidata.org www.wikidata.org] (<code>wikidatawiki</code>)
Line 45: Line 69:
*[https://commons.wikimedia.org commons.wikimedia.org] (Wikimedia Commons)
*[https://commons.wikimedia.org commons.wikimedia.org] (Wikimedia Commons)
*[https://meta.wikimedia.org meta.wikimedia.org] (Meta-Wiki)
*[https://meta.wikimedia.org meta.wikimedia.org] (Meta-Wiki)
*[https://incubator.wikimedia.org incubator.wikimedia.org] (Incubator)
*[https://ca.wikipedia.org ca.wikipedia.org] (Catalan Wikipedia)
*[https://ca.wikipedia.org ca.wikipedia.org] (Catalan Wikipedia)
*[https://he.wikipedia.org he.wikipedia.org] (Hebrew Wikipedia)
*[https://he.wikipedia.org he.wikipedia.org] (Hebrew Wikipedia)
*[https://it.wikipedia.org it.wikipedia.org] (Italian Wikipedia)
*[https://test2.wikipedia.org/ test2.wikipedia.org] (<code>test2wiki</code>)
*[https://test2.wikipedia.org/ test2.wikipedia.org] (<code>test2wiki</code>)
*''and others..''
*''and others…''
 
=== Thursday ===


=== Group 2 ===
If no blockers are found, the train conductor pushes code to all other Wikipedias, see {{config file|dblists/group2.dblist}}.
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).
{{ptag|train deployments}}

Latest revision as of 16:46, 9 June 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 numbers 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).