Page MenuHomePhabricator

Refactor mediawiki vagrant to use production puppet rules
Open, MediumPublic

Description

This is a long term goal:

Mediawiki vagrant should be a puppet module for development VMs with all the standard mediawiki stuff based on production puppet modules. This will likely require some refactoring of production puppet stuff but the result is cleaner puppet configuration and it would avoid the need for porting fixes from production to vagrant, as in T76022.

The same thing goes for beta cluster, it should be almost identical to production puppet configurations to avoid maintaining 3 versions of the same configs as much as possible.

Event Timeline

mmodell raised the priority of this task from to Medium.
mmodell updated the task description. (Show Details)
mmodell changed the edit policy from "All Users" to "MediaWiki-Vagrant (Project)".
mmodell changed Security from none to None.
mmodell updated the task description. (Show Details)
mmodell subscribed.

I can see the value in this but I can see the horrible downsides as well. There is a bit of ongoing debate as to the "one true purpose" of MediaWiki-Vagrant, and this task comes down hard on the side of "a tool for developers who are creating code for deployment on the WMF production cluster." Even if that is ultimately decided to be the primary goal of the project, requiring all puppet config used in MW-V to be committed into the operations/pupppet.git repo seems like a death sentence for the project. The only people who can +2 in operations/puppet are members of the ops ldap group and that is not a group that is open to easy admittance (says the guy who asked once).

What I would personally really like to see is a puppet repository structure in labs, beta and mw-v that allows easy sharing of modules between the environments and easy addition of locally customized modules as well. The only project I have used that seems to meet this goal is the GitHub developed Boxen project which uses librarian-puppet to assemble a collection of Puppet modules from a manifest much like Composer, Bundler or python virtualenvs would do in those respective languages.

Aklapper changed the edit policy from "MediaWiki-Vagrant (Project)" to "All Users".Jan 23 2023, 8:07 PM