Skip to content

A library to execute Python callables as a different user (sudo) or on a remote host (ssh)

License

Notifications You must be signed in to change notification settings

crazyscientist/deliveryboy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DeliveryBoy

DeliveryBoy is a lightweight and transparent intermediary for executing a Python callable in a new Python process such that a developer using this intermediary does not have to care.

The new Python process is started by a transport command yield a wide range of applications, e.g.:

  • Execution as a different user by sudo.
  • Execution on a remote host by ssh.
  • Execution on a HPC cluster by bsub (in case of LSF).

The base assumptions for this implementation are:

  • On the target host a compatible version of Python is installed.
  • On the target host the Python environment contains the deliveryboy package.
  • The Python environment on the source and target hosts are identical (aka. same modules installed).
  • Only the callable, module names for modules in the (virtual) environment and modules from outside the environment need to be transported.

See also the documentation.

State of the project

The simple demonstrator examples are working with Python 3, but not all features have been implemented and tested, yet.

Contributing

Please feel free to contribute by suggesting additional features, fixing bugs or implementing missing features.

Acknowledgement

This project was inspired by:

About

A library to execute Python callables as a different user (sudo) or on a remote host (ssh)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages