Page MenuHomeMiraheze

Create extension to automate running some maintenance scripts (request-based)
Open, LowPublic

Description

I know I say this about many tasks but due to the less frequent requests in this area, this one is really the lowest possible priority and every task (at least created until this day) should probably be done before attempting this one. I can't even say for sure if it's really necessary but it would be part of the long term plan to automate most things and no longer have SRE need to SSH to servers for smaller/basic tasks that can be automated. This task also presupposes that T10304 was successfully done as it would use the same methods.

Various extensions already exist for doing this such as https://github.com/wikimedia/mediawiki-extensions-MaintenanceShell/tree/master/includes but they are not suitable for our needs and are prone to abuse.

Just like ImportDump which is specific to a more complex script, we should have an extension that allows users to request that certain more 'basic' scripts are ran, which can be approved/declined via wiki and that would run automatically without needing to copy/paste things on a server. Here is a list of maintenance scripts that are frequently requested/would be useful:

  • InitSiteStats.php
  • InitEditCount.php
  • DeleteOldRevisions.php
  • DeleteArchivedRevisions.php
  • refreshLinks.php
  • deleteBatch.php (if possible, resource intensive?, probably most frequently requested)
  • rollbackEdits.php ?
  • MirahezeMagic/assignImportedEdits.php (more complex, not sure if possible?)

Event Timeline

Reception123 created this task.
Reception123 renamed this task from Create extension to automate running some maintenance scripts (requests) to Create extension to automate running some maintenance scripts (request-based).Thu, Jan 19, 19:35
Reception123 moved this task from Backlog to Long Term on the MediaWiki (SRE) board.
Reception123 updated the task description. (Show Details)

updateArticleCount is kinda already done. Changing the wgArticleCountMethod in ManageWiki runs it, additionally it is ran twice a month on all wikis.