robk-tahoe
4f04bf99a5
fuse/impl_{a,b}: improve node-url handling
...
specifically change the expectation of the code to be such that the node-url
(self.url) always includes the trailing slash to be a correctly formed url
moreover read the node-url from the 'node.url' file found in the node 'basedir'
and only if that doesn't exist, then fall back to reading the 'webport' file
from therein and assuming localhost. This then supports the general tahoe
pattern that tools needing only a webapi server can be pointed at a directory
containing the node.url file, which can optionally point to another server,
rather than requiring a complete node dir and locally running node instance.
2008-09-24 11:28:54 -07:00
robk-tahoe
97229238b0
fuse/impl_b: tweaks from testing on hardy
...
from testing on linux (specifically ubuntu hardy) the libfuse dll has a
different name, specifically libfuse.so.2. this patch tries libfuse.so
and then falls back to trying .2 if the former fails.
it also changes the unmount behaviour, to simply return from the handler's
loop_forever() loop upon being unmounted, rather than raising an EOFError,
since none of the client code I looked at actually handled that exception,
but did seem to expect to fall off of main() when loop_forever() returned.
Additionally, from my testing unmount typically led to an OSError from the
fuse fd read, rather than an empty read, as the code seemed to expect.
also removed a spurious import pyflakes quibbled about.
2008-09-24 11:07:38 -07:00
nejucomo
8e9bb72008
fuse: runtests: Create an interface for setup/cleanup of the two implementations...
...
The impl_b cleanup appears incorrect. I'm not sure what the proper behavior is.
2008-06-07 00:08:25 -07:00
nejucomo
171b430afb
fuse: runtests: Wrap OSError exceptions which are test failures.
2008-06-07 00:07:18 -07:00
nejucomo
609e9b08da
fuse: runtests: Move exception classes to top scope.
2008-06-07 00:06:00 -07:00
nejucomo
15fdb572b8
fuse: runtests: Fix typo in summary reporting.
2008-06-07 00:05:07 -07:00
nejucomo
0a94ac5732
fuse: runtests: Make test numbers (and everything in general) 0-indexed for consistency.
2008-06-06 23:19:15 -07:00
nejucomo
f665b10b12
fuse: runtests.py: Fix a typo bug in fusermount output checking.
2008-06-06 23:18:15 -07:00
nejucomo
4d8aac35f4
fuse: runtests.py: Fix bug in polling_operation error that always referred to introducer.furl.
2008-06-06 23:17:19 -07:00
nejucomo
4f94d00abe
fuse: impl_b: Support --basedir on commandline.
2008-06-06 23:16:38 -07:00
nejucomo
2fa5785960
fuse: impl_b: Add impl_b to the contrib directory.
2008-06-06 22:22:36 -07:00
nejucomo
e538651947
fuse: Reorganize directory tree and modify runtests.py to run against both implementations...
...
Currently, fuse impl_b does not support a --basedir argument, and always
uses ~/.tahoe, which makes it incompatible with these system tests.
2008-06-06 22:19:23 -07:00
Zooko O'Whielacronx
c88ea89f14
contrib: add a note about Armin Rigo's fuse implementation
2008-04-28 07:05:44 -07:00
nejucomo
67660232f1
tahoe_fuse: system test: Verify file contents can be properly read.
2008-01-30 03:14:48 -07:00
nejucomo
28552e5967
tahoe_fuse: system test: Populate a testdir with files and empty children directories, then test the fuse interface for proper listings and size metadata.
2008-01-30 02:59:43 -07:00
nejucomo
7240021d1c
tahoe_fuse: system test: Create a separate directory for each test and pass the cap and local path to each test. Add two basic sanity tests for empty directories.
2008-01-30 02:57:54 -07:00
nejucomo
9ecfbc62cd
tahoe_fuse: system test: Replace repeated attempts at webapi calls with single calls, abstract webapi calls into a single function.
2008-01-30 02:56:25 -07:00
nejucomo
0dbdb0f871
tahoe_fuse: system test: Remove some needless comments.
2008-01-30 02:55:53 -07:00
nejucomo
5e94c07045
tahoe_fuse: system test: Move test summary to end of output.
2008-01-30 02:46:24 -07:00
nejucomo
ab3d399ac7
tahoe_fuse: system tests: Update comments.
2008-01-30 02:45:54 -07:00
nejucomo
98e92e2a48
tahoe_fuse: system test: Make output checking into non-fatal warnings, and make patterns looser.
2008-01-30 01:10:53 -07:00
nejucomo
3aceb6be1e
tahoe_fuse.py: system test: Distinguish between TestFailures and unexpected exceptions during testing (and fix a typo).
2008-01-28 22:42:28 -07:00
nejucomo
7421d99f18
tahoe_fuse.py: system test: setup: lexically sort test names, create a TestFailure class, implement an empty directory listing test.
2008-01-28 22:40:47 -07:00
nejucomo
597ab62d12
tahoe_fuse.py: system test: setup: fixed a bug in which the mointpoint was not created before mounting.
2008-01-28 22:39:13 -07:00
nejucomo
7fe264d280
tahoe_fuse.py: system test: Many changes to framework...
...
The flow control has been de-obfuscated a bit.
Some output changes.
The test framework has quite a few race conditions, but it does a reasonable job of setting up and cleaning up.
2008-01-28 22:27:19 -07:00
nejucomo
b4c566efca
Individual tests run after all the setup layers are in place.
2008-01-28 22:25:11 -07:00
nejucomo
de022b2115
tahoe_fuse: cmdline args & system test: Allow nonstandard client basedirs to be specified and update the system tests to use this feature...
...
The commandline option handling of the version of python-fuse I use is arcane. This is an ugly hack.
2008-01-20 20:56:27 -07:00
nejucomo
57da456dc9
tahoe_fuse: rename decorators for clarity.
2008-01-20 20:26:57 -07:00
nejucomo
c621fe1aa6
Small log output change.
2008-01-20 20:18:53 -07:00
nejucomo
ba4458d502
tahoe_fuse: system test: webapi connection: bug fix and small log output change.
2008-01-20 20:10:31 -07:00
nejucomo
b4b410eccf
tahoe_fuse: system test: Add FIXME comments.
2008-01-20 20:06:19 -07:00
nejucomo
d1c0aa6ea6
tahoe_fuse: system test: Manage multiple clients for test grid... System test setup is almost complete.
...
This is a little convoluted because of the "layer" design, but it appears
to function correctly and do properly ordered cleanup.
Before system test setup is complete, tahoe_fuse.py needs to be modified
to allow arbitrary client base directories.
2008-01-20 20:02:20 -07:00
nejucomo
1f42953fb4
tahoe_fuse: system test: Attempt to create a dirnode to place in <basedir>/private/root_dir.cap, but this fails because the network is too small...
...
This patch also factors out the "polling_operation" pattern.
2008-01-20 18:47:47 -07:00
nejucomo
1295c1e4ec
tahoe_fuse: system test: Launch the fuse interface.
2008-01-20 17:55:51 -07:00
nejucomo
c225c657d4
tahoe_fuse: system test: factor out some cleanup code.
2008-01-20 17:54:48 -07:00
nejucomo
c7a557ba69
tahoe_fuse: system test: Copy the introducer.furl with a possible race condition due to timeout.
2008-01-20 17:09:44 -07:00
nejucomo
026f2d0df5
A start at adding a system test for tahoe_fuse. Incomplete...
2008-01-20 16:54:56 -07:00
nejucomo
2b9ba229be
Remove a redundant assertion for clarity.
2008-01-19 00:20:32 -07:00
nejucomo
686350f6cc
Change stdout to rudimentary file-based logging.
2008-01-19 00:18:54 -07:00
nejucomo
0e0ab5f394
Rename the unittest script for tahoe-fuse.
2008-01-19 00:16:12 -07:00
nejucomo
eaba225e1f
Wouldn't it be nice to reuse the allmydata library?
2008-01-12 21:41:26 -07:00
nejucomo
0b5f9ff5c3
Support url-encoding in caps.
2008-01-12 21:41:07 -07:00
nejucomo
a339ba6feb
The start of unit tests for tahoe_fuse.py.
2008-01-12 19:56:03 -07:00
nejucomo
52fc80a54b
Formatting changes and a few FIXMEs for tahoe_fuse.py
2008-01-12 19:55:38 -07:00
nejucomo
19fdb20bac
Remove redundant docs from tahoe_fuse.py docstrings which are in the README. Add implementation-specific notes in the doc strings.
2008-01-12 19:54:33 -07:00
nejucomo
ddeb5eab54
Change the name of tahoe_fuse.py to something importable.
2008-01-12 18:50:53 -07:00
nejucomo
7214f2f8b8
A patch to make tahoe-fuse.py work with 0.7.0 plus a howto README.
2008-01-12 17:06:39 -07:00