MWStake MediaWiki Manager
Jump to navigation
Jump to search
What is this about? 1. Install MediaWiki. 2. Manage (settings), upgrades, extensions, snapshots and content through an independent CLI/API/UI. 3. Put MediaWiki in SafeMode in case of problems.
Development Broadcasting
There are videos about MWStake MWM at dataspects' YouTube channel.
Target User Groups
UGcli: Users willing/able to use the command line
UGclis: Users wanting to script actions
UGui: Users requiring a UI, NOT willing/able to use the command line
Use Cases
Install/configure/upgrade system(s)
Where | How | Why |
---|---|---|
locally on a single computer | as a containerized app | for personal/private use |
in an intranet |
|
for corporate internal use |
on the internet/in the cloud |
|
for corporate internal/external/public use |
Install/enable/disable/upgrade/configure extensions
Backup/restore/clone/compare/consolidate system(s) (snapshots)
Troubleshoot/safe mode
Idea: if someone corrupts extensions/
and/or LocalSettings.php
, then ./start-SAFE-MODE.sh
restarts the wiki in safe mode, by falling back to container-internal versions of extensions/
and LocalSettings.php
.
MWM Normal Mode | MWM Safe Mode |
---|---|
Inject/extract/facet/edit/consolidate/iport/export/remove apps/structures/ontologies
Scripting
Package system(s)
MediaWiki Stakeholders Group Certified Extensions Service
- Some background:
- Format right now: https://github.com/dataspects/mediawiki-manager/blob/main/catalogues/extensions.json
- Management, roles, responsibilities, privileges, processes, QA?
- Hosting?
Abstraction Layers
ALcontainerization: Podman
- The mediawiki container image contains a full MediaWiki installation.
- initialize-persistent-mediawiki-service-volumes.sh will copy the 5 persistence-relevant files/directories out to the host so they can be volumed in when starting the mediawiki container.
- This shall allow for start-SAFE-MODE.sh.
ALcli: shell scripts using MWAPI and CRUDing files in service volumes
ALapi: MWM API (Go) wrapping and parametrizing ALcli shell scripts and using MWAPI
https://github.com/dataspects/mwmapi
Unit Testing
ALui: MWM UI (React/Material UI) using and parametrizing ALapi endpoints
https://github.com/dataspects/mwmui