MediaWiki fundraising/REL1_35
CliInstaller Class Reference

Class for the core installer command line interface. More...

Inheritance diagram for CliInstaller:
Collaboration diagram for CliInstaller:

Public Member Functions

 __construct ( $siteName, $admin=null, array $options=[])
 
 dirIsExecutable ( $dir, $url)
 Checks if scripts located in the given directory can be executed via the given URL.
 
 endStage ( $step, $status)
 
 envCheckPath ()
 Environment check to inform user which paths we've assumed.
 
 execute ()
 Main entry point.
 
 showError ( $msg,... $params)
 Same as showMessage(), but for displaying errors.
 
 showHelpBox ( $msg,... $params)
 Dummy.
 
 showMessage ( $msg,... $params)
 UI interface for displaying a short message The parameters are like parameters to wfMessage().
 
 showStatusMessage (Status $status)
 Show a message to the installing user by using a Status object.
 
 startStage ( $step)
 
 writeConfigurationFile ( $path)
 Write LocalSettings.php to a given path.
 
- Public Member Functions inherited from Installer
 __construct ()
 Constructor, always call this from child classes.
 
 addInstallStep ( $callback, $findStep='BEGINNING')
 Add an installation step following the given step.
 
 disableLinkPopups ()
 
 doEnvironmentChecks ()
 Do initial checks of the PHP environment.
 
 doEnvironmentPreps ()
 
 findExtensions ( $directory='extensions')
 Find extensions or skins in a subdirectory of $IP.
 
 generateKeys ()
 Generate $wgSecretKey.
 
 getAutoExtensionHookContainer ()
 Get the hook container previously populated by includeExtensions().
 
 getCompiledDBs ()
 Get a list of DBs supported by current PHP setup.
 
 getDBInstaller ( $type=false)
 Get an instance of DatabaseInstaller for the specified DB type.
 
 getDefaultSkin (array $skinNames)
 Returns a default value to be used for $wgDefaultSkin: normally the one set in DefaultSettings, but will fall back to another if the default skin is missing and some other one is present instead.
 
 getFakePassword ( $realPassword)
 Get a fake password for sending back to the user in HTML.
 
 getParserOptions ()
 
 getVar ( $name, $default=null)
 Get an MW configuration variable, or internal installer configuration variable.
 
 parse ( $text, $lineStart=false)
 Convert wikitext $text to HTML.
 
 performInstallation ( $startCB, $endCB)
 Actually perform the installation.
 
 populateSiteStats (DatabaseInstaller $installer)
 Install step which adds a row to the site_stats table with appropriate initial values.
 
 resetMediaWikiServices (Config $installerConfig=null, $serviceOverrides=[])
 Reset the global service container and associated global state to accommodate different stages of the installation.
 
 restoreLinkPopups ()
 
 restoreServices ()
 Restore services that have been redefined in the early stage of installation.
 
 setParserLanguage ( $lang)
 ParserOptions are constructed before we determined the language, so fix it.
 
 setPassword ( $name, $value)
 Set a variable which stores a password, except if the new value is a fake password in which case leave it as it is.
 
 setVar ( $name, $value)
 Set a MW configuration variable, or internal installer configuration variable.
 

Protected Member Functions

 envGetDefaultServer ()
 Helper function to be called from envPrepServer()
 
 getMessageText ( $msg, $params)
 
