Page MenuHomePhabricator

Proposal: Single maintenance entry point
Closed, DeclinedPublic

Description

Inspired by Django's manage.py

Is it possible to build a single entry point for all maintenance tasks? For example,

php maintenance/update.php -> php maintenance.php update
php maintenance/changePassword.php -> php maintenance.php changePassword --user A --password B

And allow extensions, such as LocalisationUpdate, to add their own maintenance commands here as well. So,

php extensions/LocalisationUpdate/update.php -> php maintenance.php localisationUpdate


Version: 1.17.x
Severity: enhancement

Details

Reference
bz24524

Event Timeline

bzimport raised the priority of this task from to Lowest.Nov 21 2014, 11:05 PM
bzimport set Reference to bz24524.

Could be easily done with our new maintenace system. However, this form will be a bit more verbose - what are the benefits?

(In reply to comment #1)

Could be easily done with our new maintenace system. However, this form will be
a bit more verbose - what are the benefits?

First, maintenance directory is crowded, and not all files are expected to be used as maintenance scripts (for wiki sysadmins). This can give a clearer list of maintenance commands for them.

Second, extensions' maintenance scripts, such as LocalisationUpdate's, are scattered across the whole extension directory. I guess a central point looks better.

We will not remove older entry points any time soon due to backwards compatibilty, otherwise might be worth implementing.

Perhaps we should develop a folder naming standard for maintenance scripts provided by extensions like what we do (or at least discussed) for the testing framework, Which will also give a unified entry point a basis of where to look for them.

Perhaps something sweet and simple like. "/extensions/<NAME>/maintenance/".

It's possible, but I don't think it's useful at all. WONTFIX.

Our maintenance scripts already have now a consistent interface. I agree, WONTFIX.