[Twisted-Python] potential connectSSH workflow
glyph at divmod.com
glyph at divmod.com
Thu Jul 26 16:13:51 EDT 2007
On 05:49 pm, paulswartz at gmail.com wrote:
>I've written up a potential workflow for connectSSH, a simplified way
>of using Twisted Conch. It's available at
>http://z3p.jot.com/WikiHome/SummerOfCode2007/connectSSH. If those who
>are interested could take a look, I'd love some feedback.
Thanks a lot! Here are my initial impressions:
The bundle of crud that lives in ~/.ssh should be represented as an
object. connectSSH should really be a method on that object, so that
things like host key verification can happen as normal and expected.
This is especially true because that object can have references to other
objects, such as the (Deferred-returning) UI for authorizing or denying
an unexpected host key. That object could also be more easily tested
because the reactor could be an attribute of it rather than a global
import. Unfortunately there's a lot of code in Twisted that doesn't do
this yet, but we should be building better use of that singleton. See
http://glyf.livejournal.com/70684.html
(On a tangent, this is similar to the fact that in the next-generation
HTTP API, there should be a "browser" object for indirecting the
reactor, but also for persisting cookies, HTTP authorization headers,
and the like. A free function for doing a connectSSH is lame for many
of the same reasons that getPage() is lame.)
This also looks like an excellent use-case for endpoints. Please see
this ticket:
http://twistedmatrix.com/trac/ticket/1442
and see if you have any feedback there.
What do you think?
More information about the Twisted-Python
mailing list