Hello,
> Hi Diogo,
>
> Diogo Vieira <[email protected]> writes:
>> Hello once again and I'm sorry to message you directly.
>>
>> I tried to reply to the mailing list but it seems to not have been
>> published because I can't find it browsing through google groups web
>> interface and I haven't had any answer since my email was sent. Can
>> you please inform me if I actually sent the email to the correct
>> mailing list? And, if possible, can you help me with the problem I
>> stated?
>
> The address was correct, but your email did not get through. Are you
> sure you did not get an (automated) reply with more information? Did you
> subscribe to the group? (Posting is only allowed by members).
That was probably the problem since I only subscribed after posting my response.
>
>>>>> I'm looking forward to extend (at least as just a prototype for now)
>>>>> your s3ql project to add a custom backend (with a new service being
>>>>> developed internally similar to S3). Since I didn't see any info in
>>>>> the documentation about that I thought that maybe you could give me
>>>>> some advice where to start. Would it be too much trouble to add
>>>>> support to it?
>>>>
>>>> If you're looking for documentation on the code, you'll have to look at
>>>> the code itself, there should be plenty of docstrings and comments. To
>>>> implement a backend, take a look at the AbstractBackend class in
>>>> src/s3ql/backend/common.py. It describes all methods that you need to
>>>> implement. For a simple example, take a look at the local backend in
>>>> src/s3ql/backends/local.py, for something more complex look at
>>>> src/s3ql/backends/s3c.py or swift.py.
>>>>
>>>> The difficulty of adding a backend for your service is hard to judge
>>>> without any information on your service. Is it documented somewhere?
>>>
>>> I'm taking a look at this moment at the common.py and all the
>>> backends files and it seems to be easily readable and
>>> understandable. As for the documentation for the service there is
>>> none at the moment because it's still a prototype, but the API tries
>>> to emulate that of S3 closely so I guess it shouldn't be too
>>> difficult.
>
> In that case you may not have to do any coding at all, just use the
> S3-compatible backend.
It is not fully compatible though, we do have some different API's.
>
>>> One thing I'm having difficulties with is understanding what should be the
>>> workflow during development. Having written scripts in Python before I know
>>> the
>>> syntax well, but I never really developed on open source software,
>>> especially when
>>> it comes to more than just a script. For now what I did was to download the
>>> source (which
>>> actually contains binaries)
>
> I very much doubt that. The s3ql-2.7.tar.bz2 does not contain any
> binaries. Are you sure you downloaded the right file?
Sorry if didn't make myself clear. I meant the python scripts in the bin
folder. And I'm using the s3ql-1.17.tar.bz2. Should I use the other one (which
I believe needs python 3)?
>>> from the website and started to work on the src folder. But how would
>>> I actually iterate between development and testing? Imagine I start
>>> to create a new backend. How would I test my new backend? I'm sorry
>>> if I sound like a newbie, but in this matter I really am :)
>
> Best way would be to add unit tests (see tests/t1_backends.py) and run
> them with "py.test tests/". After that, try to use it in daily operation :-).
Okay, I'll take a look and add my own files. but if I try to literally run
`py.test tests` in the root folder it doesn't work (maybe I got something
wrong?).
BTW, when developing, after I update the code should I run `python setup.py
{build, Cython,build_ext}` and run the scripts in the bin folder, if I mean to
use it interactively (that is running the code I changed)?
>
> Best,
> Nikolaus
>
Once again thank you very much,
Diogo Vieira
--
You received this message because you are subscribed to the Google Groups
"s3ql" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.