Wikimedia Release Engineering Team/Goal progress archive

From mediawiki.org

Sept - Nov '14 Goals Progress[edit]

Phabricator[edit]

  • Status:    in-progress - Developer support for Migration from Bugzilla completed - Mukunda
    • Be an example early adopter of features
  • Status:    Not done - Developer support for Migration from RT completed - Mukunda

metrics

Status:    Not done - Number of team migrated to Phabricator vs number of teams using Trello/Mingle right now

Deployment tooling[edit]

  • Status:    in-progress - scap(py) & trebuchet integration - Mukunda, Reedy
  • Status:    in-progress - increasing bus factor (specifically: Mukunda can respond to deployment tooling related issues) - Mukunda, Reedy

Jenkins[edit]

  • Status:    Not done - Jenkins performance improvements - Chris, Zeljko, Antoine
  • Status:    on-going - Maintenance and new test infrastructure requests (ongoing) - Chris, Zeljko, Antoine

Beta cluster[edit]

metrics

  • Status:    in-progress - Real data and graphs from monitoring services

Browser tests[edit]

  • Status:    In progress - Workshops/trainings in lieu of one-to-one pair programming - Zeljko, Chris, Dan
    • Meetup announcement for Exploratory Testing pending tentatively for Oct 22
    • Another training announcement also pending
  • Status:    In progress - Improved "best practices" and "getting started" documentation - Zeljko, Chris
    • Chris started overhaul of QA pages on mediawiki.org
  • Status:    on-going - Continued pairing with WMF Engineering teams - Zeljko, Chris, Dan
  • Status:    in processe - Begin pairing with the Flow team - Chris, Dan
    • starting with refactoring in the Echo tests
  • Status:    in-progress - Environment abstraction layer in mediawiki-selenium to allow for less fragile and more advanced step definitions (strech goal) - Dan, Zeljko, Chris

metrics

Status:    Not done - tracking state of browser tests before Thursday branch cut
Status:    Not done - track days since last green build, per Jenkins job

Vagrant[edit]

  • Status:    in-progress - Wrap up pairing with MobileFrontend - Dan
  • Status:    in-progress - Investigate creating shareable vagrant- or docker-based test environments - Dan
    • see work from Bryan?
  • Status:    Not done - Optimize memory hungry services running in the vagrant VM (reduce base memory usage) - Dan

metrics

Status:    Not done - qualitative survey of WMF teams on their use of MW-Vagrant
Status:    Not done - percentage of WMF production deployed extensions available in Vagrant

Hiring[edit]

  • Status:    in-progress - Complete hiring for QA Tester

Sept Goal Progress[edit]

Željko[edit]

  • Bug 56251 - Cucumber linter should run for all repositories that contain Cucumber code
  • Bug 63307 - Review if existing Ruby code follows GitHub's Ruby Styleguide
  • Bug 63467 - mediawiki/ruby/api repo should run unit tests after every patch set
  • Bug 69245 - rubocop should run after patch set submission to every repo that has Ruby code
  • Bug 69405 - Use dotenv ruby gem for configuration management
  • Bug 70287 - Browser tests should not use Watir API

Status:    In progress

Status:    Done

Week #36

Reedy[edit]

Rummana[edit]

Mukunda[edit]

  • Status:    in-progress - Phab data import, with Chase and Andre

Greg[edit]

Dan[edit]

  • Status:    in-progress - MobileFrontend broswer tests in Vagrant
  • Status:    in-progress - Ruby style guide
  • Status:    in-progress - Refactor MediaWiki-Vagrant according to Ruby style guide

Chris[edit]

  • 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

Antoine[edit]

  • Status:    In progress - RFC for Jenkins tests isolation
    • wrote and published to ops and engineering lists OK
    • agreement by End of June -> slipped due to discussions
    • POC by End of July
  • Status:    Not done - RFC for cross repositories testing and integration job in gate
  • Status:    In progress - implementing cross repository cloner (aka have repositories match branches/zuul ref)


April - Aug '14 Goals Progress[edit]

Deployment tooling[edit]

  • Status:    in-progress - Process through all (useful) pain points from the Dev/Deploy review session - (Greg)
    • Status:    in-progress - Product reviews of shell bugs as needed
  • Status:    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[edit]

New project since this quarter

  • Status:    Done - Release engineer hired (Mukunda)
  • Status:    Done - SUL/OAuth integration - (Mukunda)
  • Status:    Done - Security component support - (Mukunda)
  • Status:    Done - Puppetization with ops (Chase) - (Mukunda)
  • Status:    in-progress - data import, with Chase and Andre - (Mukunda)

Beta cluster[edit]

  • Status:    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)
  • Status:    in-progress - assist language team to deploy cxserver - added mid-quarter - (Antoine) (added mid-quarter)

MediaWiki Release[edit]

  • Status:    Done - Successfully support the release of MediaWiki 1.23 - (Antoine, Greg)
  • Status:    in-progress - Kickoff/complete second RFP - (Greg)
  • Status:    Not done - Investigate and create useful release/deployment metrics visualizations - (Greg) - (stretch goal)

