HTChirp
Pure Python Chirp client for HTCondor
Installation
The latest release is available on PyPI:
pip install htchirp
However, if HTCondor job sandbox space is a premium, most of HTChirp's
functionality can be accessed from htchirp.py
as a standalone script or module.
Example Usage
There are multiple ways to invoke HTChirp inside a HTCondor job environment.
Using HTChirp inside Python
First, you can use an HTChirp object as part of a larger Python workflow connect to the Chirp server and issue commands:
Using context management (recommended):
>>> import htchirp
>>> with htchirp.HTChirp() as chirp:
>>> chirp.ulog('Logging use of Chirp in Python')
>>> me = chirp.whoami()
>>> chirp.set_job_attr('UsingPythonChirp', 'True')
>>> using_chirp = chirp.get_job_attr('UsingPythonChirp')
>>> me
'CONDOR'
>>> using_chirp
'true'
Using manual connection and disconnection (not recommended):
>>> import htchirp
>>> chirp = htchirp.HTChirp()
>>> chirp.connect()
>>> chirp.write('Important output 1\n', '/tmp/my-job-output', 'cwa')
19
>>> chirp.write('Important output 2\n', '/tmp/my-job-output', 'cwa')
19
>>> chirp.read('/tmp/my-job-output', 1024)
'Important output 1\nImportant output 2\n'
>>> chirp.fetch('/tmp/my-job-output', './my-job-output')
38
>>> chirp.disconnect()
For more information on the available commands, see help(htchirp.HTChirp).
Using HTChirp on the command line
Second, you can use HTChirp on the command line with the same commands
and arguments supported by the
condor_chirp
utility, either by including
htchirp.py with your job or by installing the HTChirp package inside a
virtual environment inside your job.
Using htchirp.py from within the working directory:
$ python htchirp.py ulog "Logging use of Chirp in Python"
$ python htchirp.py whoami
CONDOR
$ python htchirp.py set_job_attr UsingPythonChirp True
$ python htchirp.py get_job_attr UsingPythonChirp
True
Using condor_htchirp after installing HTChirp in an active virtual
environment:
$ condor_htchirp ulog "Logging use of Chirp in Python"
$ condor_htchirp whoami
CONDOR
$ condor_htchirp set_job_attr UsingPythonChirp True
$ condor_htchirp get_job_attr UsingPythonChirp
True
Using python -m htchirp after installing HTChirp in an active
virtual environment:
$ python -m htchirp ulog "Logging use of Chirp in Python"
$ python -m htchirp whoami
CONDOR
$ python -m htchirp set_job_attr UsingPythonChirp True
$ python -m htchirp get_job_attr UsingPythonChirp
True
For a list of commands and arguments, pass --help to your preferred
command line invokation, or see the
condor_chirp man page.
Metadata
Release files for htchirp 3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| htchirp-3.0.tar.gz | 18.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| htchirp-3.0-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 37.0 kB
Release files / htchirp-3.0.tar.gz
| Download URL | htchirp-3.0.tar.gz |
|---|---|
| Size | 18.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e036cbf772c6597e47ddd1bdb4efcd088b64dbd76f6ae4cfe92ba4bad8eb23af
|
|
BLAKE2b-256 checksum How to use checksums |
5e0e83fa678ba98d3f323d5cbc567c990ec1d2bf3f8a14de34b4c1cf6c80d298
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.6
|
Release files / htchirp-3.0-py2.py3-none-any.whl
| Download URL | htchirp-3.0-py2.py3-none-any.whl |
|---|---|
| Size | 18.3 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
5aefcc784a4037490fc74e879756e16b849e6e9658cbb0c3d20edffa65019e0d
|
|
BLAKE2b-256 checksum How to use checksums |
ff8922b880adae452b82a759658f736cb0527ee16201d50ba960f742e199885e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.6
|