mDescription = "Run an SQL file into the DB, replacing prefix and charset vars"; $this->addArg( 'patch-name', 'Name of the patch file, either full path or in maintenance/archives' ); } public function getDbType() { return Maintenance::DB_ADMIN; } public function execute() { $dbw = wfGetDB( DB_MASTER ); foreach ( $this->mArgs as $arg ) { $files = array( $arg, $dbw->patchPath( $arg ), $dbw->patchPath( "patch-$arg.sql" ), ); foreach ( $files as $file ) { if ( file_exists( $file ) ) { $this->output( "$file ...\n" ); $dbw->sourceFile( $file ); continue 2; } } $this->error( "Could not find $arg\n" ); } $this->output( "done.\n" ); } } $maintClass = "PatchSql"; require_once RUN_MAINTENANCE_IF_MAIN;