Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
apssh
- asynchronous parallel sshThis tool leverages the Python asynchronous paradigm and comes with
apssh
command for running remote commands on a bunch of hosts
in parallel, as well as the appull
and appush
commands to perform parallel
copies, that sysadmins might find useful for their routine jobs,SshJob
objects
in conjunction with an asynciojob
's Scheduler
for
orchestrating them.Please refer to http://apssh.readthedocs.io/ for a complete documentation bundle.
nepi-ng
?Originally, the idea presented here addresses the needs of experimental research, where an experiment often boils down to running jobs like preparing a set of nodes, initializing them, running some bash script, collecting results, all of them having temporal relationships.
To that end, the 2 libraries asynciojobs
and apssh
complement each other
to offer a powerful programing environment that we have branded nepi-ng
; its 2 parts are thus:
asynciojobs
asynciojobs
is a microscopic orchestration scheduler for asyncio-based jobs -
see this link for
details.
This is the part that handles the temporal relationships.
apssh
apssh
ships with a few classes that allow you to write jobs in the
asynciojobs
sense, that will actually run on ssh:
SshNode
: describe how to reach a node (possible through a gateway)SshJob
: to run one or several remote commands; each of these can be
Run
: that is designed to run a command readily available on the target
nodeRunScript
: when you have a local script file to run remotely, so there is
a need to push it over there prior to running itRunString
: same idea, but you do not even have a local file, it's just a
python string in memory; useful to embed your shell code inside a python
codePull
or Push
for file transfers over SFTPAs the names may suggest:
SshNode
instance contains the details of the target node (hostname,
username, gateway if relevant, etc...), and it can be thought of as an ssh
connection;SshJob
, is suitable to run as asynciojobs's
jobs, i.e. inside a scheduler;SshJob
instance contains a list of the actual commands to run, that can
be a mix of remote executions and file transfers.You can see a very simple example of that idea implemented in 2 files
Another, simpler example, illustrates how to take advantage of the YAML loader, see
my-first-nepi-ng-script
folder in
<https://github.com/fit-r2lab/demosdemo-v1.py
and demo-v2.py
that
implement the exact same behaviour but that use
FAQs
Asynchroneous Parallel ssh
We found that apssh demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.