Skip to content

Commit d027f50

Browse files
committed
ssh: switch from parallel-ssh to ansible-pylibssh
Unfortunately, parallel-ssh has become a dead project incompatible with python-3.12+. Some effort was created by its community to make it compatible, unfortunately the only maintainer with write access is unresponsive and there is not much hope for a new release. Therefore we switch to ansible-pylibssh, which provides low level libssh python bindings. There is significant performance impact in artificial test case ("running 'exit 0' over and over again is twice as slow) due to differences in poll implementation, however the impact is neglitable in real world scenarios (~20 seconds delay on 350 test cases). This small slowdown also provides a huge benefit in very small CPU usage 0-1% where parallel-ssh keeps spinning on 10-11%.
1 parent 8b6420a commit d027f50

File tree

3 files changed

+237
-113
lines changed

3 files changed

+237
-113
lines changed

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ files = ["requirements.txt"]
3535
source = "vcs"
3636

3737
[[tool.mypy.overrides]]
38-
module = ["pssh.*", "pytest_output.*"]
38+
module = ["pylibsshext.*", "pytest_output.*"]
3939
ignore_missing_imports = true
4040

4141
[tool.isort]

0 commit comments

Comments
 (0)