Manage persistent ssh tunnels and port forwards.
Portfwd runs a collection of ssh tunnel commands persistently,
each in its own cs.app.svcd <https://pypi.org/project/cs.app.svcd>_ instance
with all the visibility and process control that SvcD brings.
It reads tunnel preconditions from special comments within the ssh config file.
It uses the configuration options from the config file
as the SvcD signature function
thus restarting particular ssh tunnels when their specific configuration changes.
It has an "automatic" mode (the -A option)
which monitors the desired list of tunnels
from statuses expressed via cs.app.flag <https://pypi.org/project/cs.app.flag>_
which allows live addition or removal of tunnels as needed.
Function Condition(portfwd, op, invert, *args)
Factory to construct a condition from a specification.
Class FlagCondition
MRO: _PortfwdCondition
A flag based condition.
Function main(argv=None, environ=None)
Command line main programme.
Class PingCondition
MRO: _PortfwdCondition
A ping based condition.
Class Portfwd
MRO: cs.app.flag.FlaggedMixin
An ssh tunnel built on a SvcD.
Method Portfwd.__init__(self, target, ssh_config=None, conditions=(), test_shcmd=None, trace=False, verbose=False, flags=None)
Initialise the Portfwd.
Parameters:
target: the tunnel name, and also the name of the ssh configuration usedssh_config: ssh configuration file if not the defaultconditions: an iterable ofConditions which must hold before the tunnel is set up; the tunnel also aborts if these cease to holdtest_shcmd: a shell command which must succeed before the tunnel is set up; the tunnel also aborts if this command subsequently failstrace: issue tracing messages; defaultFalseverbose: be verbose; defaultFalseflags: optional preexistingFlagsinstance
Class Portfwds
A collection of Portfwd instances and associated control methods.
Metadata
Release files for cs.app.portfwd 20190602
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| cs.app.portfwd-20190602.tar.gz | 8.1 kB | Without provenance | Details for cs.app.portfwd-20190602.tar.gz |
Release files / cs.app.portfwd-20190602.tar.gz
| Download URL | cs.app.portfwd-20190602.tar.gz |
|---|---|
| Size | 8.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a292854cbbceac2f0b670a99f7e3e91ceec2f1eb8c24680d429b84d642ef73d2
|
|
BLAKE2b-256 checksum How to use checksums |
395083c38e5a1a601367e5783b89c47648e30ebe830f8c69f1873ebe54e71603
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3
|
Security for cs.app.portfwd 20190602
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.