- Protected Member Functions inherited from Installer
 createMainpage (DatabaseInstaller $installer)
 Insert Main Page with default content.
 
 createSysop ()
 Create the first user account, grant it sysop, bureaucrat and interface-admin rights.
 
 disableTimeLimit ()
 Disable the time limit for execution.
 
 doGenerateKeys ( $keys)
 Generate a secret value for variables using a secure generator.
 
 envCheck64Bit ()
 Checks if we're running on 64 bit or not.
 
 envCheckCache ()
 Environment check for compiled object cache types.
 
 envCheckDB ()
 Environment check for DB types.
 
 envCheckDiff3 ()
 Search for GNU diff3.
 
 envCheckGit ()
 Search for git.
 
 envCheckGraphics ()
 Environment check for ImageMagick and GD.
 
 envCheckLibicu ()
 Check the libicu version.
 
 envCheckMemory ()
 Environment check for available memory.
 
 envCheckModSecurity ()
 Scare user to death if they have mod_security or mod_security2.
 
 envCheckPCRE ()
 Environment check for the PCRE module.
 
 envCheckServer ()
 Environment check to inform user which server we've assumed.
 
 envCheckShellLocale ()
 Environment check for preferred locale in shell.
 
 envCheckSuhosinMaxValueLength ()
 Checks if suhosin.get.max_value_length is set, and if so generate a warning because it is incompatible with ResourceLoader.
 
 envCheckUploadsDirectory ()
 Environment check for the permissions of the uploads directory.
 
 envPrepPath ()
 Environment prep for setting $IP and $wgScriptPath.
 
 envPrepServer ()
 Environment prep for the server hostname.
 
 findExtensionsByType ( $type='extension', $directory='extensions')
 Find extensions or skins, and return an array containing the value for 'Name' for each found extension.
 
 getAutoExtensionData ()
 Auto-detect extensions with an extension.json file.
 
 getAutoExtensionLegacyHooks ()
 Auto-detect extensions with an old style .php registration file, load the extensions, and return the merged $wgHooks array.
 
 getDocUrl ( $page)
 Overridden by WebInstaller to provide lastPage parameters.
 
 getExtensionInfo ( $type, $parentRelPath, $name)
 
 getInstallSteps (DatabaseInstaller $installer)
 Get an array of install steps.
 
 includeExtensionFiles ( $files)
 Include the specified extension PHP files.
 
 includeExtensions ()
 Installs the auto-detected extensions.
 

Private Member Functions

 validateExtensions ( $type, $directory, $nameLists)
 

Private Attributes

 $optionMap
 
 $specifiedScriptPath = false
 

Additional Inherited Members

- Static Public Member Functions inherited from Installer
static apacheModulePresent ( $moduleName)
 Checks for presence of an Apache module.
 
static getDBInstallerClass ( $type)
 Get the DatabaseInstaller class name for this type.
 
static getDBTypes ()
 Get a list of known DB types.
 
static getExistingLocalSettings ()
 Determine if LocalSettings.php exists.
 
static getInstallerConfig (Config $baseConfig)
 Constructs a Config object that contains configuration settings that should be overwritten for the installation process.
 
static maybeGetWebserverPrimaryGroup ()
 On POSIX systems return the primary group of the webserver we're running under.
 
static overrideConfig ()
 Override the necessary bits of the config to run an installation.
 
- Public Attributes inherited from Installer
array $licenses
 License types.
 
array $rightsProfiles
 User rights profiles.
 
const MINIMUM_PCRE_VERSION = '7.2'
 The oldest version of PCRE we can support.
 
- Protected Attributes inherited from Installer
HookContainer null $autoExtensionHookContainer
 
array $compiledDBs
 List of detected DBs, access using getCompiledDBs().
 
array $dbInstallers = []
 Cached DB installer instances, access using getDBInstaller().
 
array $defaultVarNames
 MediaWiki configuration globals that will eventually be passed through to LocalSettings.php.
 
array $envChecks
 A list of environment check methods called by doEnvironmentChecks().
 
array $envPreps
 A list of environment preparation methods called by doEnvironmentPreps().
 
array $extraInstallSteps = []
 Extra steps for installation, for things like DatabaseInstallers to modify.
 
array $internalDefaults
 Variables that are stored alongside globals, and are used for any configuration of the installation process aside from the MediaWiki configuration.
 
int $minMemorySize = 50
 Minimum memory size in MB.
 
array $objectCaches
 Known object cache types and the functions used to test for their existence.
 
ParserOptions $parserOptions
 Cached ParserOptions, used by parse().
 
Title $parserTitle
 Cached Title, used by parse().
 
array $settings
 
- Static Protected Attributes inherited from Installer
static array $dbTypes
 Known database types.
 

Detailed Description

Class for the core installer command line interface.

Since
1.17

Definition at line 33 of file CliInstaller.php.

Constructor & Destructor Documentation

◆ __construct()

CliInstaller::__construct ( $siteName,
$admin = null,
array $options = [] )
Parameters
string$siteName
string | null$admin
array$options
Exceptions
InstallException

Definition at line 57 of file CliInstaller.php.

