•  
     
    story #26042 install mediawiki standalone
Summary
Empty
install mediawiki standalone
Empty

Functional bites

As a site administrator, I should be able to:

  • Install Mediawiki Standalone Tuleap plugin
  • Install Mediawiki package with all dependencies

Once installed, I should be able to activate the service in projects (see dedicated story #24228).

As a site administrator, I should be able to no longer have mediawiki 1.23 on new projects as well as new service activation (on project that doesn't already have a mediawiki instance).

Technical insights

Here is a top level view of the packaging:

flowchart TD
    subgraph MediaWiki
    mw_tarbal["MediaWiki tarball"]-->mw_sources["MediaWiki sources"]
    mw_sources-->mw_sources_autoload["MediaWiki sources with vendor/autoload.php renamed to vendor/autoload_mediawiki.php"]
    end
    subgraph MediaWiki Tuleap skin and extensions
    mw_ext_skin_src["Tuleap skin and extensions (composer install) sources"]-->mw_ext_skin_src_autoload["Tuleap skin and extensions with vendor/autoload.php renamed to vendor/autoload_tuleap-skins-extensions.php and vendor/composer/ renamed to vendor/composer_tuleap-skins-extensions/"]
    mw_ext_skin_src["Tuleap skin and extensions (composer install) sources"]-->mw_ext_config_suspended["MediaWiki config for suspended instances"]
    end
    subgraph MediaWiki config and overrides
    mw_config_overrides["MediaWiki config and overrides (includes a custom vendor/autoload.php)"]
    end
    mw_sources_autoload-->mw_tuleap_sources_merge["Sources of all parts merged together"]
    mw_ext_skin_src_autoload-->mw_tuleap_sources_merge
    mw_config_overrides-->mw_tuleap_sources_merge
    mw_ext_config_suspended-->mw_tuleap_sources_merge
    mw_tuleap_sources_merge-->mw_tuleap_sources_merge_clean["Sources of all parts merged together without tests folders, phpunit.xml..."]
    mw_tuleap_sources_merge_clean-->RPM
    specfile["RPM Specfile"]-->RPM
Empty
Empty
Status
Mediawiki Standalone
Done
Development
  • [ ] Does it involves User Interface? 
  • [ ] Are there any mockups?
  • [ ] Are permissions checked?
  • [ ] Does it need Javascript development?
  • [ ] Does it need a forge upgrade bucket?
  • [ ] Does it need to execute things in system events?
  • [ ] Does it impact project creation (templates)?
  • [ ] Is it exploratory?
Empty
Details
#26042
Manuel Vacelet (vaceletm)
2022-09-05 15:29
2022-03-29 11:51
3495

References
Referencing story #26042

Git commit

tuleap/tuleap/stable

Retrieve Mediawiki extensions and Tuleap skin during the "prepare" phase 623f3156d0
Move MediaWiki Standalone OAuth2 authorize endpoint to avoid conflicts with MW instances 67987b06c4
Fix PHPCS issues in the "post-merge" CI pipeline 728ba4498b
Build a "MediaWiki Tuleap flavor" RPM 1f95cbb078
Scaffold mediawiki_standalone deployment in a dev environment 530e17ceb6
Package the mathoid CLI bc3b2f18d1
Generate a LocalSettings file when installing the mediawiki_standalone plugin 16902f69a6
Register the MediaWiki standalone OAuth2 app 670c18775d
Store the shared secret between MediaWiki and the MediaWiki Standalone Tuleap plugin 7eb3f32b9b
Do not pull the glibc from nixpkgs when running macOS 929064fed3
Move mediawiki_standalone package to "experimental" ff1e5ab7ff
MediaWikiSharedSecretGeneratorForgeConfigStoreTest is flaky cc806c1f5f
Update mediawiki/tuleap-integration package to latest commit fb0ab22641
MediaWiki update script is executed during `tuleap-cfg site-deploy` command e09c8ec17b
Clear plugin hooks cache before calling the command to execute update hooks 3c21437506
Install MediaWiki root instance when it has not been done before c1f51c0d5f
Log errors when executing plugin update hooks d28bdfc11a
Move back mediawiki_standalone package to "community" 1324d7cb84
Add missing RPM dependency between tuleap-plugin-mediawiki-standalone and tuleap-plugin-mediawiki packages 579b85831d
Allow to access HTTPS endpoint from within the web dev container 8c9e50dee6
Only allow the "Tuleap" skin on the MediaWiki instances 1dca47c611
Fix publish libraries pipeline 594596220f
Disable the special pages CreateAccount and PasswordReset e3986e444e
MediaWiki PHP FPM service should start without manual intervention 8258960c4f
Disable all email features in MediaWiki 2383b45b40
Add missing dependency to htmldoc in the mediawiki-tuleap-flavor package b3291cc2ad
Allow users to upload files c3570b6ec3
Hide language preferences in MediaWiki user preferences d583af8d55
MediaWiki cookies should have the SameSite attribute set and be restricted to the current host 34f37b256c
MediaWiki standalone instance uses the same session settings than Tuleap 1d0e6ebca1
Setup MediaWiki and nginx in a "production ready" mode 2191b1e3b6
Limit layout flickering on MediaWiki page load 2ca97b63cb
Harden Tuleap MediaWiki PHP FPM SystemD unit 96553eeac8
Do not allow to install/enable MediaWiki standalone and program management plugins without async workers in place 0f22735d6b
Drop `PFUser::isLoggedIn` method 0cb6caba0f
Update "Tuleap MediaWiki" extensions d33a473422
`GET /projects/:id/3rd_party_integration_data` is not correctly localized 0ea98d43fb
REST API is broken when the MediaWiki Standalone plugin is enabled in production 48c528b5a6
MediaWiki: 1.35.6 -> 1.35.7 83efb44516
Install/Update MediaWiki automatically when the plugin is enabled 7c19e7b7d8
Run MediaWiki instance updates in parallel 47877c5c75
Log into a text file messages marked as error, exception or fatal by MediaWiki a440880ca9
Make `openid`, `email` and `profile` scope accessible even when the OAuth2 server plugin is not present b26f2c6985
Disable MediaWiki patrolling for admins 5915c5fafa
Update "Tuleap MediaWiki" extensions 816b38dfc6

Follow-ups

User avatar
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
  • Status changed from On going to Done
User avatar

gerrit #26193 (Do not allow to install/enable MediaWiki standalone and program management plugins without async workers in place) integrated in Tuleap 13.9.99.165

User avatar

gerrit # 26196 (Harden Tuleap MediaWiki PHP FPM SystemD unit) integrated in Tuleap 13.9.99.163

User avatar

gerrit #26094 (Add missing RPM dependency between tuleap-plugin-mediawiki-standalone and tuleap-plugin-mediawiki packages) integrated in Tuleap 13.9.99.78

User avatar
Thomas Gerbet (tgerbet)2022-05-24 09:51
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar

gerrit #25934 (Package the mathoid CLI) integrated in Tuleap 13.8.99.91


  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
User avatar
  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
  • Category set to Mediawiki Standalone
User avatar

gerrit #25862 (Scaffold mediawiki_standalone deployment in a dev environment) integrated in Tuleap 13.8.99.53


  • Acceptance criteria
    Something went wrong, the follow up content couldn't be loaded
    Only formatting have been changed, you should switch to markup to see the changes
  • Category set to
User avatar
Thomas Gerbet (tgerbet)2022-05-06 09:26

The build of the MediaWiki RPM can be summarized with the following graph:

flowchart TD
    subgraph MediaWiki
    mw_tarbal["MediaWiki tarball"]-->mw_sources["MediaWiki sources"]
    mw_sources-->mw_sources_autoload["MediaWiki sources with vendor/autoload.php renamed to vendor/autoload_mediawiki.php"]
    end
    subgraph MediaWiki Tuleap skin and extensions
    mw_ext_skin_src["Tuleap skin and extensions (composer install) sources"]-->mw_ext_skin_src_autoload["Tuleap skin and extensions with vendor/autoload.php renamed to vendor/autoload_tuleap-skins-extensions.php and vendor/composer/ renamed to vendor/composer_tuleap-skins-extensions/"]
    end
    subgraph MediaWiki config and overrides
    mw_config_overrides["MediaWiki config and overrides (includes a custom vendor/autoload.php)"]
    end
    mw_sources_autoload-->mw_tuleap_sources_merge["Sources of all parts merged together"]
    mw_ext_skin_src_autoload-->mw_tuleap_sources_merge
    mw_config_overrides-->mw_tuleap_sources_merge
    mw_tuleap_sources_merge-->mw_tuleap_sources_merge_clean["Sources of all parts merged together without tests folders, phpunit.xml..."]
    mw_tuleap_sources_merge_clean-->RPM
    specfile["RPM Specfile"]-->RPM