Description¶
Paths¶
Servers have collections of roots, used to abstract away the location of files. Most methods take a path argument, which can take three forms:
- Starting with a /: An absolute path, not relative to root.
- Containing a /: The root is up to the first slash, and the remaining is a subpath.
- Not containing a /: Just a root directory.
Available Servers¶
Abstract Servers
- DiskServer: A server with a unique ID and a collection of named file root directories.
- SizelessServer (DiskServer): The main top-level server class, able to transfer data and run commands. Does not monitor or limit data usage (hence, “sizeless”).
- SizelessConnectableServer (SizelessServer): A server that has a protocol for connecting to it.
- SizelessLinuxServer (SizelessConnectableServer): A standard Linux server, with everything except run_command implemented.
- ParamikoServer (SizelessLinuxServer): A server connected through ssh, using the Paramiko interface. The self.session variable needs to be set in the connect method before these functions will work.
Concrete Servers
- LocalServer (SizelessServer): A server representing the local machine, using python commands.
- LoginServer (ParamikoServer): A server using a Paramiko ssh connection, with a normal password login.