Browser tests[edit]

  • 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:    in-progress - 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[edit]

  • Status:    on-going - Pair with teams and community members to improve QA practices
    • Language team
    • Wikidata team
    • Commuity members
  • Status:    in-progress - GSOC mentoring

Vagrant[edit]

New project since this quarter

  • Status:    Done Automation Engineer hired (Dan)
  • Status:    in-progress - Improve Vagrant setup process (especially re browser tests) and clean up Ruby according to style guide
    • Status:    Done - VE browser tests in Vagrant
  • Status:    in-progress - Ruby style guide

Hiring[edit]

  • Status:    Done - Complete hiring and train new Release Engineer (Greg, all)
  • Status:    Done - Complete hiring and train new Automation Engineer (Ruby) (Chris, all)
  • Status:    in-progress - Complete hiring of a new QA Tester (Chris, Greg) - added mid-quarter

Quarterly Review Action items[edit]

  • Status:    Done - create a plan for browser testing of MediaWiki 1.23 - Chris M
  • 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/Aug Goal Progress[edit]

Greg[edit]

  • Status:    in-progress - Process through pain points
    • Status:    in-progress - WMF product should be consulted on some shellbugs
  • Status:    Done - Kickoff/complete second RFP
  • Status:    in-progress - Hire QA Tester (jobvite announce
  • Status:    hold - Refine Deployment_tooling/Notes/Deployment_system_requirements with Bryan
  • Status:    hold - Investigate and create useful release/deployment metrics visualizations

Antoine[edit]

  • Status:    Not done - Support HHVM deployment tooling and puppet configuration testing
  • Status:    In progress - RFC for Jenkins tests isolation
    • wrote and published to ops and engineering lists OK
    • agreement by End of June -> slipped due to discussions
    • POC by End of July
  • Status:    Not done - RFC for cross repositories testing and integration job in gate
  • Status:    In progress - implementing cross repository cloner (aka have repositories match branches/zuul ref)
  • Status:    Done - assist language team to have cxserver deployed to beta cluster
    • They handle the rest with ops (puppet) and deployers (mediawiki-config)

Mukunda[edit]

  • Status:    in-progress - read all the things
  • Yes Done - WMF SUL/OAuth support T40
  • Yes Done - security component support in Phab Upstream T4893, our phab T95
    • custom plugin for this, installed on fab.wmflabs, code is in gerrit
    • being reviewed upstream, but won't be included in mainline Phab
  • Yes Done - Custom field to show mediawiki user page links on phabricator profiles
  • Yes Done - puppet wmflib beginnings
  • Yes Done - legalpad.mediawiki.org
  • Yes Done - Build debian package for mailparse php extension
  • Status:    Done - Honor security policies for file uploads/attachments - (Mukunda)
  • Status:    in-progress - data import, with Chase and Andre

Bryan[edit]

  • Status:    In progress Scap refactor/python port
    • Yes 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:    Ongoing Support train deploys

Reedy=[edit]

Andre[edit]

  • (With Guillaume) (Continued from March) Set up and facilitate the community RfC about Project management tools/Review, and bring it to a decision if possible. Status:    Done - RfC started on 2014-04-14
  • (With Guillaume) Have another IRC office hour about Project management tools Status:    Done on 2014-04-17 and 2014-04-22
  • Gather more feedback on rebooted Annoying little bugs after GSoC start Status:    In progress - Andre sent an email to five GCI mentors on 2014-04-24 and received three answers
  • Prepare introducing "Bug of the week" by talking to development teams Status:    Not done -- postponed to May
  • Have a bugday in the second half of April Status:    Done: on 2014-04-29 about General MediaWiki, see Bug management/Triage/20140429

Chris[edit]

  • 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[edit]

Željko[edit]

Status:    In progress

  • Vikas S Yaligar (Google Summer of Code): VisualEditor (1-2 hour(s)/day).
  • Clean up Gerrit backlog.
  • Bug 63469 - Ruby linter should run after patch set submission to every repo that has Ruby code

Status:    Done

Week #31

Week #29

  • Released new versions of mediawiki_selenium and mediawiki_api Ruby gems.

Week #27

  • Bug 58040 - Move jobs from Cloudbees Jenkins to WMF Jenkins.

Dan[edit]

  • Status:    in-progress - MobileFrontend broswer tests in Vagrant
  • Status:    Done - Improve Vagrant setup process (especially re browser tests)
  • Status:    in-progress - Ruby style guide
  • Status:    in-progress - Refactor MediaWiki-Vagrant according to Ruby style guide

June Goal Progress[edit]

Greg[edit]

  • Status:    in-progress - Process through pain points
    • Status:    in-progress - WMF product should be consulted on some shellbugs
  • Status:    Done - Successfully support the release of MediaWiki 1.23
  • Status:    in-progress - Kickoff/complete second RFP
  • Status:    hold - Refine Deployment_tooling/Notes/Deployment_system_requirements with Bryan
  • Status:    Not done - Investigate and create useful release/deployment metrics visualizations

Antoine[edit]

  • Status:    Not done - Support HHVM deployment tooling and puppet configuration testing
  • Status:    Done - Integrate WMF Jenkins with new WMF SauceLabs account
  • Status:    In progress - RFC for Jenkins tests isolation
    • wrote and published to ops and engineering lists
    • agreement by End of June
    • POC by End of July
  • Status:    Not done - RFC for cross repositories testing and integration job in gate
  • Status:    In progress - implementing cross repository cloner (aka have repositories match branches/zuul ref)
  • Status:    In progress - assist language team to have cxserver deployed to beta cluster

Mukunda[edit]

  • Status:    in-progress - read all the things
  • Status:    in-progress - WMF SUL/OAuth support T40
  • Status:    in-progress - security component support in Phab Upstream T4893, our phab T95
    • local 6 line hack
    • pinging evan regularly on real long term fix
  • Status:    in-progress - puppet wmflib beginnings

Bryan[edit]

  • Status:    In progress Scap refactor/python port
    • In progress In progress bug 53972 Repository .git is synchronised fine, but is broken for submodules because of hardcoded gitdir link
    • Yes Done bug 66844 Fix sync-common for hosts in wikimedia.org TLD
  • Status:    Not done - Integrate HHVM support into our deployment systems
    • Yes Done Met with Emir from Facebook to discuss HHVM and deployment in general
  • Status:    Not done Next generation deployment tooling
  • Status:    Ongoing Support train deploys
    • Yes Done Helped with deployment training hangout

Reedy[edit]

Andre[edit]

  • (With Guillaume) (Continued from March) Set up and facilitate the community RfC about Project management tools/Review, and bring it to a decision if possible. Status:    Done - RfC started on 2014-04-14
  • (With Guillaume) Have another IRC office hour about Project management tools Status:    Done on 2014-04-17 and 2014-04-22
  • Gather more feedback on rebooted Annoying little bugs after GSoC start Status:    In progress - Andre sent an email to five GCI mentors on 2014-04-24 and received three answers
  • Prepare introducing "Bug of the week" by talking to development teams Status:    Not done -- postponed to May
  • Have a bugday in the second half of April Status:    Done: on 2014-04-29 about General MediaWiki, see Bug management/Triage/20140429

Chris[edit]

  • Status:    in-progress - migrate to WMF Jenkins
  • Status:    Done - create a plan for browser testing of MediaWiki 1.23
  • 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:    Done - Use API to create test data at runtime more widely (not just for MobileFrontend but also VisualEditor, Flow, local dev env etc.)
    • Done for Mobile
    • Done for VisualEditor
    • Done for browser smoke tests
  • Status:    in-progress - hire new QA Tester

Rummana[edit]

Željko[edit]

Status:    Done

Week #26

  • Catch up on e-mail.

Week #25

Week #24

Dan[edit]

  • Read all the things
  • Status:    Done - VE broswer tests in Vagrant
  • Status:    in-progress - MobileFrontend broswer tests in Vagrant

May Goal Progress[edit]

Greg[edit]

  • Status:    in-progress - Process through pain points
    • Status:    Done - config changes not being deployed after merge (RT ticket filed], successfully in Ops' court)
    • Status:    in-progress - WMF product should be consulted on some shellbugs
      • email sent to WMF Product on 5/15
  • Status:    Done - onboard new Release Engineer
    • ongoing
  • Status:    in-progress - Successfully support the release of MediaWiki 1.23
  • Status:    in-progress - Kickoff/complete second RFP
  • Status:    hold - Refine Deployment_tooling/Notes/Deployment_system_requirements with Bryan
  • Status:    Not done - Investigate and create useful release/deployment metrics visualizations

Antoine[edit]

  • Status:    Done - Figure out how to keep HHVM unit tests from delaying +2 for standard production commits
  • Status:    Not done - Support HHVM deployment tooling and puppet configuration testing
  • Status:    Not done - Integrate WMF Jenkins with new WMF SauceLabs account
  • Status:    In progress - RFC for Jenkins tests isolation
  • Status:    Not done - RFC for cross repositories testing and integration job in gate

Mukunda[edit]

  • Status:    in-progress - read all the things
  • Status:    in-progress - WMF SUL/OAuth support T40
  • Status:    Not done - security component support in Phab Upstream T4893, our phab T95

Bryan[edit]

  • Status:    In progress Scap refactor/python port
  • Status:    Not done - Integrate HHVM support into our deployment systems
  • Status:    Not done Next generation deployment tooling
  • Status:    Ongoing Support train deploys

Reedy[edit]

Andre[edit]

  • (With Guillaume) (Continued from March) Set up and facilitate the community RfC about Project management tools/Review, and bring it to a decision if possible. Status:    Done - RfC started on 2014-04-14
  • (With Guillaume) Have another IRC office hour about Project management tools Status:    Done on 2014-04-17 and 2014-04-22
  • Gather more feedback on rebooted Annoying little bugs after GSoC start Status:    In progress - Andre sent an email to five GCI mentors on 2014-04-24 and received three answers
  • Prepare introducing "Bug of the week" by talking to development teams Status:    Not done -- postponed to May
  • Have a bugday in the second half of April Status:    Done: on 2014-04-29 about General MediaWiki, see Bug management/Triage/20140429

Chris[edit]

  • Status:    Done - create a plan for browser testing of MediaWiki 1.23
    • See https://gerrit.wikimedia.org/r/#/c/133507/
      • Chris Steipp had suggestions in email for further tests that map to legacy tests in /qa/browsertests repo
      • After discussion with Rob Lanphier, will port appropriate tests from /qa/browsertests to /mediawiki/core with Dan Duvall over time
  • 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:    Done - Use API to create test data at runtime more widely (not just for MobileFrontend but also VisualEditor, Flow, local dev env etc.)
    • Done for Mobile
    • Done for VisualEditor
    • Done for browser smoke tests
  • Status:    in-progress - hire new QA Tester

Rummana[edit]

Željko[edit]

Dan[edit]

  • Read all the things

Feb - Apr '14 Goal Progress[edit]

See the WMF Engineering 13-14 goals page for the yearly view.

  • Process through all (useful) pain points from the Dev/Deploy review session (Greg)
  • Scap incremental improvements
    • 1) Refactor existing scap scripts to enhance maintainability and reveal hidden complexity of current solution (Bryan)
    • 2) create matrix of tool requirements per software stack (MW, Parsoid, ElasticSearch) (Greg)
    • 3) Use above matrix to add/fix functionality in scap (or related) tooling for ONE software stack, prioritized by cross stack use (Bryan)
  • Use the API to create test data for given tests at run time. (Jeff, Chris, Željko)
  • Create the ability to test headless (Željko, Jeff, Chris)
  • Run versions of tests compatible with target test environments (Chris, all)
  • Make database(s) in Beta Cluster emulate production (set up db slaves) (Antoine)

