[execnet-dev] Issue #34: Proxyed gateways not working over SSH (hpk42/execnet)

Sebastian Koslowski issues-reply at bitbucket.org
Tue Aug 19 15:31:33 CEST 2014


New issue 34: Proxyed gateways not working over SSH
https://bitbucket.org/hpk42/execnet/issue/34/proxyed-gateways-not-working-over-ssh

Sebastian Koslowski:

I am trying to run the "Simple Proxying" example with a master gw using SSH and get the following exception: 

```
#!python

>>> import execnet
>>> group = execnet.Group()
>>> group.defaultspec = 'popen//via=master'
>>> master = group.makegateway('ssh=localhost//id=master')
>>> master
<Gateway id='master' receive-live, thread model, 0 active channels>
>>> slave = group.makegateway()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3.3/site-packages/execnet/multi.py", line 122, in makegateway
    gw = gateway_bootstrap.bootstrap(proxy_io_master, spec)
  File "/usr/lib/python3.3/site-packages/execnet/gateway_bootstrap.py", line 86, in bootstrap
    bootstrap_popen(io, spec)
  File "/usr/lib/python3.3/site-packages/execnet/gateway_bootstrap.py", line 26, in bootstrap_popen
    s = io.read(1)
  File "/usr/lib/python3.3/site-packages/execnet/gateway_io.py", line 128, in read
    return self.iochan_file.read(nbytes)
  File "/usr/lib/python3.3/site-packages/execnet/gateway_base.py", line 855, in read
    self._buffer = self.channel.receive()
  File "/usr/lib/python3.3/site-packages/execnet/gateway_base.py", line 701, in receive
    raise self._getremoteerror() or EOFError()
execnet.gateway_base.RemoteError: Traceback (most recent call last):
  File "<string>", line 1029, in executetask
  File "<string>", line 1, in do_exec
  File "<remote exec>", line 210, in <module>
  File "<remote exec>", line 167, in serve_proxy_io
  File "<remote exec>", line 91, in create_io
  File "<remote exec>", line 17, in __init__
TypeError: __init__() got an unexpected keyword argument 'execmodel'


```
FYI: If I connect to a master without execnet installed it fails. That's not a problem I guess. I always liked it that execnet only needs be installed locally, though.

```
#!python

>>> slave = group.makegateway()
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "<string>", line 3, in <module>
ImportError: No module named execnet.gateway_base
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3.3/site-packages/execnet/multi.py", line 122, in makegateway
    gw = gateway_bootstrap.bootstrap(proxy_io_master, spec)
  File "/usr/lib/python3.3/site-packages/execnet/gateway_bootstrap.py", line 86, in bootstrap
    bootstrap_popen(io, spec)
  File "/usr/lib/python3.3/site-packages/execnet/gateway_bootstrap.py", line 27, in bootstrap_popen
    assert s == "1".encode('ascii'), repr(s)
AssertionError: ''

```






More information about the execnet-dev mailing list