Merge "Setup.php: allow loading config schema from MainConfigSchema."

This commit is contained in:
jenkins-bot 2022-05-04 23:41:13 +00:00 committed by Gerrit Code Review
commit 6308d67121
3 changed files with 16 additions and 1 deletions

View file

@ -54,12 +54,14 @@
use MediaWiki\HeaderCallback;
use MediaWiki\Logger\LoggerFactory;
use MediaWiki\MainConfigNames;
use MediaWiki\MainConfigSchema;
use MediaWiki\MediaWikiServices;
use MediaWiki\Settings\Config\GlobalConfigBuilder;
use MediaWiki\Settings\Config\PhpIniSink;
use MediaWiki\Settings\LocalSettingsLoader;
use MediaWiki\Settings\SettingsBuilder;
use MediaWiki\Settings\Source\PhpSettingsSource;
use MediaWiki\Settings\Source\ReflectionSchemaSource;
use MediaWiki\Settings\WikiFarmSettingsLoader;
use Psr\Log\LoggerInterface;
use Wikimedia\RequestTimeout\RequestTimeout;
@ -143,7 +145,12 @@ $wgSettings = new SettingsBuilder(
new PhpIniSink()
);
if ( getenv( 'MW_USE_LEGACY_DEFAULT_SETTINGS' ) || defined( 'MW_USE_LEGACY_DEFAULT_SETTINGS' ) ) {
if ( defined( 'MW_USE_CONFIG_SCHEMA_CLASS' ) ) {
// Load config schema from MainConfigSchema. Useful for running scripts that
// generate other representations of the config schema. This is slow, so it
// should not be used for serving web traffic.
$wgSettings->load( new ReflectionSchemaSource( MainConfigSchema::class ) );
} elseif ( getenv( 'MW_USE_LEGACY_DEFAULT_SETTINGS' ) || defined( 'MW_USE_LEGACY_DEFAULT_SETTINGS' ) ) {
// Load the old DefaultSettings.php file. Should be removed in 1.39. See T300129.
require_once "$IP/includes/DefaultSettings.php";

View file

@ -6,6 +6,10 @@ use Wikimedia\StaticArrayWriter;
require_once __DIR__ . '/Maintenance.php';
require_once __DIR__ . '/includes/ConfigSchemaDerivativeTrait.php';
// Tell Setup.php to load the config schema from MainConfigSchema rather than
// any generated file, so we can use this script to re-generate a broken schema file.
define( 'MW_USE_CONFIG_SCHEMA_CLASS', 1 );
/**
* Maintenance script that generates a DefaultSettings.php file,
* for backwards compatibility and as documentation stub.

View file

@ -5,6 +5,10 @@ use Wikimedia\StaticArrayWriter;
require_once __DIR__ . '/Maintenance.php';
require_once __DIR__ . '/includes/ConfigSchemaDerivativeTrait.php';
// Tell Setup.php to load the config schema from MainConfigSchema rather than
// any generated file, so we can use this script to re-generate a broken schema file.
define( 'MW_USE_CONFIG_SCHEMA_CLASS', 1 );
/**
* Maintenance script that generates the PHP representation of the config-schema.yaml file.
*