如何从命令行安装Mediawiki扩展?

如何从命令行安装Mediawiki扩展?,mediawiki,mediawiki-extensions,mediawiki-installation,Mediawiki,Mediawiki Extensions,Mediawiki Installation,我正在尝试使用Ansible和Wikimedia自动安装Wikimedia 我注意到当前版本包含用于安装扩展的脚本参数。从脚本帮助命令: $ php maintenance/install.php --help CLI-based MediaWiki installation and configuration. Default options are indicated in parentheses. Usage: php install.php [--conf|--confpath|--

我正在尝试使用Ansible和Wikimedia自动安装Wikimedia

我注意到当前版本包含用于安装扩展的脚本参数。从脚本帮助命令:

$ php maintenance/install.php --help

CLI-based MediaWiki installation and configuration.
Default options are indicated in parentheses.

Usage: php install.php [--conf|--confpath|--dbgroupdefault|--dbname|--dbpass|--dbpassfile|--dbpath|--dbport|--dbprefix|-
-dbschema|--dbserver|--dbtype|--dbuser|--env-checks|--extensions|--globals|--help|--installdbpass|--installdbuser|--lang
|--memory-limit|--mwdebug|--pass|--passfile|--profiler|--quiet|--scriptpath|--server|--skins|--wiki|--with-extensions] [
name] <admin>

...

Script specific parameters:
    --extensions: Comma-separated list of extensions to install
    --with-extensions: Detect and include extensions
$php维护/install.php——帮助
基于CLI的MediaWiki安装和配置。
默认选项用括号表示。
用法:php install.php[--conf |--confpath |--dbgroupdefault |--dbname |--dbpass |--dbpassfile |--dbpath |--dbport |--dbprefix|-
-dbschema |--dbserver |--dbtype |--dbuser |--env checks |--extensions |--globals |--help |--installdbpass |--installdbuser |--lang
|--内存限制|--mwdebug |--pass |--passfile |--profiler |--quiet |--scriptpath |--server |--skins |--wiki |--带扩展名][
[姓名]
  • 有人能告诉我关于这些参数的更多细节文档,或者提供一个如何使用它们的示例吗

    我计划做一些尝试和错误,如果我在别人回答之前弄清楚它们是如何工作的,我会自己回答这个问题。但我知道扩展安装可能会变得复杂,通常需要更新配置文件,所以我希望能找到一些现有文档来指导我。

    简短回答 如果在
    extensions
    目录中找到指定的扩展名,则这些扩展名参数只需在
    LocalSettings.php
    文件中添加一行,即可在运行时加载扩展名

    长话短说 我玩了一下这个。我用扩展测试了
    ——根据帮助文档,扩展将
    检测并包含扩展。这似乎意味着它将扫描扩展目录并安装在那里找到的任何扩展

    我运行了以下命令:

    php maintenance/install.php --with-extensions --dbserver="localhost" --dbname=foo --dbuser=foo --dbpass=foo --server="https://wiki.foo.localhost" --script path=/mediawiki -en --pass=foo "My Wiki Name" "Admin"
    
    它在我的
    LocalSettings.php
    config文件中生成了以下块,列出了当前版本的Mediawiki核心所包含的默认包:

    # Enabled extensions. Most of the extensions are enabled by adding
    # wfLoadExtensions('ExtensionName');
    # to LocalSettings.php. Check specific extension documentation for more details.
    # The following extensions were automatically enabled:
    wfLoadExtension( 'CategoryTree' );
    wfLoadExtension( 'Cite' );
    wfLoadExtension( 'CiteThisPage' );
    wfLoadExtension( 'CodeEditor' );
    wfLoadExtension( 'ConfirmEdit' );
    wfLoadExtension( 'Gadgets' );
    wfLoadExtension( 'ImageMap' );
    wfLoadExtension( 'InputBox' );
    wfLoadExtension( 'Interwiki' );
    wfLoadExtension( 'LocalisationUpdate' );
    wfLoadExtension( 'MultimediaViewer' );
    wfLoadExtension( 'Nuke' );
    wfLoadExtension( 'OATHAuth' );
    wfLoadExtension( 'ParserFunctions' );
    wfLoadExtension( 'PdfHandler' );
    wfLoadExtension( 'Poem' );
    wfLoadExtension( 'Renameuser' );
    wfLoadExtension( 'ReplaceText' );
    wfLoadExtension( 'SpamBlacklist' );
    wfLoadExtension( 'SyntaxHighlight_GeSHi' );
    wfLoadExtension( 'TitleBlacklist' );
    wfLoadExtension( 'WikiEditor' );
    
    这个参数的复杂性,可能是明智的,并没有超出这个范围

    我试着运行这个命令,看看
    --extensions=GoogleLogin
    参数是否会自动神奇地安装。事实并非如此。相反,它报告了这一错误:

    Could not find the registration file for the extension "GoogleLogin"
    
    因此,如果您正在寻找一个功能更全面的作曲家,如扩展包管理器,这不是它

    当我下载GoogleLogin扩展名并将其放入
    extensions
    目录并运行
    --with extensions
    参数时,它确实将其包含在config file extensions块中

    在没有明确测试它的情况下,我总结出
    --extensions
    参数的操作方式与
    --with extensions
    相同,只是它将重写为
    LocalSettings.php
    配置文件,只有那些明确指定并在
    extensions
    目录中找到的扩展名