# pip install -e git+https://github.com/wimleers/fileconveyor@master#egg=fileconveyor
# yum install python-paramiko
# easy_install "django-cumulus==1.0.10"
The first one installs fileconveyor into the current directory (for me, /root)
python-paramiko is the SSH client (not sure if it's needed for Cloud Files, but I was trying to test with SFTP at one point and it was needed for that)
The django-cumulus is necessary to get a working version of the Cloud Files storage API.
/usr/lib/python2.6/site-packages/django_cumulus-1.0.10-py2.6.egg/cumulus/settings.py and set all references to SERVICENET to be True instead of False.
<?xml version="1.0" encoding="UTF-8"?>
<config>
<sources ignoredDirs="CVS:.svn">
<source name="drupal" scanPath="/root/fctest" />
</sources>
<servers>
<server name="Rackspace Cloud Files" transporter="cloudfiles">
<username>myusername</username>
<api_key>xxxxxxxxxxxxxxxx</api_key>
<container>ContainerName</container>
</server>
</servers>
<rules>
<rule for="drupal" label="Generated Files">
<destinations>
<destination server="Rackspace Cloud Files" path="test" />
</destinations>
</rule>
</rules>
</config>
I created a directory in /root/fctest which would be the root of my synchronized directories. (That's the source entry) I created a server entry with my Cloud Files info. The rule entry tells fileconveyor what to do. It says for "drupal" (which is the name of my source entry), it should convey all files to the destination server (which is named "Rackspace Cloud Files") and everything in /root/fctest should be transferred to the ContainerName/test directory.
# python /root/src/fileconveyor/fileconveyor/arbitrator.py
Good luck. You'll need it.