[tahoe-dev] tahoemenu.py
Garonda Rodian
deepside at hotmail.com
Mon Oct 14 02:44:07 UTC 2013
A readcap of tahoemenu.py, very experimental, on the public test grid:
URI:CHK:cepazv3y4t6vdzlczb5bqk7pty:jmth4o3qtf6gn4jal2wvwkaj6xhata5xoraccuhju4eqdbkk37wq:3:10:5612
(cumulative space used: ~20KiB post-ZFEC)
To use: Download to the bin directory of your tahoe installation (linux only for now), and execute 'python ./tahoemenu.py'. Follow the menus from there - if you get stuck after rereading the menus once, I need to make it more obvious, so let me know!
At this point, it's linux-only, and has no (zero) input validation. If you type correctly, and it happens to work, it can [create a|read from an existing] Introducer or set up for the public test grid, create one or an entire set of storage nodes (NOTE: At this time, you probably have to select explicit tub and web ports - that's a bug and will be fixed), and you can create non-storage clients one at a time. Creating storage node(s) generates a grid name based start and stop script for the introducer and those nodes.
Anyone interested, please provide feedback on anything and everything, most particularly any factual errors, coding errors, blatant misstatements, lousy python code, lousy python style, lousy global variables (I just want a struct; really!) advice on how to generate SSL certificates for the local web services, advice on how to upgrade to a 1960's vintage mainframe terminal style menu system without adding non-core dependencies, Windows vs. Linux advice, and commentary on how I _should_ be building nodes (as opposed to how I am building them at this time, which is almost certainly wrong).
Thank you to everyone upstream who have put in hours, days, months, and years of effort building the tools I am making such poor use of.
From: deepside at hotmail.com
To: nejucomo at gmail.com
CC: tahoe-dev at tahoe-lafs.org
Subject: RE: [tahoe-dev] tahoemenu.py
Date: Sun, 13 Oct 2013 22:18:21 +0000
I'll work on figuring out one or another public repository soon enough.
At this point, it's a pure-text Python program that uses 1970's vintage personal computer style text menus to allow for quick and easy grid creation - i.e. a "wizard" to walk you through creating your Introducer, your storage nodes, your helper, and your clients, and prevent you from having to hand-edit text files. Future versions will not only let you use the menu the first time, but will also save the results, so you can press the magic repeat button and generate another identical grid configuration.
Essentially:
1) Create Introducer or Read Introducer Furl from existing node
2) Create Storage Node(s)
3) Create Helper (optional)
4) Create Client
While I'm very comfortable hand-editing text files, I want to be able to test bulk setups, and I don't feel like hand-editing 16 or 32 storage nodes, particularly not time after time for transient test rigs (Precise Puppy boot CD's, for example). Further, I'm a complete newbie at this time, so for the next few weeks, I have a good feel for what's not intuitive to me, so I can try and explain it in the menus.
Unless anyone (at all) asks me not to, I'll put up a test grid cap in several hours tp a few days, and work on a repository later, as that will take me a lot longer to figure out - I assume 7-zip is common enough, to save space on the grid? Estimated size at this time is less than 33KiB post-ZFEC.
> From: nejucomo at gmail.com
> Date: Sun, 13 Oct 2013 13:55:16 -0700
> Subject: Re: [tahoe-dev] tahoemenu.py
> To: deepside at hotmail.com
> CC: tahoe-dev at tahoe-lafs.org
>
> I'm interested to see this. It's not clear to me if the menu is an
> extension to the webapi, or a separate "control" process with a GUI
> menu, or something else.
>
> I recommend publishing the code into a public repository. A test grid
> cap is pretty stylish though. ;-)
>
> Nathan / nejucomo
>
> On Wed, Oct 9, 2013 at 10:23 PM, Garonda Rodian <deepside at hotmail.com> wrote:
> > As there had been some interest in a menu for tahoe, I've started picking up
> > a little Python, and have sketched out a very basic proof of concept. At
> > this time, it can create an Introducer, and while it's extremely basic (so
> > as to be able to run on even a Raspberry Pi), I'd like to ask for general
> > comments on how to improve it.
> >
> > First question: How should I share the code with the list? I suppose at a
> > current 6KB, I could simply put it on the test grid and publish a RO cap :).
> >
> > Future work will include both fleshing out the menus, and some method to be
> > determined of saving a session, probably the creation of a python script
> > that simply calls the "do something" functions with the parameters as they
> > were give, so a given setup can be recreated without going through the menus
> > again (i.e. as an automated installer for test grids).
> >
> > Thank you all for your time and assistance!
> >
> > _______________________________________________
> > tahoe-dev mailing list
> > tahoe-dev at tahoe-lafs.org
> > https://tahoe-lafs.org/cgi-bin/mailman/listinfo/tahoe-dev
> >
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://tahoe-lafs.org/pipermail/tahoe-dev/attachments/20131014/35764290/attachment.html>
More information about the tahoe-dev
mailing list