April Goal Progress[edit]

Greg[edit]

  • Status:    Done - Update/create new MW Release Management RFP
  • Status:    in-progress - Process through pain points
    • Status:    Done - security patches
    • Status:    Done - LD SWAT team
    • Status:    in-progress - config changes not being deployed after merge
  • Status:    in-progress - Refine deployment system requirements with Bryan

Antoine[edit]

Reedy[edit]

Bryan[edit]

  • Status:    In progress Scap refactor/python port
    • In progress In progress Setup test environment in beta (carried forward from Feb & March; much harder than I'd hoped)
      • Yes Done Scap functionality available from deployment-bastion including fanout rsync and l10n rebuilds
      • Yes Done Jenkins job running scap after each beta-code-update job finished
      • Yes Done Gerrit change 127399 Remove NFS dependency from beta for MediaWiki deploys
      • Yes Done Gerrit change 126870 Convert hand-built Jenkins jobs to CI/JJB
      • Yes Done Gerrit change 129822 Use trigger publisher instead of trigger-builds builder (fixed deadlock problem on Jenkins slave)
    • Continue to enhance and simplify scripts
    • Use trebuchet to deploy scap scripts
  • Status:    In progress Next generation deployment tooling
    • In progress In progress Organize requirements into wiki page (carried forward from Feb & March; pairing with Greg)
  • Status:    In progress Support train deploys

Andre[edit]

  • (With Guillaume) (Continued from March) Set up and facilitate the community RfC about Project management tools/Review, and bring it to a decision if possible. Status:    Done - RfC started on 2014-04-14
  • (With Guillaume) Have another IRC office hour about Project management tools Status:    Done on 2014-04-17 and 2014-04-22
  • Gather more feedback on rebooted Annoying little bugs after GSoC start Status:    In progress - Andre sent an email to five GCI mentors on 2014-04-24 and received three answers
  • Prepare introducing "Bug of the week" by talking to development teams Status:    Not done -- postponed to May
  • Have a bugday in the second half of April Status:    Done: on 2014-04-29 about General MediaWiki, see Bug management/Triage/20140429

Chris[edit]

Continuing from Feb:

  • Test and announce general availability of feature to check for ResourceLoader upon page load: ResourceLoader error checking more globally. Status:    Done

Also:

Rummana[edit]

Željko[edit]

Status:    Not done

  • Bug 62144 - Move Selenium tests from browsertests repository to the repository they test.

Status:    In progress

  • Bug 58040 - Move jobs from Cloudbees Jenkins to WMF Jenkins.
  • Clean up Gerrit backlog (123873, 122400, 119917, 121586, 119933, 117088, 83966, 78234, 102294, 98160, 105179...).

Status:    Done
Week #16

  • Evaluate Automation Engineer tasks.

Week #15

  • Bug 63306 - Write missing release notes for mediawiki_selenium Ruby gem.

March Goal Progress[edit]

Greg[edit]

  • Status:    in-progress - Update/create new MW Release Management RFP
  • Status:    in-progress - Process through pain points
    • Status:    Done - security patches
    • Status:    Done - LD SWAT team
    • Status:    in-progress - config changes not being deployed after merge
  • LD SWAT team
    • Status:    Done - Kick off
    • Status:    Done - PushBot? - NO (without more dev than Greg can provide right now)
  • Status:    Done - quarterly post-mortem review

Antoine[edit]

  • Status:    In progress Fix up VisualEditor browser tests and make it voting in Gerrit
  • Status:    In progress Makes CirrusSearch browser tests voting
  • Yes Done Publish sphinx documentation (use jenkins jobs). Examples:
  • Status:    In progress Migrate beta cluster from pmtpa to eqiad!
    • Yes Done Varnishes instances creation + puppet passing
    • Yes Done Application servers created + puppet passing
    • Yes Done Apache config in git (operations/apache-config.git branch: betacluster)
    • Yes Done Bunch of files / git repos copied from pmtpa to eqiad
    • Yes Done Sean Pringle to create MariaDB
    • Yes Done Ariel Glenn to set up the swift emulator (copy pasted instance)
    • Yes Done last minute sync of files
    • Yes Done add Jenkins slaves to sync Parsoid and MW code
    • Yes Done write jobs to update Parsoid and MW code on eqiad

Reedy[edit]

Bryan[edit]

  • Status:    In progress Scap refactor/python port
    • Yes Done Extract common logic for making a command line interface into a class
    • Yes Done Fixed sync-wikiversions to use common dsh arguments
    • Yes Done Converted sync-wikiversions to python
    • Yes Done Invented scap-purge-l10n-cache script to cleanup l10n cache on unused branches
    • Yes Done Documented process for retiring a branch from tin
    • In progress In progress Setup test environment in beta (carried forward from Feb; harder than I'd hoped)
      • Yes Done Salt master in eqiad beta project
      • Yes Done Puppet master in eqiad beta project
      • Yes Done logstash host in eqiad beta project
      • N Not done scap host in eqiad beta project (did this and then nuked it)
    • Continue to enhance and simplify scripts
  • Status:    In progress Next generation deployment tooling
    • In progress In progress Organize requirements into wiki page (carried forward from Feb; pairing with Greg)
  • Status:    In progress Support train deploys
    • Yes Done Deploy 1.23wmf16 to group1
    • Yes Done Deploy 1.23wmf17 to group0
    • Yes Done Deploy 1.23wmf17 to group1
    • Yes Done Cleanup old l10n cache files on cluster
    • Yes Done Deploy 1.23wmf18 to group0
    • Yes Done Deploy 1.23wmf18 to group1
    • Yes Done Deploy 1.23wmf20 to group0

Andre[edit]


Chris[edit]

Continuing from Feb:

  • Test and announce general availability of feature to check for ResourceLoader upon page load: ResourceLoader error checking more globally. Status:    Done

Also:

  • Update documentation on mw.o to reflect the refactoring and consolidation of recent times. Much of what exists now is long out of date. Status:    In progress

Rummana[edit]

Željko[edit]

Status:    Not done

  • Add browser specific tags to Cucumber features and scenarios (#62477).

Status:    In progress

  • Move jobs from Cloudbees Jenkins to WMF Jenkins (#58040).

Status:    Done
Week #10

  • Added BROWSER_TIMEOUT setting to the mediawiki_selenium gem (#61667).
  • Refactored Jenkins jobs at Cloudbees.
  • Move "I am at a random page" step to the mediawiki_selenium Ruby gem (#62479).

Week #11

  • Update Chrome at Sauce Labs to the most stable version (#62548).
  • Released version 0.1.0 of mediawiki_api Ruby gem.
  • mediawiki_selenium Ruby gem should be able to start local and remote browsers with optional browser setup (#62512).

Week #12

  • Add per-browser tags to MobileFrontend builds (#62846).

Week #13

  • Improve MediaWiki API Ruby gem documentation (#63297).

February Goal Progress[edit]

Greg[edit]

Antoine[edit]

  • Status:    In progress Complete integration of browsertests for VisualEditor
    • One build worked and triggered two successful scenario!!
    • Parsoid is stopped by the job now, was not previously :/
  • Yes Done Integration of browsertests for CirrusSearch. Cause me to slightly rethink the browsertests infra to closely match production.
  • Yes Done Train Zeljkof on Jenkins Job Builder script
    • Zeljkof started on it. Will pair with him to finish up.
    • Zeljkof found his way through JJB arcanes \O/
  • Yes Done Help migrating Cloudbees Jenkins template to JJB YAML templates
    • Zeljkof started on it. Will pair with him to finish up.
    • Zeljkof found his way through JJB arcanes \O/

Reedy[edit]

Bryan[edit]

  • Status:    In progress Scap refactor/python port
    • Yes Done Local test environment in a MW-Vagrant instance
    • Yes Done scap converted to python
    • Yes Done scap-1 converted to python
    • Yes Done add detailed duration timing for scap & scap-1
    • Yes Done remove external script dependencies from scap-1
    • Yes Done add progress bar for dsh commands
    • Yes Done Scap logs in json format for easy parsing
    • Yes Done Scap logs sent to florine via udp2log
    • Yes Done Scap logs sent to logstash via udp2log
    • Yes Done Converted mwversionsinuse to python
    • Yes Done Deleted obsolete scripts: scap-1, scap-2, find-nearest-rsync, scap-old
    • In progress In progress Setup test environment in beta (will pair with Antione)
    • Continue to enhance and simplify scripts
  • Status:    In progress Next generation deployment tooling
    • Yes Done gather requirements via etherpad and Ops-l mailing list
    • In progress In progress Organize requirements into wiki page (will pair with Greg)
  • Status:    In progress Support train deploys
    • Yes Done Deploy 1.23wmf16 to group0

Andre[edit]


Chris[edit]

  • Investigate how release branches are described in make-deploy-notes Status:    In progress

Željko[edit]

Status:    Not done

  • Document how to debug Selenium tests (#48216).
  • Investigate is it possible to run scenarios in parallel (#55867) (moved from January 2014).
  • Create Page#important_part_of_url (#55873).
  • Cucumber step should fail if pending RSpec expectation no longer fails (#56243).
  • Update QA/testing documentation (focused on new contributors) (#57841) (moved from December 2013).
  • Move jobs from Cloudbees Jenkins to WMF Jenkins (#58040).
  • Run UploadWizard API integration test at CloudBees (#58923) (continued from January 2014).
  • Investigate why sometimes a Jenkins job fails when all tests pass (#60037) (continued from January 2014).
  • Implement Selenium coding conventions (#60335).
  • Document our test architecture (and why we picked Ruby).

Status:    Done

  • Move Selenium tests from root folder of qa/browsertests repostory to tests/browser folder (#60614).
  • Rename mediawiki-selenium Ruby gem to mediawiki_selenium (#60820).
  • Create a Ruby gem to work with MediaWiki API (#60762).
  • Move shared code from 9 extension repositories to mediawiki-selenium Ruby gem (#56088) (moved from December 2013).
  • Move tests from browsertests repository to UploadWizard repository (#56419).
  • Move tests from browsertests repository to WikiLove repository (#61135).
  • Move tests from browsertests repository to CirrusSearch repository (#61311).
  • Remove configuration of Sauce Labs browsers from mediawiki_selenium Ruby gem (#61067).
  • Create the first Selenium tests for ZeroRatedMobileAccess repository (#48218).
  • Cloudbees Jenkins jobs should be created using Jenkins Job Builder (#61778).

Jeff[edit]

Rummana[edit]

Dec-Feb Goal Progress[edit]

See the WMF Engineering 13-14 goals page for the yearly view.

  • Status:    in-progress - Browser tests managed in feature repos with feature teams (Chris, Zeljko, Jeff, Rummana)
  • Status:    Done - Successfully managed the first release of MediaWiki in conjunction with our outside contractor (Greg, Antoine)
  • Status:    Not done - More comprehensive quarter assessments of postmortems (Greg)
  • Status:    in-progress - Create process documentation for ideal test/deployment steps (Greg, Reedy, Chris, and others)
  • Automated API integration tests in important areas (Chris, Zeljko, Jeff, Rummana, Antoine, also with Mark Holmquist)
    • Status:    in-progress - UploadWizard
    • Status:    in-progress - Parsoid / VisualEditor
    • Status:    Not done - ResourceLoader

Monthly Goal Progress[edit]

February[edit]

Greg[edit]
  • do post Dev and Deploy process review follow up Status:    in-progress
  • Create plan to evaluate progress on postmortem/retrospective actions Status:    in-progress
Antoine[edit]
  • Status:    In progress Complete integration of browsertests for VisualEditor
  • Status:    In progress Train Zeljkof on Jenkins Job Builder script
  • Status:    In progress Help migrating Cloudbees Jenkins template to JJB YAML templates
Reedy[edit]
Andre[edit]


Chris[edit]
  • Refactor tests to use API article creation Status:    Not done
  • Continue creating a suite of tests for local environments Status:    Not done
    • Requires the API gem in mediawiki-selenium 1.20
  • Finish headless Xvfb integration Status:    In progress
  • In Jenkins, investigate pulling master branch for beta labs builds but pull release branch for test2wiki builds
  • Follow up on ResourceLoader error reporting Status:    Not done
Željko[edit]

Status:    Not done

  • Document how to debug Selenium tests (#48216).
  • Investigate is it possible to run scenarios in parallel (#55867) (moved from January 2014).
  • Create Page#important_part_of_url (#55873).
  • Cucumber step should fail if pending RSpec expectation no longer fails (#56243).
  • Update QA/testing documentation (focused on new contributors) (#57841) (moved from December 2013).
  • Move jobs from Cloudbees Jenkins to WMF Jenkins (#58040).
  • Run UploadWizard API integration test at CloudBees (#58923) (continued from January 2014).
  • Investigate why sometimes a Jenkins job fails when all tests pass (#60037) (continued from January 2014).
  • Implement Selenium coding conventions (#60335).
  • Document our test architecture (and why we picked Ruby).

Status:    Done

  • Move Selenium tests from root folder of qa/browsertests repostory to tests/browser folder (#60614).
  • Rename mediawiki-selenium Ruby gem to mediawiki_selenium (#60820).
  • Create a Ruby gem to work with MediaWiki API (#60762).
  • Move shared code from 9 extension repositories to mediawiki-selenium Ruby gem (#56088) (moved from December 2013).
  • Move tests from browsertests repository to UploadWizard repository (#56419).
  • Move tests from browsertests repository to WikiLove repository (#61135).
  • Move tests from browsertests repository to CirrusSearch repository (#61311).
  • Remove configuration of Sauce Labs browsers from mediawiki_selenium Ruby gem (#61067).
  • Create the first Selenium tests for ZeroRatedMobileAccess repository (#48218).
  • Cloudbees Jenkins jobs should be created using Jenkins Job Builder (#61778).
Jeff[edit]
Rummana[edit]

January[edit]

Greg[edit]
  • Prep for Dev and Deploy process meeting (Jan 22nd)
    • Create baseline flowchart of dev/deploy documentation for use in the January in-person meeting - Status:    Done
    • refinements (ie: suggestions from Chris) - Status:    Done
    • write up final agenda/notes, share before meeting (clean up notes from Robla) - Status:    Done
    • make physical version of flowchart - Status:    Done
    • do post-review followup - Status:    Not done
  • Create plan to evaluate progress on postmortem/retrospective actions Status:    Not done
    • archive/put on wikitech missing post-mortems - Status:    Not done
    • create BZ whiteboard entry to track retrospective bugs - Status:    Not done
Antoine[edit]
  • For January: got to prepare myself for the MediaWiki summit (two weeks left + one week summit)
  • Mostly focused on CI (Zuul upgrade, new jenkins jobs..) last week.
  • Yes Done Parsoid self update on beta cluster via a Jenkins job.
  • Yes Done Parsoid job migrated to new repos mediawiki/services/parsoid and mediawiki/services/parsoid/deploy
  • Status:    In progress VE browser tests from Gerrit. Waiting for them to be passing with (a fresh wiki + phantomjs)
  • Yes Done mediawiki/extensions.git out of sync since Jan 2nd bug 59758
Reedy[edit]
Andre[edit]
  • (With Guillaume) Meet Project management tools stakeholders, determine requirements, and document this research. Status:    Done by Guillaume here
  • (With Daniel Zahn) Prepare Bugzilla upgrade to 4.4 (and move to new datacenter) - outstanding steps from bugzilla:49597:
    • Upgrade Bugzilla on zirconium from 4.2 to 4.4. Status:    Done
    • Apply 4.2 custom changes to Bugzilla on zirconium from Git repository. Status:    Done
    • Apply Andre's 11 patches (linked here) in Gerrit to port our custom changes from 4.2 to 4.4. Status:    Done on 2014-01-07
    • Test Bugzilla on zirconium. Status:    Done on 2014-01-15
    • Make collectstats.pl work - bugzilla:29203. Status:    Done by dzahn here on 2014-01-29
    • (With Daniel and Sean) Switch database and DNS from old kaulen server to new zirconium server. Status:    Not done - tentative date: 2014-02-12
  • Show common queries on Bugzilla frontpage - bugzilla:22170. Status:    In progress - 2014-01-10: Patch in Gerrit; depends on 4.4 upgrade first
  • Finalize Bugzilla etiquette draft once the lively discussion on its Talk page has ended. Status:    In progress - 2014-01-09: Announcement that discussion will be closed soon
  • Fix inline displaying of image files in Bugzilla - bugzilla:54181. Status:    Done - andre successfully tested csteipp's patch on Labs on 2014-01-05; deployed on 2014-01-10
  • (With Quim) Finish running Google Code-In contest. Status:    Done


Chris[edit]
Željko[edit]

Status:    In progress

  • Investigate why sometimes a Jenkins job fails when all tests pass (#60037) (continues in February 2014).
  • Run UploadWizard API integration test at CloudBees (#58923) (continues in February 2014).

Status:    Not done

  • Move shared code from 9 extension repositories to mediawiki-selenium Ruby gem (#56088) (moved from December 2013, moved to February 2014).
  • Update QA/testing documentation (focused on new contributors) (#57841) (moved from December 2013, moved to February 2014).
  • As soon as ContentTranslation is deployed to a public site, Create a Jenkins job that runs it's Selenium tests (#60760).
  • Investigate why tests sometimes fail with strange error messages (#60338).
  • Investigate is it possible to run scenarios in parallel (#55867) (moved to February 2014).

Status:    Done

  • Resize PhantomJS to 1280x1024 when the browser opens (#60044).
  • Update Selenium Jenkins template (#58345).
  • Update Ruby, RubyGems and browsers that Selenium uses at Sauce Labs (#56083).
  • Mentor Google Code-in students: write new Selenium tests, update QA/testing documentation (1-2 hours/day) (#57306).
  • Cloudbees Jenkins jobs use new e-mail notifications (#55824).
  • Update Cucumber coding conventions (#49876).
  • Create Jenkins job for MultimediaViewer (#60267).
  • Fix headers in mediawiki-selenium repo (#60469).
  • Add support for running headless browser tests to mediawiki-selenium Rubygem (#60584).
  • Move config folder to mediawiki-selenium gem (#56085).
Jeff[edit]
Rummana[edit]

December[edit]

Greg[edit]
  • Create baseline flowchart of dev/deploy documentation for use in the January in-person meeting - Status:    Done
  • Create plan to evaluate progress on postmortem/retrospective actions Status:    in-progress
Antoine[edit]
  • jenkins job for VisualEditor / Parsoid (reporting to James F / Gabriel Wicke)
    • making sure a change in VE or in Parsoid does not break the other since they are tightly coupled
    • Yes Done parsoid init script doesn't play well when run over ssh
      • Worked on, wrote an upstart job to wrap around parsoid server + logrotate configuration
  • browser tests in Gerrit.
    • Yes Done First with ULS cause it is simpler, pairing with Zeljkof and i18n team
    • Status:    In progress Second MobileFrontend https://gerrit.wikimedia.org/r/#/c/97497/
    • Status:    Not done later VisualEditor
  • Yes Done polishing up the mw release tarball job (was bug 58278)

Slowdowns:

  • deployed bunch of favicons for Google Code-in
  • helped on gwtoolset, an extension to mass import materials from museum libraries
  • bunch of CI changes to make jobs running in parralel
Reedy[edit]
Andre[edit]
  • Google Code-In: Run and organize contest with Quim. Status:    In progress
  • Agree and finalize "etiquette" draft for behavior in Bugzilla, as discussed on teampractices@. Status:    In progress - Discussion on Talk page still ongoing on 20131225 after asking for feedback on wikitech-l@.
  • Evaluate Project management / issue tracking requirements and potential tools. Status:    In progress - kicked off on teampractices@ and wiki on 2013-12-13
  • Test Bugzilla 4.4 with our custom patches on Labs (or zirconium in eqiad if production is still on kaulen in Tampa). Status:    In progress, will need help from ops. Steps discussed between dzahn and aklapper on 2013-12-06; dzahn has set up a copy of Bugzilla 4.2 on zirconium in eqiad (see RT #4783). Next steps are upgrading that machine to Bugzilla 4.4, applying our custom patches, testing, and finally switching over.


Chris[edit]
  • Get everyone interested in API testing and monitoring pulling together: Multimedia + Jenkins + QA
  • Move login method to shared code (Željko working on this right now), demonstrate improved pass rates pairticularly for IE
    • Status:    In progress In process, interim commit is https://gerrit.wikimedia.org/r/#/c/100579/
      • Upgraded login method and corrected other issues affecting IE pass rate, builds are significantly more green, will pass on benefit to other repos when consolidated
  • Concrete steps for Mobile QA after Michelle's departure
    • Status:    Done Chris to support automation effort, Chris/Jeff/Rummana to contribute as requested, e.g. post-deployment checking
    • Status:    Done Chris is monitoring the backlog of mingle cards for tests immediately. Next step is to collaborate with Mobile devs for regression tests like https://gerrit.wikimedia.org/r/#/c/103761/
  • Browser test coverage for Flow
    • Status:    Done Coverage ongoing
    • Status:    Done Continuing working with S on refinements
Željko[edit]
  • move shared code from 9 extension repositories to mediawiki-selenium Ruby gem (#56088) Status:    Not done (moved to January 2014)
  • update QA/testing documentation (focused on new contributors) (#57841) Status:    In progress (moved to January 2014)
  • Run Selenium tests on Cloudbees using PhantomJS (#58035) Yes Done
  • mentor language team (Amir, Niklas): refactor existing tests, write new ones (8 hours every week) Status:    In progress (continues in January 2014)
    • Antoine: could pair up, since ULS going to trigger via Gerrit. Same needs to be done for MobileFrontend.
  • mentor Google Code-in students: write new Selenium tests, update QA/testing documentation (1-2 hours every day) (#57306) Status:    In progress (continues in January 2014)
  • Pair programming Friday for fun and profit: help volunteers get started with exploratory testing, QA/testing documentation, writing Selenium tests (1 hour every week) (continues in January 2014)Status:    In progress
  • pair with Tobi on Wikidata Selenium tests (1 hour every week) Status:    In progress (continues in January 2014)


Jeff[edit]
Rummana[edit]
  • Regular exploration testing on betalabs and test2
  • Verifying each week's VE deployment
  • Verifying resolved bugs
  • Verifying new copy-paste implementation
  • Track the already reported bugs on bugzilla and changing their status accordingly

Previous format Check-ins[edit]