Creating my own Storage¶
In order to create your own original photo storage, all you have to do
is implement a class called Storage that inherits from
thumbor.storages.BaseStorage and has three simple methods: put,
exists and remove.
put is the method that actually stores the image somewhere. It could
send the picture to a remote storage like Amazon’s S3 or it could just
save the picture to the local filesystem. This method should have a
signature of put(path, bytes) and it should return the file path
(for future reference).
exists should return if the file in the given path already exists.
This method should have a signature of exists(path) and it should
return a boolean stating if the file exists.
remove should just remove the file in the given path. This method
must be idempotent, meaning that if the file has already been removed
(or does not exist for that matter) it shouldn’t do anything on
subsequent calls. This method should have a signature of
remove(path) and does not need to return anything.
After your class has been created (and hopefully tested, lol), you just
need to modify the ORIGINAL_PHOTO_STORAGE configuration option in
your thumbor.conf file to the module where you implemented your
Storage class. Please note that thumbor must be able to import this
module, so it should be somewhere in the PYTHONPATH you started thumbor
with.