In the Release Engineering team we're preparing for a new CI system. The current one needs to be replaced. It works well, but parts of it are getting obsolete. In particular, the Zuul version we use is obsoleted by upstream. The new version of Zuul is entirely different. Because of this, we are taking the opportunity to re-think the whole approach to CI. We would like to introduce the possibility of continuous delivery and deployment, in addition to continuous intergration.
Earlier this year, we started a working group to evaluate candidates for software. In phase 1, we set up some criteria for evaluation, and considered a large number of possibilities, and winnowed the list down to three candidates: GitLab CI, Zuul v3, and Argo. For details and a report, see [0].
We are currently writing up what the new CI system should look like in more detail. The approach taken is to start with what's needed and wanted, rather than what the tools provide. The document has had a first round of internal review, to get rid of the worst issues, and v2 is now open for feedback from the whole movement. You can find it at [1]. Those with a WMF Google account can comment directly on the doc, everyone else please use email, either by responding to this email via wikitech-l or directly to me.
[0] https://www.mediawiki.org/wiki/Wikimedia_Release_Engineering_Team/CI_Futures... [1] https://docs.google.com/document/d/1EQuInEV-eY_5kxOZ8E1qEdLr8fb6ihwOD9V_tpVF...