mDescription = "Run an SQL file into the DB, replacing prefix and charset vars"; $this->addArgs( array( 'patch-name' ) ); } protected function getDbType() { return Maintenance::DB_ADMIN; } public function execute() { $dbw = wfGetDB( DB_MASTER ); foreach( $this->mArgs as $arg ) { $files = array( $arg, DatabaseBase::patchPath( $arg ), DatabaseBase::patchPath( "patch-$arg.sql" ), ); foreach( $files as $file ) { if( file_exists( $file ) ) { $this->output( "$file ...\n" ); $dbw->fileSource( $file ); continue 2; } } $this->error( "Could not find $arg\n" ); } $this->output( "done.\n" ); } } $maintClass = "PatchSql"; require_once( DO_MAINTENANCE );