SwiftMedia using Rackspace Cloud Files
Go to http://noc.wikimedia.org/conf/highlight.php?file=CommonSettings.php and look for "OpenStack". Around there you can see some swift backend config and some file repo config. Of course our repo is still using the NFS ones, but you could imagine just swapping out the 'backend' => 'local-NFS', lines with the swift backend name. You can probably ignore 'shardViaHashLevels' and 'fileJournal'. Also, 'wikiId' can be ignored or set to some pretty and concise unique ID for the wiki. You won't need to deal with the 'shared' repo or backend either. So your setup will be much simpler.
Aaron,
Using the information from the link, I configured the SwiftBackend. However, I am getting this error: PHP Notice: Undefined index: directory in /var/www/html/mediawiki/includes/filerepo/backend/FileBackendGroup.php on line 83.
Ideas?
Thank you so much for all of your help!
Hmm, it might be easier to just email me the config. Here is some config from my testwiki:
# Backend/Repo stuff... require( "$IP/../extensions/SwiftCloudFiles/SwiftCloudFiles.php" ); $wgFileBackends[] = array( 'name' => 'localSwift', 'class' => 'SwiftFileBackend', 'wikiId' => 'aaron-ubuntu-wiki', 'lockManager' => 'fsLockManager', 'swiftAuthUrl' => $wgSwiftConf['authUrl'], 'swiftUser' => $wgSwiftConf['user'], 'swiftKey' => $wgSwiftConf['key'], #'swiftProxyUser' => 'test:anon', 'shardViaHashLevels' => array( 'local-public' => array( 'levels' => 2, 'base' => 16, 'repeat' => true ), 'local-thumb' => array( 'levels' => 2, 'base' => 16, 'repeat' => true ), 'local-deleted' => array( 'levels' => 2, 'base' => 36, 'repeat' => false ) ), #'readOnly' => 'Temporary planned maintenence for 5 min', 'fileJournal' => array( 'class' => 'DBFileJournal', 'wiki' => false ), 'parallelize' => 'implicit' ); $wgLocalFileRepo = array( 'class' => 'LocalRepo', 'name' => 'local', 'backend' => 'localSwift', 'scriptDirUrl' => $wgScriptPath, 'scriptExtension' => $wgScriptExtension, 'url' => 'http://localhost/TrunkWiki/core/images/local', 'hashLevels' => 2, 'transformVia404' => true, 'deletedHashLevels' => 2 );