Wikimedia Release Engineering Team: Difference between revisions

From mediawiki.org
Content deleted Content added
reorder channels, because I'm slightly anal sometimes
m Reverted edits by 2600:1700:38B1:50A0:3841:F245:A024:64 (talk) to last version by Mtarch11
Tag: Rollback
 
(279 intermediate revisions by 88 users not shown)
Line 1: Line 1:
{{Wikimedia Release Engineering Team/Nav}}
<onlyinclude>{{Wikimedia engineering project information
<onlyinclude>{{Wikimedia engineering project information
| name = Release & Quality Assurance
| name = Release Engineering
| description = Release Engineering and QA. Working to improve the quality of code and reduce the time it takes users to get it.
| description = Enable confident code deployment with feedback loops to inform optimal delivery to production.
| start = 2013-08-21
| start = 2014-07-28
| group = [[Wikimedia Technology|Technology]] → [[Developer Experience]]
| end =
| team = [[User:BBearnes_(WMF)|Brennen Bearnes]], [[User:ADancy (WMF)|Ahmon Dancy]], [[User:Dzduvall|Dan Duvall]], [[User:JHuneidi_(WMF)|Jeena Huneidi]], [[User:Hashar|Antoine Musso]], [[User:JNuche (WMF)|Jaime Nuche]], [[User:AKlapper (WMF)|Andre Klapper]], [[User:SandeepSingh-WMF|Sandeep Singh]]
| group =
| Phabricator = Release-Engineering-Team
| EPM =
| updates =
| lead = [[User:Greg (WMF)|Greg Grossmeier]]
| progress =
| team = [[User:Hashar|Antoine Musso]], [[User:Reedy|Sam Reed]], [[User:MModell_(WMF)|Mukunda Modell]], [[User:Zeljko.filipin(WMF)|Željko Filipin]], [[User:RYasmeen (WMF)|Rummana Yasmeen]], [[User:Dzduvall|Dan Duvall]], [[User:Cmcmahon|Chris McMahon]]
| previous =
| perennial = yes
| projectpage = Wikimedia Release Engineering Team
| next =
| backlog =
| projectpage = Wikimedia Release and QA Team
| EPM = [[User:TCipriani_(WMF)|Tyler Cipriani]]
| display = {{{display|}}}
| display = {{{display|}}}
}}</onlyinclude>
}}</onlyinclude>
<div class="toclimit-3">


