WikiWire
Release status: experimental |
|||
|---|---|---|---|
| Description | A CI automation tool which can automatically upload and sync modules from your Git repository to your live MediaWiki files. | ||
| Author(s) | Wolfite (Obby Wiki) (Wlfttalk) | ||
| License | GPL v3 | ||
| Download | GitHub repo README.md Releases |
||
| Example | obbywiki/modules | ||
|
|||
| Compatible with MediaWiki 1.43+ | |||
WikiWire is an experimental CI/automation tool that uploads (syncs) content from a Git repository (such as one on GitHub) to an upstream MediaWiki instance via the MediaWiki Action API and bot passwords that are configured per each site. WikiWire allows for designating specific folders to certain sites/wikis, as well as a common folder which syncs to every configured wiki. WikiWire is useful for reducing maintenance between intertwined wiki projects and is currently available as a GitHub CI Action via the GitHub Marketplace.
Please note that WikiWire is pre-1.0 software, meaning that every release should be considered breaking and updates to the tool may change it significantly. WikiWire currently only officially supports MediaWiki 1.43 and above. Support for other versions of MediaWiki may work, but are not guaranteed.
Features
[edit]- Sync files from
modules/,templates/, ormediawiki/. - Designate whether to sync a specific module to a certain site or to all of the configured sites.
- Support for labels.
- Supported file types: .wikitext, .lua (.module.lua), .json, .js, .css.
- Easy integration with GitHub (once setup) to sync every changed module/template/file on commit.
Use cases & examples
[edit]WikiWire is a small project and is currently only utilized by a few wikis.
- The Obby Wiki uses WikiWire along with Darklua to automatically transpile Luau source to Scribunto compatible Lua 5.1 files on push (https://github.com/obbywiki/modules)
- The CONECORP Wiki uses WikiWire to sync shared modules between 3 different sites at once (https://github.com/conecorpwiki/wikiwire)
Usage
[edit]WikiWire is very early in development, so documentation is only available on the project page and is subject to heavy change. Please use it cautiously.
Please view the latest docs for WikiWire here: https://wikiwire.readthedocs.io/en/latest/
To use WikiWire you will need:
- A dedicated bot account with permission to edit the Module and Template namespaces and potentially the MediaWiki namespace, depending on your use case.
- Access to create bot passwords with sufficient permissions.
Source Code
[edit]The source code for the WikiWire is open-source and hosted on GitHub.
- Repository: GitHub
- License: GNU GENERAL PUBLIC LICENSE V3
- Contribution: Development is open to the community. Please see the repository for contribution guidelines.
