glopen
Open-like context managers for remote globus files.
glopen(filename, mode, endpoint):
Creates a temporary file
[On a read mode:] Transfers the remote file to the temporary file
Opens the temporary file with the given mode
Yields the open temporary file
Closes the temporary file
[On a write mode:] Transfers the temporary file to the remote file
Deletes the temporary file
glopen_many(filenames, mode, endpoint) takes a list of filenames and yeilds a list of open files. The remote copies are grouped into a single globus transfer, improving performance for small files.
Example
>>> from glopen import glopen
>>> with glopen("path/to/remote/file.anything", mode="r",
endpoint="globusid#endpoint") as f:
... lines = f.readlines()
>>> from glopen import glopen_many
>>> files = ["file1", "file2", "file3"]
>>> with glopen_many(files, mode="w", endpoint="globusid#endpoint") as fs:
... for f,d in zip(fs,d):
... f.write(d)
Install
glopen is on the Python Package Index (PyPI):
pip install glopen
It depends on globussh, a light-weight wrapper around the globus SSH interface. Your local machine must be a globus endpoint, so you can either run Globus connect personal or Globus connect server.
Configuration
glopen transfers files to and from a temporary directory on your local machine, so it needs to know the machine’s endpoint name and a directory that globus can access. You tell glopen the endpoint and temporary directory in a ~/.glopen config file:
{
"local_endpoint" : "<globusid>#<endpoint_name>",
"tempdir" : "/home/<username>/tmp"
}
Metadata
Release files for glopen 0.0.12
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 | |
|---|---|---|---|---|
| glopen-0.0.12.tar.gz | 3.9 kB | Without provenance | Details |
Release files / glopen-0.0.12.tar.gz
| Download URL | glopen-0.0.12.tar.gz |
|---|---|
| Size | 3.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cf946d170b37cfd30d8afdf5ce8b202eab1b6e7cae16210e6957cb838d7579a0
|
|
BLAKE2b-256 checksum How to use checksums |
c5f5a49806625bd9550ea21280021339a55c3c39d8ae5c494035602b48a8f08f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for glopen 0.0.12
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.