From 86d47438d38d370ad214de366d7c38805aedb6a8 Mon Sep 17 00:00:00 2001 From: Timo Tijhof Date: Thu, 29 Sep 2022 18:00:38 +0100 Subject: [PATCH] maintenance: Use standard doMaintenance boilerplate Consistent with core, most WMF extensions, and boilerplate as documented in extensions/README and elsewhere; as per T316722. Change-Id: I02cfcb2bd3debf877d1cbf8654dff4a98dd354ad --- maintenance/manageForeignResources.php | 31 +++------------------- maintenance/persistRevisionThreadItems.php | 22 ++++----------- 2 files changed, 9 insertions(+), 44 deletions(-) diff --git a/maintenance/manageForeignResources.php b/maintenance/manageForeignResources.php index dd2248d1e..85b04afab 100644 --- a/maintenance/manageForeignResources.php +++ b/maintenance/manageForeignResources.php @@ -5,27 +5,11 @@ namespace MediaWiki\Extension\DiscussionTools\Maintenance; use ForeignResourceManager; use Maintenance; -// Security: Disable all stream wrappers and reenable individually as needed -foreach ( stream_get_wrappers() as $wrapper ) { - stream_wrapper_unregister( $wrapper ); +$IP = getenv( 'MW_INSTALL_PATH' ); +if ( $IP === false ) { + $IP = __DIR__ . '/../../..'; } -// Needed by the Guzzle library for some reason -stream_wrapper_restore( 'php' ); -// Needed by ForeignResourceManager to unpack TAR files -stream_wrapper_restore( 'phar' ); - -stream_wrapper_restore( 'file' ); -$basePath = getenv( 'MW_INSTALL_PATH' ); -if ( $basePath ) { - if ( !is_dir( $basePath ) - || strpos( $basePath, '~' ) !== false - ) { - die( "Bad MediaWiki install path: $basePath\n" ); - } -} else { - $basePath = __DIR__ . '/../../..'; -} -require_once "$basePath/maintenance/Maintenance.php"; +require_once "$IP/maintenance/Maintenance.php"; class ManageForeignResources extends Maintenance { @@ -44,11 +28,4 @@ class ManageForeignResources extends Maintenance { } $maintClass = ManageForeignResources::class; - -$doMaintenancePath = RUN_MAINTENANCE_IF_MAIN; -if ( !( file_exists( $doMaintenancePath ) && - realpath( $doMaintenancePath ) === realpath( "$basePath/maintenance/doMaintenance.php" ) ) ) { - die( "Bad maintenance script location: $basePath\n" ); -} - require_once RUN_MAINTENANCE_IF_MAIN; diff --git a/maintenance/persistRevisionThreadItems.php b/maintenance/persistRevisionThreadItems.php index 63afe6928..744d52934 100644 --- a/maintenance/persistRevisionThreadItems.php +++ b/maintenance/persistRevisionThreadItems.php @@ -12,26 +12,14 @@ use TableCleanup; use Throwable; use Title; -// Security: Disable all stream wrappers and reenable individually as needed -foreach ( stream_get_wrappers() as $wrapper ) { - stream_wrapper_unregister( $wrapper ); +$IP = getenv( 'MW_INSTALL_PATH' ); +if ( $IP === false ) { + $IP = __DIR__ . '/../../..'; } - -stream_wrapper_restore( 'file' ); -$basePath = getenv( 'MW_INSTALL_PATH' ); -if ( $basePath ) { - if ( !is_dir( $basePath ) - || strpos( $basePath, '~' ) !== false - ) { - die( "Bad MediaWiki install path: $basePath\n" ); - } -} else { - $basePath = __DIR__ . '/../../..'; -} -require_once "$basePath/maintenance/Maintenance.php"; +require_once "$IP/maintenance/Maintenance.php"; // Autoloader isn't set up yet until we do `require_once RUN_MAINTENANCE_IF_MAIN`… // but our class needs to exist at that point D: -require_once "$basePath/maintenance/TableCleanup.php"; +require_once "$IP/maintenance/TableCleanup.php"; class PersistRevisionThreadItems extends TableCleanup {