This repository contains the deployment framework for the RopeWiki backend infrastructure.
At its heart ropewiki is powered by Mediawiki (the same as Wikipedia), along with an extension called Semantic Mediawiki which allows for meaningful connections between pieces of data.
tl;dr - everything needed to make the site load lives here. What you actually see when the site loads does not live here.
Additional documentation may be found in the GitHub wiki.
Using this repo you can build and deploy the complete stack of services needed to run the website.
- deployment tool & helper
- docker compose config
- webserver config
- proxy server config
- backup automation
- mail relay config
Importantly, this repo does not contain:
- Site Data — The content of the site lives in a database and is distributed to developers separately. Note that something you may find confusing is that much of the site's code lives as pages inside MediaWiki itself. Logic powered by Semantic MediaWiki is heavily used via site templates, and JS/CSS is stored in special MediaWiki pages.
- Images & Uploads — Images and any other uploaded content (e.g. KML or PDF files) are located elsewhere too.
- Javascript & CSS — As already mentioned, these are actually part of the MediaWiki system itself, however we do keep their sources in GitHub: js, css.
- Sensitive Content — Passwords and the like are provided at runtime (usually via env vars) and not stored here.