MWStake MediaWiki Manager: Difference between revisions
Jump to navigation
Jump to search
Lex Sulzer (talk | contribs) (→) |
Lex Sulzer (talk | contribs) (→) |
||
Line 49: | Line 49: | ||
- ./mediawiki_root/w/LocalSettings.php:/var/www/html/w/LocalSettings.php | - ./mediawiki_root/w/LocalSettings.php:/var/www/html/w/LocalSettings.php | ||
- ./mediawiki_root/w/extensions:/var/www/html/w/extensions | - ./mediawiki_root/w/extensions:/var/www/html/w/extensions | ||
- ./mediawiki_root/w/skins:/var/www/html/w/skins | |||
- ./mediawiki_root/w/vendor:/var/www/html/w/vendor | - ./mediawiki_root/w/vendor:/var/www/html/w/vendor | ||
- ./mediawiki_root/w/images:/var/www/html/w/images | - ./mediawiki_root/w/images:/var/www/html/w/images | ||
Line 91: | Line 92: | ||
#- ./mediawiki_root/w/LocalSettings.php:/var/www/html/w/LocalSettings.php | #- ./mediawiki_root/w/LocalSettings.php:/var/www/html/w/LocalSettings.php | ||
#- ./mediawiki_root/w/extensions:/var/www/html/w/extensions | #- ./mediawiki_root/w/extensions:/var/www/html/w/extensions | ||
#- ./mediawiki_root/w/skins:/var/www/html/w/skins | |||
#- ./mediawiki_root/w/vendor:/var/www/html/w/vendor | #- ./mediawiki_root/w/vendor:/var/www/html/w/vendor | ||
- ./mediawiki_root/w/images:/var/www/html/w/images | - ./mediawiki_root/w/images:/var/www/html/w/images |
Revision as of 06:18, 4 March 2021
Manage (settings), upgrades, extensions, snapshots and content through an independent UI/API
Resources
https://github.com/dataspects/mediawiki-manager https://github.com/dataspects/mwmui
- docker-compose.yml (MediaWiki Dockerfile)
- extensions.json
- upgrades.json
- mediawiki-apps.json
- systemSettings.json
- mwmapi.php (MediaWiki Manager API)
- mwmui (User Interface)
- Integration Testing
MediaWiki Manager
Usecase: 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 |
---|---|
https://github.com/dataspects/mediawiki-manager/blob/main/start.sh version: "3.7"
services:
mediawiki:
env_file:
- CanastaInstanceSettings.env
container_name: mediawiki_canasta
image: dataspects/mediawiki:1.35.0-2103040820
ports:
- 80:80
- 443:443
volumes:
# MediaWiki >>>
- ./mediawiki_root/w/LocalSettings.php:/var/www/html/w/LocalSettings.php
- ./mediawiki_root/w/extensions:/var/www/html/w/extensions
- ./mediawiki_root/w/skins:/var/www/html/w/skins
- ./mediawiki_root/w/vendor:/var/www/html/w/vendor
- ./mediawiki_root/w/images:/var/www/html/w/images
# MediaWiki Manager >>>
- ./mediawiki_root/api:/var/www/html/api
- ./mediawiki_root/dsmwm.log:/var/www/html/dsmwm.log
- ./mediawiki_root/restic_password:/var/www/html/restic_password
- ./mediawiki_root/ui:/var/www/html/ui
- ./mediawiki_root/cloneLocation:/var/www/html/cloneLocation
- ./restic_data:/var/www/html/restic-repo
- ./conf:/etc/apache2/sites-available
# https://phabricator.wikimedia.org/source/mediawiki/browse/master/docker-compose.yml
# https://phoenixnap.com/kb/how-to-share-data-between-docker-containers
# + mysql
# mwmapi:
# container_name: mwmapi
# image: dataspects/mwmapi:210303
mysql:
container_name: mysql_canasta
image: mariadb:10.5.5
volumes:
- ./mysql_data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=${MARIADB_ROOT_PASSWORD}
|
https://github.com/dataspects/mediawiki-manager/blob/main/start-SAFE-MODE.sh version: "3.7"
services:
mediawiki:
env_file:
- CanastaInstanceSettings.env
container_name: mediawiki_canasta
image: dataspects/mediawiki:1.35.0-2103040820
ports:
- 80:80
- 443:443
volumes:
# MediaWiki >>>
#- ./mediawiki_root/w/LocalSettings.php:/var/www/html/w/LocalSettings.php
#- ./mediawiki_root/w/extensions:/var/www/html/w/extensions
#- ./mediawiki_root/w/skins:/var/www/html/w/skins
#- ./mediawiki_root/w/vendor:/var/www/html/w/vendor
- ./mediawiki_root/w/images:/var/www/html/w/images
# MediaWiki Manager >>>
- ./mediawiki_root/api:/var/www/html/api
- ./mediawiki_root/dsmwm.log:/var/www/html/dsmwm.log
- ./mediawiki_root/restic_password:/var/www/html/restic_password
- ./mediawiki_root/ui:/var/www/html/ui
- ./mediawiki_root/cloneLocation:/var/www/html/cloneLocation
- ./restic_data:/var/www/html/restic-repo
- ./conf:/etc/apache2/sites-available
# https://phabricator.wikimedia.org/source/mediawiki/browse/master/docker-compose.yml
# https://phoenixnap.com/kb/how-to-share-data-between-docker-containers
# + mysql
# mwmapi:
# container_name: mwmapi
# image: dataspects/mwmapi:210303
mysql:
container_name: mysql_canasta
image: mariadb:10.5.5
volumes:
- ./mysql_data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=${MARIADB_ROOT_PASSWORD}
|
MediaWiki Manager API
- PHP right now, moving to new https://github.com/dataspects/mwmapi (Go)
- MediaWiki Manager in MWMSafeMode will not work until moved to new mwmapi!
- Security review (e.g. exec commands)
Usecase: edit system settings
Experimental, see https://github.com/dataspects/mediawiki-manager/blob/main/catalogues/systemSettings.json
Usecase: enable (install) and disable extension
See
- https://github.com/dataspects/mediawiki-manager/blob/ca621f9dab7ba784c6d16f6fa71f0d500e9544d8/mwmapi/extension.php#L27
- https://github.com/dataspects/mediawiki-manager/blob/ca621f9dab7ba784c6d16f6fa71f0d500e9544d8/mwmapi/extension.php#L72
Usecase: upgrade MediaWiki "package"
Usecase: take snapshot
Usecase: inject dataspects ontology
MediaWiki Manager UI
- Gatsby/React/MaterialUI
- Security review
- Protection: .htaccess or own user management?
MediaWiki Stakeholders Group Certified Extensions Catalogue
- Some background:
- Format right now: https://github.com/dataspects/mediawiki-manager/blob/main/catalogues/extensions.json
- Management, roles, responsibilities, privileges, processes, QA?
- Hosting?