CC-5888: Handle file deletion if the file is stored in the cloud

This commit is contained in:
drigato 2014-08-12 12:32:49 -04:00
parent 46228341b2
commit 879e776c8d
4 changed files with 49 additions and 23 deletions

View file

@ -1,15 +1,16 @@
#!/usr/bin/python
import sys
import simplejson
from libcloud.storage.providers import get_driver
from libcloud.storage.types import Provider, ContainerDoesNotExistError, ObjectDoesNotExistError
from libcloud.storage.types import Provider, ObjectDoesNotExistError
provider = str(sys.argv[0])
bucket = str(sys.argv[1])
api_key = str(sys.argv[2])
api_key_secret = str(sys.argv[3])
obj_name = str(sys.argv[4])
provider = str(sys.argv[1])
bucket = str(sys.argv[2])
api_key = str(sys.argv[3])
api_key_secret = str(sys.argv[4])
obj_name = str(sys.argv[5])
cls = get_driver(getattr(Provider, provider))
driver = cls(api_key, api_key_secret)
@ -19,6 +20,9 @@ try:
object_name=obj_name)
filesize = getattr(cloud_obj, 'size')
driver.delete_object(obj=cloud_obj)
data = simplejson.dumps({"filesize": filesize})
print data
except ObjectDoesNotExistError:
raise Exception("Could not find object on %s" % provider)
raise Exception("Could not find object on %s in bucket: %s and object: %s" % (provider, bucket, obj_name))