<cite>The most important problem that we face as software professionals is this: '''If somebody thinks of a good idea, how do we deliver it to users as quickly as possible?'''
This is the team responsible for Release Engineering/Management and QA at the Wikimedia Foundation. We predominately use the [https://lists.wikimedia.org/mailman/listinfo/qa QA mailing list] along with conversations on the appropriate IRC channels (especially {{Channel|wikimedia-qa}}, {{Channel|wikimedia-operations}}, {{Channel|wikimedia-tech}}, and {{Channel|wikimedia-dev}}).


– Jez Humble and David Farley, [https://martinfowler.com/books/continuousDelivery.html Continuous Delivery]
= [[{{FULLPAGENAME}}/status|Status]] =
</cite>
{{Wikimedia project status line|{{FULLPAGENAME}}}}{{Add new Wikimedia engineering project status update}}


= Planning =
== Subpages ==
<div class="toccolours mw-collapsible mw-collapsed" style="overflow: hidden; /* make sure Expand button doesn't fall outside the element*/">
<div style="float:left; width:33%;">
{{Special:PrefixIndex/Wikimedia Release Engineering Team/|stripprefix=1|hideredirects=1}}
'''Quarterly Reviews'''
* [[/Quarterly review, August 2014|August 2014]]
* [[/Quarterly review, April 2014|April 2014]]
** [[/20140627midquarter|Mid-quarter checkin]]
* [[/Quarterly review, February 2014|February 2014]]
** [[/Meetings/20140211showcase|Mid-quarter checkin]]
</div>
</div>
<div style="float:left; width:33%;">
...cont
* [[/Quarterly review, November 2013|November 2013]]
* [[/Quarterly review, August 2013|August 2013]]
</div>
<div style="float:left; width:33%;">
'''Checkins'''
* [[/Checkin_archive|Monthly Checkin Archive]]
'''Other'''
* [[/Wishlist|Wishlist]]
* [[/Metrics|Metrics]]
* [[/Ongoing_maintenance|Ongoing Maintenance]]
</div>
{{clear}}


[[Category:Release Engineering Team{{#translation:}}| ]]
= April - July '14 Goals Progress =
* ''For past quarter's checkins, see the [[/Checkin archive|archives]].''
* ''See the [[Wikimedia_Engineering/2013-14_Goals#Release_and_QA|WMF Engineering 13-14 goals page]] for the yearly view.''
* [[/20140627midquarter|Mid-quarter checkin (June 27th)]]

=== [[Deployment tooling]] ===
* {{status|in-progress}} - [[Development_and_Deployment_Process/Review20140122/Pain_points#Being_Processed|Process through all (useful) pain points]] from the Dev/Deploy review session - '''(Greg)'''
** {{status|in-progress}} - Product reviews of shell bugs as needed
* {{status|C0C|blocked}} - Integrate HHVM support into our deployment systems - '''(Bryan, Greg, Mukunda, others from Platform)'''
** Waiting on HHVM packaging for Ubuntu.
* {{status|done}} - continue the scap(py) (stretch goal, finally prioritized since it adds a lot to our deployment workflow)
** All scap scripts have been migrated to python minus one
* {{status|not done}} - trebuchet integration conversation (stretch goal)

=== Phabricator ===
''New project since this quarter''
* {{status|done}} - Release engineer hired (Mukunda)
* {{status|Done}} - SUL/OAuth integration - '''(Mukunda)'''
** Two patches in gerrit:
*** https://gerrit.wikimedia.org/r/#/c/139438/
*** https://gerrit.wikimedia.org/r/#/c/139442/
* {{status|Done}} - Security component support - '''(Mukunda)'''
* {{status|Done}} - Puppetization with ops (Chase) - '''(Mukunda)'''
* {{status|Done}} - Build debian package for mailparse php extension - '''(Mukunda)'''
** [http://fab.wmflabs.org/T404 T404]
* {{status|in-progress}} - Honor security policies for file uploads/attachments - '''(Mukunda)'''
** [http://fab.wmflabs.org/T477 T477]
* {{status|in-progress}} - data import, with Chase and Andre - '''(Mukunda)'''

=== [[Beta cluster]] ===
* {{status|C0C|blocked}} - Support HHVM deployment tooling and puppet configuration testing - '''(Bryan, Antoine, Mukunda)'''
** Waiting on HHVM packaging, puppet refactor for Trusty. See above.
* {{status|in-progress}} - Swift cluster in beta (stretch goal)
** tracking bug: {{bugzilla|62835}}
** Andrew Bogott/Filippo created preliminary puppet classes that matches labs environment
*** merged on Tuesday 6/24 - https://gerrit.wikimedia.org/r/#/c/137803/
* {{status|done}} - assist language team to deploy cxserver - added mid-quarter - '''(Antoine)''' (added mid-quarter)

=== MediaWiki Release ===
* {{status|done}} - Successfully support the release of MediaWiki 1.23 - '''(Antoine, Greg)'''
** [http://lists.wikimedia.org/pipermail/mediawiki-announce/2014-June/000152.html mailing list announcement]
* {{status|in-progress}} - Kickoff/complete second RFP - '''(Greg)'''
* {{status|not done}} - Investigate and create useful release/deployment metrics visualizations - '''(Greg)''' - (stretch goal)

=== Browser tests ===
* {{status|not done}} - Use tags to run builds appropriate to released versions (e.g. don't run master build on test2wiki) - '''(Chris)'''
** dependent on the two below
** {{status|in-progress}} - Retire Cloudbees Jenkins instance - '''(Željko)'''
** {{status|done}} - Retire /qa/browsertests repo by porting tests to /mediawiki/core and appropriate extension repos '''(Chris)''' (added mid-quarter)
* {{status|done}} - Integrate WMF Jenkins with new WMF SauceLabs account - '''(Željko, Antoine, Chris)'''
* {{status|done}} - Use API to create test data at runtime more widely (not just for MobileFrontend but also VisualEditor, Flow, local dev env etc.) - '''(Chris, Željko)''' Calling this done for the quarter, but we'll always be using it into the future
** Used by MobileFrontend
** Used by VisualEditor
** Used by smoke tests (part of quarterly goals)
* {{status|on-hold}} - Add browsertests to new repos e.g. GettingStarted - '''(Chris, Željko)'''

=== Engineering Liasion Work ===
* {{status|FA0|on-going}} - Pair with teams and community members to improve QA practices
** Language team
** Wikidata team
** Commuity members
* {{status|in-progress}} - GSOC mentoring

=== Vagrant ===
''New project since this quarter''
* {{status|done}} Automation Engineer hired (Dan)
* {{status|done}} - Improve Vagrant setup process (especially re browser tests) and clean up Ruby according to style guide
* {{status|done}} - VE browser tests in Vagrant cleanup/improvement
* {{status|in-progress}} - MobileFrontend tests in Vagrant cleanup/improvement
* {{status|in-progress}} - Ruby style guide

=== Hiring ===
* {{status|done}} - Complete hiring and train new [http://hire.jobvite.com/CompanyJobs/Careers.aspx?c=qSa9VfwQ&cs=9UL9Vfwt&page=Job%20Description&j=oFtlYfwb Release Engineer] '''(Greg, all)'''
* {{status|done}} - Complete hiring and train new [http://hire.jobvite.com/CompanyJobs/Careers.aspx?c=qSa9VfwQ&cs=9UL9Vfwt&page=Job%20Description&j=oe09Yfw5 Automation Engineer (Ruby)] '''(Chris, all)'''
* {{status|in-progress}} - Complete hiring of a new [http://hire.jobvite.com/CompanyJobs/Careers.aspx?c=qSa9VfwQ&cs=9UL9Vfwt&page=Job%20Description&j=oKIUYfw4&s QA Tester] '''(Chris, Greg)''' - added mid-quarter

=== Quarterly Review Action items ===
* {{status|done}} - create a plan for browser testing of MediaWiki 1.23 - '''Chris M'''
** http://lists.wikimedia.org/pipermail/wikitech-l/2014-June/077256.html
* {{status|done}} - '''Greg''' get firm requirements from Antoine, circle back to Mark who'll have an idea of Op's timelime for production Shinken (monitoring system to maybe replace Icinga)
** no deadline knows on ops side. Might not be high priority
** ops in charge: Alexandros (Greece based)
** maybe use it in Beta Cluster as a POC
* {{status|done}} - Figure out how to keep HHVM unit tests from delaying +2 for standard production commits ('''Antoine, Chris M, Zeljko''')

== July Goal Progress ==
===Greg===
* {{status|in-progress}} - Process through [[Development_and_Deployment_Process/Review20140122/Pain_points|pain points]]
** {{status|in-progress}} - WMF product should be consulted on some shellbugs
* {{status|in-progress}} - Kickoff/complete second RFP
* {{status|in-progress}} - Hire QA Tester ([http://hire.jobvite.com/CompanyJobs/Careers.aspx?c=qSa9VfwQ&cs=9UL9Vfwt&page=Job%20Description&j=oKIUYfw4 jobvite announce]
* {{status|hold}} - Refine [[Deployment_tooling/Notes/Deployment_system_requirements]] with Bryan
* {{status|not done}} - Investigate and create useful release/deployment metrics visualizations

===Antoine===
* {{status|not done}} - Support HHVM deployment tooling and puppet configuration testing
* {{status}} - RFC for Jenkins tests isolation
** wrote and published to ops and engineering lists OK
** agreement by End of June -> slipped due to discussions
** <s>POC by End of July</s>
* {{status|not done}} - RFC for cross repositories testing and integration job in gate
* {{status}} - implementing cross repository cloner (aka have repositories match branches/zuul ref)
** Example run: https://integration.wikimedia.org/ci/job/mediawiki-core-extensions-integration/56/testReport/
* {{status|done}} - assist language team to have cxserver deployed to beta cluster
** They handle the rest with ops (puppet) and deployers (mediawiki-config)

===Mukunda===
* {{status|in-progress}} - read all the things
* {{Done}} - WMF SUL/OAuth support [http://fab.wmflabs.org/T40 T40]
* {{Done}} - security component support in Phab [https://secure.phabricator.com/T4893 Upstream T4893], [http://fab.wmflabs.org/T95 our phab T95]
** custom plugin for this, installed on fab.wmflabs, code is [https://gerrit.wikimedia.org/r/#/c/144620/ in gerrit]
** being reviewed upstream, but won't be included in mainline Phab
* {{Done}} - Custom field to show mediawiki user page links on phabricator profiles
* {{Done}} - puppet wmflib beginnings
* {{Done}} - [http://legalpad.mediawiki.org legalpad.mediawiki.org]
* {{Done}} - Build debian package for mailparse php extension
** [http://fab.wmflabs.org/T404 T404]
* {{status|in-progress}} - Honor security policies for file uploads/attachments - '''(Mukunda)'''
** [http://fab.wmflabs.org/T477 T477]
* {{status|in-progress}} - data import, with Chase and Andre

===Bryan===
* {{status}} Scap refactor/python port
** {{done}} {{bug|53972}} Repository .git is synchronised fine, but is broken for submodules because of hardcoded gitdir link
* {{status|not done}} - Integrate HHVM support into our deployment systems
* {{status|not done}} Next generation deployment tooling
* {{status|FA0|Ongoing}} Support train deploys

===Reedy===

===[[User:AKlapper (WMF)|Andre]]===
{{#lst:Bug_management/Task_list|042014}}
===Chris===
* {{status|done}} - migrate to WMF Jenkins
* {{status|in-progress}} - Use tags to run builds appropriate to released versions (e.g. don't run master build on test2wiki)
** Antoine fleshing out a start of this idea at Zurich
* {{status|in-progress}} - hire new QA Tester

===Rummana===
===[[User:Zeljko.filipin(WMF)|Željko]]===
{{#lst:User:Zeljko.filipin(WMF)|2014-06}}

===Dan===
* {{status|in-progress}} - MobileFrontend broswer tests in Vagrant
* {{status|done}} - Improve Vagrant setup process (especially re browser tests)
** https://gerrit.wikimedia.org/r/#/c/143218/
* {{status|in-progress}} - Ruby style guide
* {{status|in-progress}} - Refactor MediaWiki-Vagrant according to Ruby style guide
</div>
[[Category:QA]]
[[Category:QA Team]]

Latest revision as of 05:23, 5 March 2024

The most important problem that we face as software professionals is this: If somebody thinks of a good idea, how do we deliver it to users as quickly as possible?

– Jez Humble and David Farley, Continuous Delivery

Subpages[edit]