[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