<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Fri, Jul 25, 2025 at 11:15 AM Luca Vizzarro <<a href="mailto:luca.vizzarro@arm.com">luca.vizzarro@arm.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Merge the RemoteSession class with SSHSession as there is no current use<br>
of a separate channel other than SSH.<br>
<br>
Signed-off-by: Luca Vizzarro <<a href="mailto:luca.vizzarro@arm.com" target="_blank">luca.vizzarro@arm.com</a>><br>
Reviewed-by: Paul Szczepanek <<a href="mailto:paul.szczepanek@arm.com" target="_blank">paul.szczepanek@arm.com</a>><br>
---<br>
doc/api/dts/framework.remote_session.rst | 1 -<br>
.../framework.remote_session.ssh_session.rst | 8 --<br>
dts/framework/remote_session/__init__.py | 3 +-<br>
.../remote_session/remote_session.py | 110 ++++++++++++-----<br>
dts/framework/remote_session/ssh_session.py | 116 ------------------<br>
5 files changed, 79 insertions(+), 159 deletions(-)<br>
delete mode 100644 doc/api/dts/framework.remote_session.ssh_session.rst<br>
delete mode 100644 dts/framework/remote_session/ssh_session.py<br>
<br>
diff --git a/doc/api/dts/framework.remote_session.rst b/doc/api/dts/framework.remote_session.rst<br>
index 27c9153e64..e4ebd21ab9 100644<br>
--- a/doc/api/dts/framework.remote_session.rst<br>
+++ b/doc/api/dts/framework.remote_session.rst<br>
@@ -12,7 +12,6 @@ remote\_session - Node Connections Package<br>
:maxdepth: 1<br><br>
-class RemoteSession(ABC):<br>
+class RemoteSession:<br>
"""Non-interactive remote session.<br>
<br>
- The abstract methods must be implemented in order to connect to a remote host (node)<br>
- and maintain a remote session.<br>
- The subclasses must use (or implement) some underlying transport protocol (e.g. SSH)<br>
- to implement the methods. On top of that, it provides some basic services common to all<br>
- subclasses, such as keeping history and logging what's being executed on the remote node.<br>
+ The connection is implemented with<br>
+ `the Fabric Python library <<a href="https://docs.fabfile.org/en/latest/" rel="noreferrer" target="_blank">https://docs.fabfile.org/en/latest/</a>>`_.<br>
<br>
Attributes:<br>
name: The name of the session.<br>
@@ -82,6 +94,7 @@ class RemoteSession(ABC):<br>
password: The password used in the connection. Most frequently empty,<br>
as the use of passwords is discouraged.<br></blockquote><div><br></div><div>This isn't really about your patch but at some point we need to decide to remove password support for real, or (re)document it in the DTS documentation so that people can use it if they want. I'm not super keen on us keeping around easter egg code which will break later. :) Something we can chat about at the next DTS meeting.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
history: The executed commands during this session.<br>
+ session: The underlying Fabric SSH session.<br>
"""<br>
<br>
name: str<br>
@@ -91,6 +104,7 @@ class RemoteSession(ABC):<br>
username: str<br>
password: str<br>
history: list[CommandResult]<br>
+ session: Connection<br>
_logger: DTSLogger<br>
_node_config: NodeConfiguration<br><br>
2.43.0<br>
<br></blockquote><div><br></div><div>Happy to see the two classes reduced into just RemoteSession. </div><div><br></div><div>Reviewed-by: Patrick Robb <<a href="mailto:probb@iol.unh.edu">probb@iol.unh.edu</a>> </div></div></div>