[sheepdog] [PATCH v1 0/3] add http interface for sheepfs

MORITA Kazutaka morita.kazutaka at gmail.com
Thu Jan 23 16:43:54 CET 2014


At Thu, 23 Jan 2014 13:57:50 +0800,
Robin Dong wrote:
> 
> From: Robin Dong <sanbai at taobao.com>
> 
> Some old softwares can only use files on filesystem as input, so we should add
> a new type of interface for sheepfs to access object-storage as a
> posix-filesystem.
> It is called "http interface", since it use libcurl to access object-storage
> service (such as s3 or swift) and show accounts, containers as directories and
> objects as files.
> This http interface only shows containers and objects that are written into
> file "object" by name.
> 
> Usage:
> 
> sheepfs /sheepfs
> # give ip and port
> echo "192.168.1.1:83" > /sheepfs/http/address
> # give object
> echo "/john/fruit/apple" > /sheepfs/http/object
> echo "/lily/pet/cat" > /sheepfs/http/address
> # now we have new directories "jonh", "fruit", "lily", "pet" and
> # new files "apple" and "cat" as show below:
> /sheepfs/http/john/
> /sheepfs/http/jonh/fruit/
> /sheepfs/http/jonh/fruit/apple
> /sheepfs/http/lily/
> /sheepfs/http/lily/pet/
> /sheepfs/http/lily/pet/cat
> 
> Robin Dong (3):
>   sheepfs: add framework for http interface
>   sheepfs: implement the http interface of sheepfs by using libcurl
>   test: add test-case for http interface of sheepfs
> 
>  sheepfs/Makefile.am      |   4 +-
>  sheepfs/core.c           |   7 +-
>  sheepfs/http.c           | 338 +++++++++++++++++++++++++++++++++++++++++++++++
>  sheepfs/shadow_file.c    |  16 ++-
>  sheepfs/sheepfs.h        |  18 ++-
>  tests/functional/084     |  50 +++++++
>  tests/functional/084.out |   2 +
>  tests/functional/group   |   1 +
>  8 files changed, 431 insertions(+), 5 deletions(-)
>  create mode 100644 sheepfs/http.c
>  create mode 100755 tests/functional/084
>  create mode 100644 tests/functional/084.out

IIUC, we need libcurl to compile this change.  If so, please update
configure.ac too.

Thanks,

Kazutaka



More information about the sheepdog mailing list