Commit Graph

331 Commits

Author SHA1 Message Date
Brian Warner
479abae92f cli: fix usage to refer to 'tahoe', not 'allmydata'. Closes #154. 2007-10-11 15:37:52 -07:00
Brian Warner
e1f604f7cd change our default HTTP port to 8123 2007-10-11 13:17:23 -07:00
Brian Warner
ee72a5adfd rename client.tac to tahoe-client.tac, so that 'ps ax|grep tahoe' works. Closes #156. 2007-10-11 02:48:06 -07:00
Brian Warner
a76898244b create_node.py: allow config['webport'] to be missing, for check_memory 2007-10-11 02:19:59 -07:00
Brian Warner
0f000784ce create_node: use a webport by default, on localhost:8011 2007-10-11 02:01:23 -07:00
Brian Warner
7fd1964c6f runner: make most commands use ~/.tahoe by default (create-client, start/stop/restart, all CLI tools, but *not* create-introducer 2007-10-11 01:54:23 -07:00
Brian Warner
a470947cc3 cli: use urllib.escape on all URIs 2007-10-11 01:34:44 -07:00
Brian Warner
5b28411b04 cli: add --node-directory and --root-uri to all commands 2007-10-11 00:30:36 -07:00
Brian Warner
ec8781e587 'tahoe restart': re-enable --force option, which was accidentally lost 2007-10-10 20:10:03 -07:00
Brian Warner
51b59b1219 dump-share: clarify the label on the size of the original file 2007-09-26 15:00:59 -07:00
Zooko O'Whielacronx
e3d782da52 cli: use port 8123 as the example port number 2007-09-24 13:17:27 -07:00
Zooko O'Whielacronx
93efd2902e startstop_node.py: use SIGINT instead of SIGTERM to stop the node (fixes #143) 2007-09-23 07:06:54 -07:00
Zooko O'Whielacronx
594a104c71 startstop_node.py: fix bug with options passed to restart and enable restart --profile 2007-09-21 15:48:15 -07:00
Zooko O'Whielacronx
3e4616f4ad cli: add --profile flag 2007-09-21 15:03:47 -07:00
Zooko O'Whielacronx
20079e3019 startstop_node.py: don't pass config to do_start() and do_stop() 2007-09-21 15:03:15 -07:00
Zooko O'Whielacronx
28b2c19f1e startstop_node.py: find twistd.py in sys.prefix/scripts if there isn't a twistd executable on the path 2007-09-21 14:45:20 -07:00
Zooko O'Whielacronx
f0b427485b startstop_node.py: remove debug printout which breaks unit tests 2007-09-20 17:02:36 -07:00
Zooko O'Whielacronx
c2e310825d startstop_node.py: improve the hack of launching twistd
Thanks to Brian for helping me figure out the cleaner way to do this: take the 
first result from which("twistd"), and if it has the extension ".bat" or 
".exe" then execute it, else execute python and give it as the first argument.
2007-09-20 12:37:50 -07:00
Brian Warner
e2f19825d9 startstop_node.py: improve test coverage a little bit 2007-09-19 01:50:27 -07:00
Brian Warner
cf69accfb6 startstop_node.py: use SIGINT instead of SIGTERM, to allow the node a chance to clean up 2007-09-17 02:24:21 -07:00
Brian Warner
6cd11037c6 debug: remove the 'dump-share-leases' command, it is subsumed by 'dump-share' 2007-09-17 01:44:39 -07:00
Brian Warner
277e720f7c storage: add version number to share data. Closes #90. 2007-09-04 09:00:24 -07:00
Brian Warner
dbcabc1142 debug: 'dump-uri-extension' command becomes 'dump-share', add 'dump-share-leases'. Both display leases. 2007-09-02 14:48:20 -07:00
Brian Warner
b620d0955b debug.py: add share-overhead size info to dump-uri-extension 2007-08-26 23:42:39 -07:00
Brian Warner
ac358fc32f tahoe_put.py: hush pyflakes by removing unused 'sys' import 2007-08-17 16:29:50 -07:00
Zooko O'Whielacronx
0c22044f7e command-line: remove the --vdrive option (it is now hardcoded to "global") 2007-08-23 13:27:00 -07:00
Zooko O'Whielacronx
9996836d23 command-line: fix ticket #111 by requiring input to be a local file and sending Content-Length header 2007-08-17 14:59:49 -07:00
Zooko O'Whielacronx
594912e334 command-line: fix a few bugs in the "execute this python file" way to execute rm 2007-08-17 14:17:31 -07:00
Brian Warner
3e2d1e28eb tahoe_put-web2ish.py: clean up imports to be pyflakes-compliant, add newline to output 2007-08-16 17:47:52 -07:00
Brian Warner
2014662b47 cli.py: fix typo in synopsis 2007-08-16 17:47:24 -07:00
Zooko O'Whielacronx
a12ef1ae82 command-line: add "rm", and tidy-up variable names, and make it so "allmydata-tahoe spam" prints a usage message instead of returning silently 2007-08-17 13:23:16 -07:00
Zooko O'Whielacronx
e554962ac3 command-line: remove some redundant options checking 2007-08-17 13:06:43 -07:00
Zooko O'Whielacronx
bffd0c97f5 command-line: fix all three commands and all two ways to invoke them to require node-url and give a useful usage string if node-url is absent or of the wrong form 2007-08-17 12:54:47 -07:00
Zooko O'Whielacronx
e4f07a975f tahoe_put.py: don't treat "^HTTP 200 OK" appearing somewhere in the body as if it appeared in the header 2007-08-17 12:06:41 -07:00
Zooko O'Whielacronx
7e8c6eb50b tahoe_put.py: require node-url to be provided 2007-08-17 12:06:11 -07:00
Zooko O'Whielacronx
922663a7e2 cmdline: change "--server" to "--node-url" and make it have no default value 2007-08-16 16:53:27 -07:00
Zooko O'Whielacronx
1564987e6c put now exits after doing its work, and it prints a terse message if 200 or 201, and a full dump of response elsewise 2007-08-16 16:30:39 -07:00
Zooko O'Whielacronx
6ed3a23c62 incomplete version of tahoe-put.py
It doesn't exit properly afterward, and it might not do the best things with non-success responses from the server.
(See tahoe-put-web2ish.py for an example of better response handling.)
2007-08-16 16:01:01 -07:00
Brian Warner
ceef80bee6 scripts: rearrange Options, make --version behave the same for all commands 2007-08-16 12:50:19 -07:00
Zooko O'Whielacronx
6c4fb6fd93 a first crack at the "put" command-line
There are actually two versions in this patch, one of which requires twisted.web2 and the other of which uses the Python standard library's socket module.  The socketish one doesn't know when the web server is done so it hangs after doing its thing.  (Oh -- maybe I should add an HTTP header asking the web server to close the connection when finished.)  The web2ish one works better in that respect.  Neither of them handle error responses from the server very well yet.

After lunch I intend to finish the socketish one.

To try one, mv src/allmydata/scripts/tahoe_put-{socketish,web2ish}.py src/allmydata/scripts/tahoe_put.py .

If you want to try the web2ish one, and you can't find a web2 package to install, you can get one from:

http://allmydata.org/~zooko/repos/twistedweb2snarf/
2007-08-16 12:15:38 -07:00
wilcoxjg
e13783cd6a If do_stop attempts to stop a nonexistent process the OSError exception is caught (by errno) and handled tersely. 2007-08-09 08:57:45 -07:00
Zooko O'Whielacronx
524c9f1fc2 startstop_node now works if the logs directory already exists
Thanks to Arno and Arch for pointing this out.
2007-08-08 21:43:48 -07:00
Brian Warner
2ba415bd3e move nodelogs from BASEDIR/twistd.log* to BASEDIR/logs/twistd.log*, closes #61 2007-07-24 20:44:33 -07:00
Brian Warner
1d9a58977f uri: implement URI-processing classes, IFileURI/IDirnodeURI, use internally 2007-07-21 15:40:36 -07:00
Brian Warner
9be3da03f6 runner.py: make 'allmydata-tahoe --version' emit version numbers of everything 2007-07-16 14:58:36 -07:00
Brian Warner
c6f52e379a rename storageserver.py to just storage.py, since it has both server and client sides now 2007-07-13 17:25:45 -07:00
Brian Warner
4d868e6649 fix dump-uri-extension 2007-07-13 16:58:08 -07:00
Brian Warner
9238c61224 cli: implement 'get' 2007-07-11 10:26:19 -07:00
Zooko O'Whielacronx
32166c360a tahoe_ls: remove a couple of vestigial or debugging bits 2007-07-10 19:46:40 -07:00
Brian Warner
b419b853ea cli: implement 'allmydata-tahoe ls' 2007-07-10 19:37:37 -07:00
Brian Warner
d8a878da86 startstop_node.py: refactor find_twistd() out so it is only run when you need to start a node 2007-07-10 19:13:55 -07:00
Brian Warner
f22801aa33 runner.py: further refactoring 2007-07-10 19:05:18 -07:00
Brian Warner
4a16d20d85 runner.py: start to refactor into separate files 2007-07-10 18:41:52 -07:00
Brian Warner
944583a599 tahoe-ls.py: hush a pyflakes warning 2007-07-10 16:26:05 -07:00
Brian Warner
dec729028f tahoe-ls.py: initial version of an 'ls' CLI utility 2007-07-10 15:34:55 -07:00
Zooko O'Whielacronx
2a4423ba14 tahoe-get.py: fix bug: actually respect the optional server argument 2007-07-09 18:47:16 -07:00
Zooko O'Whielacronx
9bc87f610c tahoe-get.py: add optional target-local-file argument 2007-07-09 18:27:11 -07:00
Zooko O'Whielacronx
9641a6df22 tahoe-get.py: accept vdrive and server options (using optparse) 2007-07-09 18:20:02 -07:00
Zooko O'Whielacronx
8769f2eeba tahoe-get.py: the first, most primitive command-line client 2007-07-09 18:19:53 -07:00
Brian Warner
5fbdce155c runner.py: add --force flag to restart, to restart a not-already-running node 2007-07-07 11:17:32 -07:00
Brian Warner
b11fa20191 merge vdrive.py and filetable.py into a single dirnode.py 2007-06-26 17:16:58 -07:00
Brian Warner
912fc5a77e runner.py: improve test coverage further: implement --quiet with StringIOs 2007-06-26 16:19:18 -07:00
Brian Warner
de24d3cd94 dump_uri_extension: improve test coverage of runner.py 2007-06-26 15:55:00 -07:00
Brian Warner
a505560bbe improve test coverage of runner.py 2007-06-26 15:36:46 -07:00
Brian Warner
fb02488a8e vdrive: switch to URI:DIR and URI:DIR-RO, providing transitive readonlyness 2007-06-25 13:23:51 -07:00
Brian Warner
1cb1faf11d runner.py: add 'dump-directory-node' command 2007-06-15 00:47:05 -07:00
Brian Warner
e0dfedb0a6 add 'allmydata-tahoe dump-uri-extension' utility command 2007-06-11 18:38:21 -07:00
Brian Warner
208a932d10 runner.py: allow --multiple to enable starting/stopping/creating multiple nodes at once 2007-06-06 14:06:57 -07:00
Brian Warner
daa4c32381 runner.py: allow all directory-using commands (create/start/stop) to accept argv[-1] as well as --basedir 2007-06-06 11:37:19 -07:00
Brian Warner
4c7c5df41e runner.py: spoke too soon. Really fix #51 this time. 2007-05-24 11:20:39 -07:00
Brian Warner
d0db98cc40 runner.py: expanduser() basedirs, so '~' works. Closes #51. 2007-05-24 11:10:19 -07:00
Zooko O'Whielacronx
d19d1058e0 extirpate all references the "queen" and "metatracker"
This is a potentially disruptive and potentially ugly change to the code base,
because I renamed the object that serves in both roles from "Queen" to
"IntroducerAndVdrive", which is a bit of an ugly name.

However, I think that clarity is important enough in this release to make this
change.  All unit tests pass.  I'm now darcs recording this patch in order to
pull it to other machines for more testing.
2007-04-30 09:57:52 -07:00
Zooko O'Whielacronx
7b0db1c91f make runner find twistd and invoke it with python
This makes allmydata-tahoe work on Windows, and probably doesn't make it fail on other platforms.
2007-04-26 23:14:13 -07:00
Brian Warner
813fdd70da test_runner.py: improve test coverage a little bit 2007-04-23 21:28:19 -07:00
Brian Warner
d1a848e0a7 runner.py: add --quiet, use it from test cases 2007-04-23 21:17:13 -07:00
Brian Warner
491f96258e test_runner.py: add some coverage for allmydata.scripts.runner, to create nodes 2007-04-19 18:56:45 -07:00
Brian Warner
a3c9ead74f replace 'queen' with 'introducer' in a lot of places, but not all 2007-04-19 17:30:21 -07:00
Brian Warner
3376c2b0a1 node creation: be willing to utilize a pre-existing (but empty) directory 2007-03-29 14:32:28 -07:00
Zooko O'Whielacronx
4b4f5bbcba change #!/usr/bin/python to #!/usr/bin/env python
Note that using "whatever version of python the name 'python' maps to in the current shell environment" is more error-prone that specifying which python you mean, such as by executing "/usr/bin/python setup.py" instead of executing "./setup.py".  When you build tahoe (by running "make") it will make a copy of bin/allmydata-tahoe in instdir/bin/allmydata-tahoe with the shebang line rewritten to execute the specific version of python that was used when building instead of to execute "/usr/bin/env python".

However, it seems better that the default for lazy people be "whatever 'python' means currently" instead of "whatever 'python' meant to the manufacturer of your operating system".
2007-03-29 14:01:28 -07:00
Brian Warner
25ff9e1f97 complete the Introducer changes, separate out vdrive access, make everything work again 2007-03-27 16:12:11 -07:00
Brian Warner
3490378551 move all packages into src/, fix allmydata.Crypto build. Now you must perform a 'setup.py build' before using anything, and you must add the build directory (build/lib.linux-i686-2.4) to your PYTHONPATH before doing anything 2006-12-14 03:39:50 -07:00