exec_command of ssh client errors when tests are run from OS X
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
tempest |
Fix Released
|
Undecided
|
Daryl Walleck |
Bug Description
When running tests that perform remote validation (tempest.
2015-07-31 15:00:06,131 4748 INFO [tempest_
2015-07-31 15:00:06,225 4748 INFO [paramiko.
2015-07-31 15:00:06,765 4748 INFO [paramiko.
2015-07-31 15:00:06,783 4748 INFO [tempest_
}}}
Traceback (most recent call last):
File "/Users/
self.
File "/Users/
output = self.exec_
File "/Users/
return self.ssh_
File "/Users/
poll = select.poll()
AttributeError: 'module' object has no attribute 'poll'
This occurs because the poll method is not implemented for all operating systems (https:/
- The client could raise a more clear exception that directly explains that this is a Linux only capability
- Provide a different implementation to be used when tests are not run on the Linux platform
It seems like there should be other implementations of this functionality that would not be platform specific, which would allow Tempest to be run by a larger audience. I've worked on other implementations of remote/ssh clients, so I wouldn't mind taking on this task if this was an acceptable option.
Changed in tempest: | |
status: | Fix Committed → Fix Released |
I agree that it would be nice to *not* rely on select.poll() especially because this is in Tempest-lib and we would like this library to be adopted broadly.
On the other hand, people running tempest from an OS X host seems in minority, so let's not add tons of code just to not use poll.
I guess it all depends on how 'complicated' the change would be.