Installing Semantic Mediawiki with Ansible
Requirements:
- Use old mediawiki production database (upgrade?)
- Manage installation
- Manage upgrades
- Open Source (contribute back for other hackerspaces and other wikis)
- Manage backups
- Testable processes
- Automatically upgrade/configure/manage semantic mediawiki extension and other extensions
Requirements
- We want to use our old database.
- It would be nice to use semantic mediawiki.
- We should be able to upgrade and add extensions by redeploying the ansible playbook (idempotency retained)
- We should install all this stuff with
composer
- The Ansible Composer Module is a preview and doesn't guarantee a backwards compatible API. This should be fine.
- Composer Install Guide: Install Semantic MediaWiki using Composer
- General Semantic MediaWiki Install Guide
- Semantic Mediawiki Source
- Abount Semantic MediaWiki
Questions
- What RDBMS are we using now?
- What WikiMedia version are we using now?
- What WikiMedia extensions are we using now?
- How does the wiki upgrade process work? Special Considerations?
Alternatives to our own ansible playbook
WikiMedia has an initiative to simplify wiki deployments called CloudVPS.
It is OpenStack powered infrastructure. We want to self-host, but might be able to use their images?
A Noisebridge Wiki Upgrade Plan
Patrick: "no more snowflakes"
Trent's Plan
- Use my
servers.yml
playbook as a base, available here. - Add a premade playbook
- Make significant modifications to accomodate our needs
Hunting for a premade role
Success? Google Search
A google search for "ansible role semantic mediawiki" seemed promising and is summarized below.
There are probably more results available by trying more searches.
EMWCon Spring 2017
Found here: Using Ansible to create and manage a wiki/wiki farm examples.
- Very Promising Playbooks from phabricator.mediawiki.org
- Not as promising playbooks from meza
- it's just old, don't ignore it outright...
BlueSpice Enterprise
This may be helpful to look over.
- They have used ansible to deploy their enterprise product.
- A BlueSpice Playbook.
Some Random Playbooks/Roles
- has releases this year: github.com/yongxinL/ansible-mediawiki
- OLD: https://github.com/quimgil/ansible-playbook
- derivative: https://github.com/freephile/ansible-playbook
Failed: Ansible Galaxy
The playbooks I found here were incomplete and outdated, as usual.
Extra
-
a hosting environment for developers working on services that provide value to the Wikimedia movement. These services allow developers to easily do ad hoc analytics, administer bots, run webservices, and generally create tools to help editors and other volunteers in their work. The environment also includes access to a variety of data services.