turbolift is an absolutely brilliant utility for manipulating RackSpace Cloud Files. With turbolift you can do things like:
- Upload a directory, (recursively)
- Upload a single file
- Upload a local directory (recursively) and sync it with a Cloud Files Container
- Download a Container to a local directory
- Download changed objects from a Container to a local directory
- Compresses a Local Directory, then uploads it
- List all Containers
- List all Objects in a Container
- Delete an Object in a Container
- Delete an entire Container
- Clone one Container in one region to another Container in the same or Different Region.
- Set Custom headers on Objects/Containers
Wow!
So in this article I’m going to demonstrate how to clone a container.
Here’s the download link for turbolift:
https://github.com/cloudnull/turbolift
On CentOS 6.5 the install is easy:
|
1 2 3 4 |
yum install python-devel python-setuptools git clone git://github.com/cloudnull/turbolift.git cd turbolift python setup.py install |
Now lets assume that we have a container on RackSpace Cloud Files name “devimages” and we want to copy or clone the contents of that container to another container named “prodimages”. Here’s the turbolift command:
|
1 2 3 4 5 6 7 |
turbolift -u [USERNAME] \ -a [APIKEY] \ --os-rax-auth [SOURCE REGION] \ clone \ -sc devimages \ -tc prodimages \ -tr [DESTINATION REGION] |
The [SOURCE REGION] and [DESTINATION REGION] should be one of ‘dfw’, ‘ord’, ‘iad’, ‘lon’, ‘syd’ or ‘hkg’.
turbolift is fast – it takes about 10 minutes to clone a 2GB container with 18K objects in the same region.





4 Responses
Just wanted to say thanks for the great writeup.
Super Awesome Utility. Saved good amount of manual efforts. Key is the ease of use and hence this one is far far better than using the swift APIs.
Looks good in terms of transfer speed, but all my cloned images has been reset with “content-type as text” so it is not readable via urls.
Container is having almost 5 GB with nearly 4 lakhs objects.
Will be interesting to see what the developer says about your bug report.
https://github.com/cloudnull/turbolift/issues/102