summaryrefslogtreecommitdiff
path: root/www/wiki/docs/maintenance.txt
diff options
context:
space:
mode:
authorYaco <franco@reevo.org>2020-06-04 11:01:00 -0300
committerYaco <franco@reevo.org>2020-06-04 11:01:00 -0300
commitfc7369835258467bf97eb64f184b93691f9a9fd5 (patch)
treedaabd60089d2dd76d9f5fb416b005fbe159c799d /www/wiki/docs/maintenance.txt
first commit
Diffstat (limited to 'www/wiki/docs/maintenance.txt')
-rw-r--r--www/wiki/docs/maintenance.txt57
1 files changed, 57 insertions, 0 deletions
diff --git a/www/wiki/docs/maintenance.txt b/www/wiki/docs/maintenance.txt
new file mode 100644
index 00000000..87071f2a
--- /dev/null
+++ b/www/wiki/docs/maintenance.txt
@@ -0,0 +1,57 @@
+Prior to version 1.16, maintenance scripts were a hodgepodge of code that
+had no cohesion or formal method of action. Beginning in 1.16, maintenance
+scripts have been cleaned up to use a unified class.
+
+1. Directory structure
+2. How to run a script
+3. How to write your own
+
+1. DIRECTORY STRUCTURE
+ The /maintenance directory of a MediaWiki installation contains several
+subdirectories, all of which have unique purposes.
+
+2. HOW TO RUN A SCRIPT
+ Ridiculously simple, just call 'php someScript.php' that's in the top-
+level /maintenance directory.
+
+Example:
+ php clearCacheStats.php
+
+The following parameters are available to all maintenance scripts
+--help : Print a help message
+--quiet : Quiet non-error output
+--dbuser : The database user to use for the script (if needed)
+--dbpass : Same as above (if needed)
+--conf : Location of LocalSettings.php, if not default
+--wiki : For specifying the wiki ID
+--batch-size : If the script supports batch operations, do this many per batch
+
+3. HOW TO WRITE YOUR OWN
+Make a file in the maintenance directory called myScript.php or something.
+In it, write the following:
+
+==BEGIN==
+
+<?php
+
+require_once 'Maintenance.php';
+
+class DemoMaint extends Maintenance {
+
+ public function __construct() {
+ parent::__construct();
+ }
+
+ public function execute() {
+ }
+}
+
+$maintClass = "DemoMaint";
+require_once RUN_MAINTENANCE_IF_MAIN;
+
+==END==
+
+That's it. In the execute() method, you have access to all of the normal
+MediaWiki functions, so you can get a DB connection, use the cache, etc.
+For full docs on the Maintenance class, see the auto-generated docs at
+https://doc.wikimedia.org/mediawiki-core/master/php/html/classMaintenance.html