This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Open-like interface to globus remotes

Project Description

Open-like context managers for remote globus files.

glopen(filename, mode, endpoint):

  1. Creates a temporary file
  2. [On a read mode:] Transfers the remote file to the temporary file
  3. Opens the temporary file with the given mode
  4. Yields the open temporary file
  5. Closes the temporary file
  6. [On a write mode:] Transfers the temporary file to the remote file
  7. 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"
}
Release History

Release History

This version
History Node

0.0.12

History Node

0.0.11

History Node

0.0.10

History Node

0.0.9

History Node

0.0.8

History Node

0.0.7

History Node

0.0.6

History Node

0.0.5

History Node

0.0.4

History Node

0.0.3

History Node

0.0.2

History Node

0.0.1

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
glopen-0.0.12.tar.gz (3.9 kB) Copy SHA256 Checksum SHA256 Source Apr 14, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting