From 26ad01bfa3a7e7ad6b7dc3d2530055aff3f9d821 Mon Sep 17 00:00:00 2001 From: Chad Horohoe Date: Fri, 29 Oct 2010 16:28:50 +0000 Subject: [PATCH] (bug 19593) $wgServer can't be set properly with --server attribute in command line tools. Also fixes regression in generateSitemap.php from maintenance rewrite. Also possible workaround for bug 18274. --- RELEASE-NOTES | 1 + maintenance/Maintenance.php | 10 +++++++++- maintenance/generateSitemap.php | 3 --- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 7d33ed973b..2a38a1dd0b 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -188,6 +188,7 @@ it from source control: http://www.mediawiki.org/wiki/Download_from_SVN * (bug 23194) Special:ListFiles now has thumbnails * Use hreflang to specify canonical and alternate links, search engine friendly when a wiki has multiple variant languages. +* (bug 19593) Specifying --server in now works for all maintenance scripts === Bug fixes in 1.17 === * (bug 17560) Half-broken deletion moved image files to deletion archive diff --git a/maintenance/Maintenance.php b/maintenance/Maintenance.php index 1d0cc58aed..bc91a0f8c5 100644 --- a/maintenance/Maintenance.php +++ b/maintenance/Maintenance.php @@ -351,6 +351,9 @@ abstract class Maintenance { $this->addOption( 'wiki', 'For specifying the wiki ID', false, true ); $this->addOption( 'globals', 'Output globals at the end of processing for debugging' ); $this->addOption( 'memory-limit', 'Set a specific memory limit for the script, "max" for no limit or "default" to avoid changing it' ); + $this->addOption( 'server', "The protocol and server name to use in URLs, e.g.\n" . + "\t\thttp://en.wikipedia.org. This is sometimes necessary because\n" . + "\t\tserver name detection may fail in command line scripts.", false, true ); // If we support a DB, show the options if ( $this->getDbType() > 0 ) { $this->addOption( 'dbuser', 'The DB user to use for this script', false, true ); @@ -693,7 +696,7 @@ abstract class Maintenance { * Handle some last-minute setup here. */ public function finalSetup() { - global $wgCommandLineMode, $wgShowSQLErrors; + global $wgCommandLineMode, $wgShowSQLErrors, $wgServer; global $wgProfiling, $wgDBadminuser, $wgDBadminpassword; global $wgDBuser, $wgDBpassword, $wgDBservers, $wgLBFactoryConf; @@ -704,6 +707,11 @@ abstract class Maintenance { # Same with these $wgCommandLineMode = true; + # Override $wgServer + if( $this->hasOption( 'server') ) { + $wgServer = $this->getOption( 'server', $wgServer ); + } + # If these were passed, use them if ( $this->mDbUser ) { $wgDBadminuser = $this->mDbUser; diff --git a/maintenance/generateSitemap.php b/maintenance/generateSitemap.php index 4acf1757f4..5667dd027c 100644 --- a/maintenance/generateSitemap.php +++ b/maintenance/generateSitemap.php @@ -128,9 +128,6 @@ class GenerateSitemap extends Maintenance { $this->mDescription = "Creates a sitemap for the site"; $this->addOption( 'fspath', 'The file system path to save to, e.g. /tmp/sitemap' . "\n\t\tdefaults to current directory", false, true ); - $this->addOption( 'server', "The protocol and server name to use in URLs, e.g.\n" . - "\t\thttp://en.wikipedia.org. This is sometimes necessary because\n" . - "\t\tserver name detection may fail in command line scripts.", false, true ); $this->addOption( 'compress', 'Compress the sitemap files, can take value yes|no, default yes', false, true ); } -- 2.20.1