This is the deployment repository for the wiki.mozilla.org project. To find out more about this project please visit the About page. To get involved with the project visit the Team page.
If you wish to have a local install of wiki.m.o including posts and content you will need to get the following datasets:
- A copy of the production database*
- A copy of the images directory
- A copy of the extesnions/Bugzilla/charts directory**
* There is talk of generating a sanitized (remove PII) database for convenience.
** This should not be the case. This extension should store its data in the images folder or in the temp file location as appropriate.
Once you have a copy of the aforementioned datasets you need to:
- clone this repository
- create a secrets.php file (see below)
- run the install.sh script (found in the tools directroy)
This file is where information specific to a particular deployment is stored. In hindsight I must admit that this is a poorly chosen name. This file should be self-explanatory. You can crib off of the -dist file or set environment variables in which case they will be automatically consumed.
MediaWiki core is installed as a submodule. To update it, simply follow your normal submodule workflow:
cd core
git checkout TAG
cd ../
git add core
git commit
git push
We are installing extensions in three separate ways.
A few (two) extensions are available through Subversion only. These extensions are included fully. To update them you need to navigate into the extension's folder and issue an svn up
. Then simply follow your usual procedure for committing upstream.
The majority of extensions are installed as git submodules. Simply follow normal submodule practice for this. In short:
- navagate to path/to/submodule directory
git checkout TAG
- navagate to top level
git add path/to/submodule
Extensions installed with composer need to be updated using the php tools/composer.phar
command. For information on usage of this command see the Composer Documentation. There are several things to note about using Composer in conjunction with MediaWiki.
- While Composer normally installs in a directory named
vendor
, they are also duplicated on install to theextensions
directory. These should not be checked into git and as such need to be added to the.gitignore
file. - You need to be sure to
git add composer.lock
file whenever you make changes to thecomposer.json
manually or with thecomposer.phar
command. This will avoid errors when setting up a fresh install. - Composer automatically handles dependency resolution. Therefore you should not add any dependent extensions to the extensions directory.
- Extensions installed with Composer are automatically loaded through the
vendor/autoload.php
file and do not need to be included in theLocalSettings.php
file.