Service/wiki: Difference between revisions
No edit summary |
No edit summary |
||
| Line 37: | Line 37: | ||
* [[Wiki Team/Contacts]] for wiki content and user accounts | * [[Wiki Team/Contacts]] for wiki content and user accounts | ||
* [[User:Bernie|Bernie Innocenti]] for hosting issues | * [[User:Bernie|Bernie Innocenti]] for hosting issues - I'M NO LONGER ACTIVELY MAINTAINING THIS | ||
* [[User:Sebastian|Sebastian Silva]] for the Local Labs wikis | * [[User:Sebastian|Sebastian Silva]] for the Local Labs wikis | ||
| Line 44: | Line 44: | ||
The main wiki lives here at <code>/srv/www-sugarlabs/wiki/</code> | The main wiki lives here at <code>/srv/www-sugarlabs/wiki/</code> | ||
Except for trivial changes, work on the wiki should be carried | Except for trivial changes, work on the wiki should be carried in the parallel wiki-devel instance before landing onto the production instance. | ||
in the parallel wiki-devel instance before landing onto the production instance. | |||
{{Highlight|'''Note:''' The devel wiki has an outdated snapshot of the page database and its own slightly different server configuration.}} | {{Highlight|'''Note:''' The devel wiki has an outdated snapshot of the page database and its own slightly different server configuration.}} | ||
| Line 89: | Line 88: | ||
Our MediaWiki instances are installed from git to allow easy rebasing of our changes on upgrades. | Our MediaWiki instances are installed from git to allow easy rebasing of our changes on upgrades. | ||
For the full details on this installation method, see http://www.mediawiki.org/wiki/Download_from_Git | |||
The initial setup process (probably outdated now) lookd like this: | |||
git clone https://gerrit.wikimedia.org/r | git clone https://gerrit.wikimedia.org/r/mediawiki/core.git --branch REL1_34 wiki-devel | ||
cd wiki-devel | cd wiki-devel | ||
git submodule update --init | git submodule update --init | ||
For | Checkout additional extensions we wish to enable. For ease of management, check them out into extensions-all and then symlink them from extensions/ | ||
EXTENSIONS=CheckUser ContributionScores HTMLets LastUserLogin LdapAuthentication MobileFrontend TimedMediaHandler UniversalLanguageSelector UserMerge VisualEditor Widgets | |||
mkdir extensions-all | |||
for i in EXTENSIONS; do | |||
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/$i extensions-all/$i --branch REL1_34; | |||
(cd extensions && ln -s ../extensions-all/$i); | |||
done | |||
== Visual Editor == | == Visual Editor == | ||
| Line 112: | Line 116: | ||
== Upgrade notes == | == Upgrade notes == | ||
'''Note:''' Before blindly following the procedure below, check the official documentation for anything that might have changed: | |||
https://www.mediawiki.org/wiki/Download_from_Git#Keeping_up_to_date | |||
git | We update our MediaWiki instances by simply pulling from the remote git repo and then switching to a different stable branch: | ||
git checkout -b | |||
git fetch | |||
git branch -a | grep REL | sort -V | |||
git checkout -b REL1_XX origin/REL1_XX | |||
git submodule update --init | |||
The skins also need to be updated from time to time (particularly after a major release). Instead of checking out hundreds od skins with the official process, we can update only the skins we have installed: | |||
cd skins | |||
for i in MonoBook Timeless Vector; do | |||
(cd $i && git fetch && git checkout -b REL1_34 origin/REL1_34) | |||
done | |||
As of this writing, only Vector is enabled in LocalSettings.php, but it's always best to keep the skins in sync in case we want to test them. | |||
The "extensions-all" directory contains a bunch of git repositories stitched together with 'git submodule'. | The "extensions-all" directory contains a bunch of git repositories stitched together with 'git submodule'. | ||
| Line 122: | Line 139: | ||
cd extensions-all | cd extensions-all | ||
git | for ext in *; do (cd $ext && git fetch && git checkout -b REL1_XX origin/REL1_XX); done | ||
You also need to update some dependencies using a PHP manager called 'composer': | |||
composer update --no-dev | |||
Now run update script: | Now run update script: | ||
| Line 128: | Line 149: | ||
php maintenance/update.php | php maintenance/update.php | ||
In the case of Local Labs wikis the correct command for performing the updates is: | In the case of Local Labs wikis, the correct command for performing the updates is: | ||
php maintenance/update.php --conf /srv/www-sugarlabs/pe.sugarlabs.org/wiki/LocalSettings.php | php maintenance/update.php --conf /srv/www-sugarlabs/pe.sugarlabs.org/wiki/LocalSettings.php | ||
(replace pe.sugarlabs.org for the correct path for your local lab | (replace pe.sugarlabs.org for the correct path for your local lab) | ||
If the SemanticMediaWiki extension is enabled (we don't use it), also refresh its tables: | If the SemanticMediaWiki extension is enabled (we don't use it), also refresh its tables: | ||