Wikimedia Release Engineering Team/Checkin archive/20180402

= 2018-04-02 =

Vacations/Important dates

 * https://office.wikimedia.org/wiki/HR_Corner/Holiday_List
 * How to do it


 * April 2: Željko (Holidays in Croatia - Easter Monday)
 * Apr 3-13: Greg vacation
 * April 16 (Mon): WMF Holiday
 * May 1: Željko (Holidays in Croatia - Labor Day / May Day)
 * May 14-17: Team offsite in Barcelona
 * May 18-21: Wikimedia Hackathon in Barcelona
 * May 21 (Mon): Tech-Mgt F2F
 * May 31: Željko (Holidays in Croatia - Corpus Christi)

Train

 * Maniphest query for deployment blocker tasks: https://phabricator.wikimedia.org/maniphest/?project=PHID-PROJ-fmcvjrkfvvzz3gxavs3a&statuses=open%28%29&group=none&order=newest#R


 * Feb 19 - wmf.22 - Mukunda
 * Feb 26 - wmf.23 - Tyler
 * Mar 05 - wmf.24 - Tyler
 * Mar 12 - wmf.25 - Chad
 * Mar 19 - wmf.26 - Chad
 * Mar 26 - wmf.27 - Mukunda
 * Apr 02 - wmf.28 - Mukunda <
 * Apr 09 - wmf.29 - Tyler
 * Apr 16 - wmf.30 - Tyler
 * Apr 23 - 1.32.0-wmf.1 - Chad
 * Apr 30 - wmf.2 - Chad

SoS

 * Feb 19 - Chad
 * Feb 26 - Mukunda
 * Mar 05 - Mukunda
 * Mar 12 - Tyler
 * Mar 19 - Tyler
 * Mar 26 - Chad
 * Apr 02 - Chad <
 * Apr 09 - Mukunda
 * Apr 16 - Mukunda
 * Apr 23 - Tyler
 * Apr 30 - Tyler

Updates
Staging: https://docs.google.com/document/d/1CT_pKjwiDmFhZZ9LW9mz0z434-wgr3NFdapUPWUvMNA/edit
 * Update from Greg
 * Please comment/let suggestions this week

Scrum of Scrums

 * Greg to copy to etherpad after meeting: https://etherpad.wikimedia.org/p/Scrum-of-Scrums

Release Engineering

 * Blocking
 * Blocked
 * Updates
 * Train status
 * Pencils down on MW 1.31.0
 * Train status
 * Pencils down on MW 1.31.0

Release Engineering

 * Blocking
 * Nothing
 * Blocked
 * Nothing
 * Updates

Train status and happenings

 * https://www.mediawiki.org/wiki/Wikimedia_Release_Engineering_Team/Roles#Train_Conductor


 * Rolled back to wmf.26 everywhere but testwikis due to https://phabricator.wikimedia.org/T190960
 * A possible fix is merged in master, cherry-picked to 1.31.0-wmf.27 here: https://gerrit.wikimedia.org/r/#/c/423488/
 * Will deploy this today and get 1.31.0-wmf.27 deployed to all groups

Past week status updates

 * All of it in table form: https://www.mediawiki.org/wiki/Wikimedia_Release_Engineering_Team/Goals/201718Q4

Program 1: Outcome 5: Milestone 1: Develop and migrate to a JavaScript-based browser testing stack

 * Due: End of this quarter
 * What: Specific improvements to the now canonical framework, see: task T182421, notably:
 * Upgrade webdriverIO to version 4.9
 * Investigate replacing nodemw with mwbot
 * Video recording for Selenium tests in Node.js
 * Task:


 * T180144: Upgrade WebdriverIO to 4.12.0 - done
 * T181284: Replace nodemw with mwbot - done
 * T179188: Video recording for Selenium tests in Node.js - in progress - almost there, video for each test is recorded, but ffmpeg complains about something :/

Program 1: Outcome 5: Objective 1: Maintain existing shared Continuous Integration infrastructure

 * Goals
 * Draft requirements for a Kubernetes based solution for CI -
 * Migrate MediaWiki PHPUnit tests to Shipyard (docker-based CI) (~40% of Nodepool usage) -
 * Will be worked on after the long tail
 * Unify production and CI docker image build process -
 * ✅ 01/15

Program 3: Outcome 1: Objective 2: Identify and find stewards for high-priority/high use code segment orphans

 * Due: End of quarter

Made final edits to Stewardship model and update wiki pages.

Program 3: Outcome 2: Objective 2: Define and implement a process to regularly address technical debt across the Foundation

 * Due: End of quarter

Added: *Engagement Model *Awareness campaign *Tech Debt/Code Reasouces

Program 3: Outcome 2: Objective 3: Promote and surface important technical debt topics at large gatherings of Wikimedia developers (e.g., DevSummit and Hackathon(s))

 * Due: End of next quarter

No activitiy

Program 6: Outcome 2: Objective 2: Set up a continuous integration and deployment pipeline

 * Due: End of this quarter
 * Keyword: SSD
 * phab project: https://phabricator.wikimedia.org/project/view/2453/
 * Goal:
 * Verify basic functionality of 'production' deployment and image (initially targeting mathoid):
 * Functional PoC within integration in the deployment-pipeline
 * Deploy to isolated k8s


 * Major improvements to Blubber this quarter for more secure permissions/ownership scheme and policies
 * Verified a working PoC of `helm test` against minikube outside of CI but:
 * Still majorly blocked on lack of functional minikube/k8s/helm within CI
 * We are not far off once unblocked

Program 1: Outcome 5: Objective 1: Maintain existing shared Continuous Integration infrastructure

 * Migrate away from Nodepool -
 * Migrate MediaWiki PHPUnit tests to Shipyard (docker-based CI) (~40% of Nodepool usage) -
 * Add Composer support to Blubber -
 * Add Python/Tox support to Blubber -
 * Add Ruby/Gem/Bundler/Rake support to Blubber -

Program 3: Outcome 1: Objective 2: Identify and find stewards for high-priority/high use code segment orphans

 * Broad role out of Code Stewardship model.
 * Update Maintainers/Developers page with currently known Code Stewards.
 * Use Code Stewardship review process to address gaps.
 * Deploy dashboard of Code Stewardship Coverage

Updated Developer/Maintainer page with some known code stewards and status for code under review.

Program 3: Outcome2: Objective 2: Define and implement a process to regularly address technical debt across the Foundation

 * Roll out of technical debt reduction approaches.
 * Identify early adopter engineering teams to test approaches.

Program 6: Outcome 2: Objective 2: Prove viability of testing staged service containers alongside MediaWiki extension containers

 * Add Composer support to Blubber -
 * Small, standalone, MediaWiki containers built using Blubber
 * Limited scope with: Debian Stretch, php7, composer dependencies, Mariadb, Apache (or last two with standalone containers)
 * Build MW base containers upon branch cut at master branch point from core
 * Build ext specific containers using MW image as base

Program 1: Outcome 1: Objective 1: Scap (Tech Debt Sprint FY201718-Q2)

 * workboard

Program 1: Outcome 6: Milestone 2: Maintain Phabricator

 * Streamline logspam workflows by adding some integration with phabricator
 * Store git-lfs (and other phab uploads) in swift:

Antoine

 * What I plan to do this week
 * What I'm blocked on
 * Other?
 * Other?
 * Other?

Chad

 * What I plan to do this week
 * MW security release prep (with Brian W)
 * hopefully really really soon (TM)
 * Helm/Blubber
 * What I'm blocked on
 * Other?
 * Gerrit 2.15.x prep? We should migrate sooner rather than later (2.14.x won't be getting much love, 2.16/3.0 will be huge. So 2.15.x is gonna be our "LTS")
 * Gerrit 2.15.x prep? We should migrate sooner rather than later (2.14.x won't be getting much love, 2.16/3.0 will be huge. So 2.15.x is gonna be our "LTS")

Dan

 * What I plan to do this week
 * Work with Tyler to unfuck `minikube start` as unprivileged user https://phabricator.wikimedia.org/T191211
 * Or: Investigate whether to set up our own k8s for CI and abandon the insanity of minikube
 * What I'm blocked on
 * Nada
 * Other?

Greg

 * What I plan to do this week
 * Meeting-full day today and prep for leaving for almost 2 weeks
 * What I'm blocked on
 * Other?
 * Other?
 * Other?

Jean-Rene

 * What I plan to do this week
 * Code stewardship reviews
 * Code Stewardship Dashboard
 * What I'm blocked on
 * Other?
 * Other?

Mukunda

 * What I plan to do this week
 * Train for 1.31.0-wmf.27 and 1.31.0-wmf.28
 * More git-lfs work in scap and phabricator
 * What I'm blocked on
 * Other?
 * Other?

Tyler

 * What I plan to do this week
 * email/catchup
 * applied role::ci::slave::labs::pipelinebuilder to integration-slave-k8s-1013 and it work, so...good...
 * minikube/helm CI work
 * may revisit canary shifting baseline if there's time
 * What I'm blocked on
 * Other?
 * https://tylercipriani.com/photos/statue-of-liberty/
 * https://tylercipriani.com/photos/statue-of-liberty/

Zeljko

 * What I plan to do this week
 * T179188: Video recording for Selenium tests in Node.js
 * T190994 Q4 Selenium framework improvements
 * What I'm blocked on
 * T179188: Video recording for Selenium tests in Node.js - in progress - almost there, video for each test is recorded, but ffmpeg complains about something :/
 * T190269 Warning: Task "stylelint:src" failed due to postcss-less@1.1.4 - 1.1.5 does not fix the problem, I recommend that we stay pinned to 1.1.3
 * Other?

Team Kanban Board Review and Triage

 * closed and touched in the 7 days
 * No update for 4 weeks
 * No update for 3 weeks
 * No update for 2 weeks
 * No update for 1 week
 * All Open
 * Review To Triage column of #releng
 * Assigned
 * Unassigned

Once / month-ish review of backlog(s)

 * releng Review To Triage column of #releng
 * releng-kanban Review unassigned in kanban
 * releng-kanban Review 'backlog' colum of -kanban
 * releng-next - Review for things we need to put on our kanban backlog
 * releng-backlog - oh my, the huge backlog of things...

Kanban stats

 * Burnup chart