Wikimedia Release Engineering Team/Checkin archive/20171023

= 2017-10-23 =

Vacations/Important dates

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


 * Oct week of 23rd thcipriani
 * October 25 (Wednesday) Željko - conference (Testival)
 * November 1 (Wednesday) Željko - holiday (All Saints' Day)
 * Nov 10 (Fri) - Veteran's Day
 * November 17 (Friday) Željko - conference (Coderetreat)
 * Nov 20th - Dec 1st: Greg vacation
 * Nov 23+24 - Thanksgiving
 * December 25 (Monday): Željko - holiday (Christmas Day)
 * December 26 (Tuesday): Željko - holiday (St Stephen's Day)
 * Dec 25-Jan 1 - End of year/new year holidays
 * January 1 (Monday): Željko - holiday (New Year's Day)

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

Oct 9 and Oct 16

 * Train: Chad
 * wmf.3
 * wmf.4
 * SoS: Mukunda
 * Out
 * October 4-10th: vacation all I ever wanted
 * Oct 9 - Indigenous People's Day

Oct 23 and Oct 30

 * Train Chad
 * wmf.5
 * wmf.6
 * SOS: Mukunda
 * Out
 * Week of Oct 23: Tyler
 * Oct 25: Zeljko
 * Nov 1: Zeljko

This week

 * Blocking
 * Blocked
 * Updates
 * Deployment logspam is mostly quiet, except one non-deployment related log from the tidy migration (Parsing/MW Platform know)
 * Zeljko paired with Elena T. to get some Echo notification browser tests written (nodejs/mocha framework).
 * Zeljko scheduled a Tech Talk on Oct 31st to discuss/teach the nodejs browser testing framework.
 * Scap tech-debt project well underway, merged many improvements last week
 * new/docker based CI: the phan job is now migrated
 * Gerrit was upgraded last week (minor version)
 * Working on git-lfs (large file store, for big binary blobs) support in Gerrit for ORES and Reading teams
 * Redesigned (simplified) the Phabricator login screen , should be deployed soon.
 * Working on git-lfs (large file store, for big binary blobs) support in Gerrit for ORES and Reading teams
 * Redesigned (simplified) the Phabricator login screen , should be deployed soon.

Last week

 * Blocking
 * Blocked
 * Updates
 * Updates
 * Updates

Logspam \ Last week's train updates

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


 * pretty quiet :)
 * some log spam from tidy replacement, task filed/being looked into, low impact for now

Other Team Business

 * Annual Plan proposals: https://docs.google.com/document/d/1mOC_vBDmQCGoPYZug4cd2DwAbZ1K0qR7370F2VL0ttM/edit#

Q2 goal/project check-in

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

Program 1: Outcome 5: Milestone 1: Migrate majority of developers to JavaScript based browser test framework (webdriver.io)

 * Due: End of this quarter
 * Quarter Goal Task: Port Selenium tests from Ruby to Node.js -


 * T171852 WebdriverIO tech talk
 * on October 31 (spooky


 * T173505 Add createAccount method to nodemw
 * 80%(TM) there.
 * T177412 Mocha tests for Echo notifications
 * Done. Working locally and in CI.
 * T116027 Make selenium users use botflags at beta-cluster
 * not sure what needs to be done yet
 * T176315 Automated browser tests cannot create pages on the Beta Cluster as anonymous user in RelatedArticles tests
 * Figure out why beta cluster (maybe only English Wikipedia) no longer allows anonimous page creation from about September 15-16
 * Antoine thinks it never worked

Ruby

 * T167432 Run Wikibase daily browser tests on Jenkins
 * Almost done. The only thing left if video recording of failing tests.

Program 3: Outcome 1: Objective 1: Define a set of code stewardship levels (from high to low expectations)

 * Due: End of this quarter
 * Quatertly Goal task: -


 * Planning to have first pass out for review this week.

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

 * Due: End of next quarter
 * Quaterly Goal task -


 * Continued to update the Developers/Maintainers article. Still gaps with reality.

Program 3: Outcome 2: Objective 1: Define a “Technical Debt Project Manager” role that regularly communicates with all Foundation engineering teams regarding their technical debt

 * Due: End of this quarter


 * No specific focus on this.

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

 * Due: End of next quarter


 * Education/baselining
 * Tech Debt series blog post one will be available shortly for first pass of reviews.
 * Code Health Office hours will be scheduled announced this week
 * Per discussion with Code Health Core group, Erika specifically, need to define a way to get aware of current tech-debt activities.

==== Program 6: Outcome 2: Objective 2: Set up a continuous integration and deployment pipeline to publish new versions of an application to production via testing and staging environments that reliably reproduce production ====
 * Due: End of this quarter
 * Complete build phase of release pipeline


 * Build test variant
 * Run test entrypoint w/developer feedback - services dependency
 * Build production variant w/developer feedback - services dependency
 * Tag production container
 * Push to production docker registry - ops dependency - staging namespace

Tracking: https://phabricator.wikimedia.org/T157469
 * current status: https://phabricator.wikimedia.org/project/view/2453/


 * DONE! but not really: https://integration.wikimedia.org/ci/job/service-pipeline/35/console
 * Working on better error reporting and config validation: https://phabricator.wikimedia.org/T175186
 * Current working job will be triggered on experimental pipeline for Mathoid
 * Image build cleanup in the works

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

 * workboard


 * Merged a lot of small scap improvements this week:
 * https://phabricator.wikimedia.org/D824: Remove passing keyboard exception to handler
 * https://phabricator.wikimedia.org/D825: Stop passing around argv to initial startup code
 * https://phabricator.wikimedia.org/D826: Cache submodules and use --reference to save space
 * https://phabricator.wikimedia.org/D827: When syncing a symbolic link, also note what the symlink points to
 * https://phabricator.wikimedia.org/D828: Unify "give me some number of CPUs I can use for subtasks" logic

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

 * Goal: A generalized POC for a docker-based CI.
 * https://phabricator.wikimedia.org/project/view/3008/ (shipyard workboard)


 * addshore migrated the phan job to docker
 * still working on package manager cache (npm etc)
 * uid=nobody issues

Program 1: Outcome 6: Milestone 1: Maintain Gerrit
* Looking at 2.14 migration soon
 * Upgraded from 2.13.5 -> 2.13.9
 * Pretty minor
 * git-lfs support in Gerrit for pdf rendering team blobs (and ORES team)

Program 1: Outcome 6: Milestone 2: Maintain Phabricator

 * https://phabricator.wikimedia.org/D831 - Hide the LDAP login form by default, click to show

Program 1: Outcome 5: Objective 1: MW Nightlies server

 * Had meeting with Darian & Brian W.
 * Going to pair with Sam R. when he's back from vacation to get jobs written

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