Jump to content

Wikimedia Release Engineering Team/CI Futures WG

From mediawiki.org

RelEng working group for the future of CI[edit]


Given the Pipeline work we are at an inflection point with respect to our Continuous integration infrastructure tooling/software.

This group will deliberate and make a proposal on what the future makeup of our CI tooling/software looks like.

The desired outcome is:

  • Selected software (or options) that would make up the complete set, with a:
    • Rough explanation of how they fit together.
    • Trade-offs they identified when making the recommendation.


  • Lars - lead of this group
  • Brennen
  • Dan
  • Zeljko

(NB: Of course, this group will consult with others for any needed explanation of the current system or choices.)

Tracking ticket in Phabricator[edit]


Initial scoped choice[edit]

The final step in choosing Argo was made by preparing a spreadsheet for voting on various aspects (see voting link above). The aspects and their formulation was done by Lars, with feedback from the rest of the working group. All of the working group voted, after an internal meeting, and after meetings where proofs of concept of the three final candidates were presented. The results were not announced on the WMF tech blog, and that was admittedly a mistake. All three alternatives were very similar, which can also be seen of the voting scores of 373/350/362.

Re-scoping and the final choice[edit]

While the conclusion of this evaluation pointed to Argo as the replacement for WMF CI, new information caused a change of plans.

After the end of this working group's evaluation the Director of Engineering Productivity and the Engineering Manager for Release Engineering explored the impact of adding in code review to the equation. In conversation with the working group, Technology department leadership (eg CTO, VPs) and representatives from Wikimedia SRE, Architecture, Core Platform, Product, Security, and Technical Engagement teams this addition weighed the choice heavily to an integrated system which ultimately push GitLab over the Argo.