References $GLOBALS, $wgContLang, $wgLang, $wgLanguageCode, $wgPasswordPolicy, Installer\findExtensions(), Installer\getDefaultSkin(), Installer\getVar(), Installer\setVar(), and validateExtensions().

Member Function Documentation

◆ dirIsExecutable()

CliInstaller::dirIsExecutable ( $dir,
$url )

Checks if scripts located in the given directory can be executed via the given URL.

Used only by environment checks.

Parameters
string$dir
string$url
Returns
bool|int|string

Reimplemented from Installer.

Definition at line 301 of file CliInstaller.php.

References showMessage().

◆ endStage()

CliInstaller::endStage ( $step,
$status )

Definition at line 240 of file CliInstaller.php.

References showMessage(), and showStatusMessage().

◆ envCheckPath()

CliInstaller::envCheckPath ( )

Environment check to inform user which paths we've assumed.

Returns
bool

Reimplemented from Installer.

Definition at line 288 of file CliInstaller.php.

References Installer\getVar(), and showMessage().

◆ envGetDefaultServer()

CliInstaller::envGetDefaultServer ( )
protected

Helper function to be called from envPrepServer()

Returns
string

Reimplemented from Installer.

Definition at line 296 of file CliInstaller.php.

◆ execute()

CliInstaller::execute ( )

◆ getMessageText()

CliInstaller::getMessageText ( $msg,
$params )
protected
Parameters
string$msg
array$params
Returns
string

Definition at line 261 of file CliInstaller.php.

References wfMessage().

Referenced by showMessage().

◆ showError()

CliInstaller::showError ( $msg,
$params )

Same as showMessage(), but for displaying errors.

Parameters
string$msg
mixed...$params

Reimplemented from Installer.

Definition at line 250 of file CliInstaller.php.

◆ showHelpBox()

CliInstaller::showHelpBox ( $msg,
$params )

Dummy.

Parameters
string$msgKey for wfMessage()
mixed...$params

Definition at line 274 of file CliInstaller.php.

◆ showMessage()

CliInstaller::showMessage ( $msg,
$params )

UI interface for displaying a short message The parameters are like parameters to wfMessage().

The messages will be in wikitext format, which will be converted to an output format such as HTML or text before being sent to the user.

Parameters
string$msg
mixed...$params

Reimplemented from Installer.

Definition at line 245 of file CliInstaller.php.

References getMessageText().

Referenced by dirIsExecutable(), endStage(), envCheckPath(), showStatusMessage(), and startStage().

◆ showStatusMessage()

CliInstaller::showStatusMessage ( Status $status)

Show a message to the installing user by using a Status object.

Parameters
Status$status

Reimplemented from Installer.

Definition at line 277 of file CliInstaller.php.

References Status\getErrorsArray(), Status\getWarningsArray(), and showMessage().

Referenced by endStage(), and execute().

◆ startStage()

CliInstaller::startStage ( $step)

Definition at line 233 of file CliInstaller.php.

References showMessage().

◆ validateExtensions()

CliInstaller::validateExtensions ( $type,
$directory,
$nameLists )
private

Definition at line 166 of file CliInstaller.php.

References $type, and Installer\getExtensionInfo().

Referenced by __construct().

◆ writeConfigurationFile()

CliInstaller::writeConfigurationFile ( $path)

Write LocalSettings.php to a given path.

Parameters
string$pathFull path to write LocalSettings.php to

Definition at line 228 of file CliInstaller.php.

References InstallerOverrides\getLocalSettingsGenerator().

Member Data Documentation

◆ $optionMap

CliInstaller::$optionMap
private
Initial value:
= [
'dbtype' => 'wgDBtype',
'dbserver' => 'wgDBserver',
'dbname' => 'wgDBname',
'dbuser' => 'wgDBuser',
'dbpass' => 'wgDBpassword',
'dbprefix' => 'wgDBprefix',
'dbtableoptions' => 'wgDBTableOptions',
'dbport' => 'wgDBport',
'dbschema' => 'wgDBmwschema',
'dbpath' => 'wgSQLiteDataDir',
'server' => 'wgServer',
'scriptpath' => 'wgScriptPath',
]

Definition at line 36 of file CliInstaller.php.

◆ $specifiedScriptPath

CliInstaller::$specifiedScriptPath = false
private

Definition at line 34 of file CliInstaller.php.


The documentation for this class was generated from the following file: