MWStake MediaWiki Manager: Difference between revisions

From MWStake
Jump to navigation Jump to search
Line 33: Line 33:


=== {{mlb|Install/upgrade system(s)}} ===
=== {{mlb|Install/upgrade system(s)}} ===
{|class=wikitable
!Where
!How
!Why
|-
|locally on a single computer
|as a containerized app
|for personal/private use
|-
|in an intranet
|
* as a containerized app on a root server
* as a containerized app on a PAAS
|for corporate internal use
|-
|
on the internet/in the cloud
|
* on a shared host
* as a containerized app on a root server
* as a containerized app on a PAAS
|
|for corporate internal/external/public use
|}


=== Manage MW ===
=== Manage MW ===

Revision as of 06:46, 11 April 2021

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/upgrade system(s)

Where How Why
locally on a single computer as a containerized app for personal/private use
in an intranet
  • as a containerized app on a root server
  • as a containerized app on a PAAS
for corporate internal use

on the internet/in the cloud

  • on a shared host
  • as a containerized app on a root server
  • as a containerized app on a PAAS
for corporate internal/external/public use


Manage MW

Settings

  1. systemSettings.json

Upgrade

  1. upgrades.json


Manage MW Extensions (install/enable/disable/upgrade)

  1. extensions.json

MediaWiki Stakeholders Group Certified Extensions Service

Snapshots (backup/restore/clone)

SafeMode

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.

MWMSafeModeAlert.png

MWM Normal Mode MWM Safe Mode

Mwm-normal-mode.png

Mwm-safe-mode.png

Manage MW Content (inject/extract/facet/edit)

  1. mediawiki-apps.json

Abstraction Layers

Mediawiki-manager-Service-Architecture.png

ALcontainerization: Podman

  1. The mediawiki container image contains a full MediaWiki installation.
  2. 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.
  3. 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

Integration Testing