Wikimedia Release Engineering Team/Checkin archive/2024-01-24
2024-01-24
[edit]π Winterrogation
[edit]- https://www.mediawiki.org/wiki/Wikimedia_Release_Engineering_Team/Monthly_notable_accomplishments
- Jan 2024
- Gerrit train-dev fixed!
- bd808's account approver thing seems working, maybe?
- Dawned on Daniel & I that we could request extra Phab/Phorge hardware as backup
- Deployed persistant volume cleaner
- Docker images with pyenv with multiple versions of python
- Worked with upstream phorge to hide the audit application (the post-merge review application for source code)
- Webhook payloads for GitLab merge request changesβtracked down a bug in upstream
- phab1004 distro upgrade is done
- We know we can run in codfw if we have to (it sucks though, let's not)
- scap clean now works better
Team Discussions
[edit]Stuff from last time
[edit]Docs!
- https://phabricator.wikimedia.org/T352259
- remove out of date stuff
- update trival changes
- Make a doc for any section you'd like to add with some raw notes https://docs.google.com/document/d/1wVUxWGGMaw8LwMMcRAdar7Ujf8aiKnM3FXqCtwVyWXo/edit
- Dan: Blubber/Kokkuri
Train security patch fixes
GitLab User Interviews
[edit]Notes
Observations
[edit]Gerrit, Phabricator, and Code Search are used as a single tool for us People seamlessly move from one to the other without thinking much about it This makes sense: the paid version of GitLab does all these things for a reason Repo browsing is a whole other topic My observation: This is an invisible barrier for newcomers Very few people mentioned benefits for newcomers (although there are some), but there is some scaring away of newcomers Reports of newcomers refuse to try Gerrit New people spin up on GitLab quicker Benefits to newcomers are negated by having to learn both Gerrit and GitLab There are already pain points from having two systems There were three examples of pieces of a single code base living in separate repos across Gerrit and GitLab already Submodules in Gerrit that are repos on GitLab Libraries in GitLab that are used in MediaWiki via composer Pipeline publishing images lives in GitLab, but the chart museum lives in Gerrit People are worried about their complicated workflow Two people said the opposite things: βthatβs fine for (ops OR mediawiki) workflows since theyβre simpler, but not for (ops OR mediawiki) because of the complexityβ I think this means: my workflow is too complicated for this simplistic tool I think this quote sums it nicely: βGerrit is better in projects that you need a lot of discussion and collaboration to get something mergedβ
Missing Things
[edit]Stacking patchsets are used for more than large changes by a single author Theyβre useful for discussing implementation across several teams Stacking patchsets on other peopleβs changes as dependencies is common GerritLab (GitLab patch stacking tool we wrote) was a game changer for folks on GitLab, but it still has problems, notably for landing stacks of changes GitLab can get confused about the target branches in some unclear circumstances People still make errors on merge direction that GerritLabβGerrit prevents merges all together, people rely on this When you have gating tests, you still have to merge in serial Watching: https://gitlab.com/gitlab-org/cli/-/issues/7440 Missing inline diff comments in GitLab You see discussion on a previous patchset, but only on the home page of the merge request When comparing with previous revisions, the conversation is not in context on GitLab, unlike Gerrit ...Still trying to recreate People rely on the view of the Gerrit dashboard to see relevant changes Nobody mentioned using custom Gerrit dashboards much, but almost everyone mentioned the Gerrit dashboard as their primary means of finding changes βIncoming reviewsβ and βYour changesβ is the most useful People use search to help others Finding changes from someone mentioning theyβre not getting any review Looking for reviewers for a new repo theyβre contributing to New thought: the problem is, none of this is very discoverable in Gerrit Thereβs no good way to get an overview of relevant changes in GitLab Search features are not as expressive as gerritβhow do you search for reviewers? How do you find all open MRs of a single author? Tags/topics may be useful, but are unexplored Everyone mentioned multiple reviewers as a problem Several people mentioned unsatisfying workarounds People β@β one another to CC each other on changes but that doesnβt show up in your TODO list on GitLab Folks have experimented with using tags like π¦ GitLab Needs review search This is missing the level of granularity that the default search in Gerrit can give you Also, doesnβt send an email to the reviewer asking for review which is one of the primary methods people use to find changes needing their review There were a lot of anti-patterns in our current use of reviewers Itβs used for notification more than to request review Folks mentioned ambiguity about when things are ready for review Itβs not how people get review on their patchsetsβthey rely on pinging other people in different channels (phabricator, email, team meetings) One person mentioned, if theyβre added to a patch along with several others then they may not act until they have spare time Depends-on is used primarily for two things To prevent accidental merge As a method of communication Testing changes together in parallel was barely mentioned Very few mentions of the testing benefit, mostly in passing One person added βDepends-onβ to unmerged library code where there is no testing benefit because the other benefits are so useful I wonder if people are even aware of the testing benefit(?) Approvals relying on unstructured, ad-hoc standards vs. "approved" "request revisions"
Slightly missing things
[edit]Mixed feelings on βAttentionSetβ and IRC notifications People who can mentally filter ambient noise seem to like the IRC notification, others mentioned avoiding them Lots of folks are confused about AttentionSet/βYour Turnβ A few folks mentioned it was useful, but it was top-of-mind for no one
π» Open source/Upstream contributions
[edit]π Vacations/Important dates
[edit]- https://office.wikimedia.org/wiki/HR_Corner/Holiday_List#2024
- https://wikitech.wikimedia.org/wiki/Deployments/Yearly_calendar
- https://www.mediawiki.org/wiki/Wikimedia_Release_Engineering_Team/Time_off (page needs updating for Dayforce)
Jan 2024
[edit]- 15 Jan: US staff
- 15 Jan - 15Mar: Andre
- 31 Jan - 2 Feb: Brennen
Feb 2024
[edit]- 16 Feb: Brennen
- 14-16 Feb: Dan
Future
[edit]- 26 Apr: Brennen (tentative)
- 1st Mar, 4th Mar - 8th Mar - Antoine
- A few days around July 4: Brennen
- 25 Aug - 03 Sep: Brennen
π₯π Train
[edit]- https://tools.wmflabs.org/versions/
- https://train-blockers.toolforge.org/
- https://wikitech.wikimedia.org/wiki/Deployments/Yearly_calendar
- 6 Mar β wmf.26 β Jeena + Jaime
- 13 Mar β wmf.27 β Brennen + Jeena
- 20 Mar β wmf.1 β Ahmon + Brennen
- 27 Mar β wmf.2 β Chad Dan + Ahmon
- 3 Apr β wmf.3 β Antoine + Dan
- 10 Apr β wmf.4 β Chad + Antoine
- 17 Apr β wmf.5 β Jaime + Chad
- 24 Apr β wmf.6 β Jeena + Jaime
- 1 May β wmf.7 β Brennen + Jeena
- 8 May β wmf.8 β Antoine + Brennen (Ahmon out + Antoine Out 8th)
- 15 May β wmf.9 β Ahmon + Antoine (Dan out + Chad out)
- 22 May β wmf.10 β Chad + Ahmon (Dan out + Jeena out 26th)
- 29 May β wmf.11 β Dan + Chad (Memorial Day 29th)
- 5 Jun β wmf.12 β Jeena + Dan (Brennen out, Jaime out)
- 12 Jun β wmf.13 β Jaime + Jeena
- 19 Jun β wmf.15 β Cancelled for offsite
- 26 Jun β wmf.16 β Brennen + Jaime (Jeena out)
- 3 Jul β wmf.17 β Antoine + Brennen (3rd + 4th holidays)
- 10 Jul β wmf.18 β Dan + Antoine (Ahmon out)
- 17 Jul β wmf.19 β Ahmon+Dan (Brennen out Friday)
- 24 Jul β wmf.20 β Jaime+Ahmon
- 31 Jul β wmf.21 β Ahmon+Jaime (Jeena out, Antoine out) (Ahmon volunteered)
- 7 Aug β wmf. 22 β No train
- 14 Aug - wmf.23 β Ahmon+Jaime (Jeena out, Antoine out)
- 21 Aug - wmf.24 β Dan(brennen out, Jeena out, Antoine out)
- 28 Aug β wmf.25 β Jeena+Dan
- 04 Sep β wmf.26 β Antoine+Jeena
- 11 Sep β wmf.27 β Jaime+Antoine+Andre as lurker!
- 18 Sep β wmf.28 β Brennen+Jaime
- Logspam-watch needs some attention
- Every deploy is rebuilding l10n
- 25 Sep β 1.42.0-wmf.1 β Dan + Brennen
- 2 Oct β 1.42.0-wmf.2 β Jeena + Dan (Jaime Out)
- 9 Oct β 1.42.0-wmf.3 β Antoine + Jeena (Jaime Out)
- Vector skin issue, backport this morning!
- 16 Oct β 1.42.0-wmf.4 β Brennen + Antoine
- 23 Oct β 1.42.0-wmf.5 β Ahmon + Brennen
- 30 Oct β 1.42.0-wmf.3 β Dan + Ahmon
- 06 Nov β 1.42.0-wmf.4 β Jaime + Dan
- 13 Nov β 1.42.0-wmf.5 β Jeena + Jaime
- 20 Nov β 1.42.0-wmf.6 β No Train
- 27 Nov β 1.42.0-wmf.7 β Antoine + Jeena
- 3 Dec β 1.42.0-wmf.8 β No Train offsite
- 11 Dec β 1.42.0-wmf.9 β Brennen + Antoine (Jaime out)
- 18 Dec β 1.42.0-wmf.10 β Ahmon + Brennen (Jaime out)
- 25 Dec β 1.42.0-wmf.11 β No Train
- 1 Jan β 1.42.0-wmf.12 β Dan + Ahmon (Jaime out)
- 8 Jan β 1.42.0-wmf.13 β Jeena + Dan (Jaime out)
- 15 Jan β 1.42.0-wmf.14 β Jaime + Jeena
[Jaime, Jeena, Dan, Ahmon, Brennen, Antoine][:-1]
- 22 Jan β 1.42.0-wmf.15 β Antoine + Jaime
- 29 Jan β 1.42.0-wmf.16 β Ahmon + Antoine(Brenen out WedβFri)
- 05 Feb β 1.42.0-wmf.17 β Brennen + Ahmon
- 12 Feb β 1.42.0-wmf.18 β
- 19 Feb β 1.42.0-wmf.19 β
- 26 Feb β 1.42.0-wmf.20 β
Let's do some inbox triage: https://phabricator.wikimedia.org/maniphest/query/7vRDrcVnt8OI/#R