Toolhub/Progress reports/2021-07-30

Report on activities in the Toolhub project for the week ending 2021-07-30.

Automatic Docker image publishing

edit
Tracked in Phabricator:
Task T278503 resolved

Jeena Huneidi and Dan Duvall met with Bryan to help him better understand how to configure Toolhub to work with the PipelineLib "publish" function. This conversation led Dan to create a new section of documentation on configuring Zuul to invoke a publish pipeline and gave Bryan the confidence to create the Toolhub and CI patches needed to enable this for Toolhub. As a result, the Jenkins service is now running a job following each Gerrit merge for Toolhub which builds and publishes a new Docker container. This container can be used in our demonstration server today and will eventually be used in the production Kubernetes deployment.

The demo server can now be updated to run the most recent build of Toolhub with just a few simple commands:

$ ssh toolhub-demo01.toolhub.eqiad1.wikimedia.cloud
$ cd /srv/toolhub/demo/
$ make pull restart
sudo docker pull docker-registry.wikimedia.org/wikimedia/wikimedia-toolhub:latest
latest: Pulling from wikimedia/wikimedia-toolhub
052d566936e0: Already exists
a31f38503745: Already exists
2d075f1a82b5: Already exists
e6292ce415af: Already exists
fb63c62e3e15: Already exists
a0094f80b223: Already exists
04f95e08d928: Already exists
7dbf4f97da1a: Pull complete
8fecd93bd11a: Pull complete
1464aab90cf5: Pull complete
2d9e84fb3fa5: Pull complete
Digest: sha256:e85202f733e800ce5278861e565a9495c007f8c0ebe2d553da1c06c507b6f0fa
Status: Downloaded newer image for docker-registry.wikimedia.org/wikimedia/wikimedia-toolhub:latest
docker-registry.wikimedia.org/wikimedia/wikimedia-toolhub:latest
sudo systemctl restart toolhub.service

/healthz monitoring endpoint

edit
Tracked in Phabricator:
Task T276373 resolved

A new /healthz endpoint has been added to the Django backend application. This endpoint is the most trivial exercise of the Django backend possible. It will be used as part of the Kubernetes configuration as a "liveness" check to led Kubernetes see when an instance of Toolhub is deadlocked or resource starved requiring a restart of the service.

Workflow review with Risker

edit

Risker spent some time using the demo server with a specific focus on the various patrolling workflows that Toolhub implements currently. She discussed the application with Bryan in a video call during the review and wrote up some valuable notes on the current capabilities and workflows of the application. Bryan hopes to incorporate these notes into end-user documentation for Toolhub here on metawiki in the coming week.

The review uncovered a permissions issue for Oversighters caused by the toolinfo "ownership" model. The problem was that users with only the Oversighter permissions did not have authorization to perform undo and revert actions on toolinfo records created by other users. This ability is needed to allow an oversighter to remove bad faith content from the toolinfo (or list) record before hiding the edit(s) which introduced the offensive content. The missing permissions have been added now.

Quality Signal Sessions kicked off

edit

Srishti and Seve hosted our first Quality Signal Sessions events this week. One was an appearance in the July 28th Wikidata office hours and the other was a video chat with Rosie Stephenson-Goodknight about the tools that she and others use in WikiProject Women in Red. Information gathered from these sessions and others to be held in the coming weeks and months will help us design and implement new features for Toolhub. The primary focus of these discussions is understanding what criteria might help determine which tools are reliable, useful, and safe to use.

Toolhub at Wikimania

edit

Srishti has setup several sessions in the Wikimania 2021 unconference for Toolhub. We will be giving several introductory talks about Toolhub on different days and times to try and accommodate as many people as possible. There will also be a Quality Signal Session held during the event.

Wrap up

edit

With a bit less than two weeks remaining before our hoped for production release date, Bryan is trying to focus on the remaining work that is critical for deployment. There are quite a few small things left to accomplish, but it still seems possible that they will all get done. :)

Srishti and Seve's kickoff of talking with the Wikimedia community about Toolhub and gathering information for future additions to the project is an exciting milestone. It has been several years now since James last did direct outreach to the community about planning, and it is nice to be able to show the work that has been accomplished so far and start thinking together about what might come next.