Skip to main content

XRootDPyFS is a PyFilesystem interface to XRootD.

Project description

https://travis-ci.org/inveniosoftware/xrootdpyfs.svg?branch=master https://coveralls.io/repos/inveniosoftware/xrootdpyfs/badge.svg?branch=master https://pypip.in/v/xrootdpyfs/badge.svg

XRootDPyFS is a PyFilesystem interface to XRootD.

Getting started

If you just want to try out the library, the easiest is to use Docker.

$ docker build -t xrootd .
$ docker run -h xrootdpyfs -it xrootd bash

Next, start a XRootD server in the container and fire up an ipython shell:

[xrootdpyfs@xrootdpyfs code]$ xrootd -b -l /dev/null
[xrootdpyfs@xrootdpyfs code]$ ipython

Quick examples

Here is a quick example of a file listing with the xrootd PyFilesystem integration:

>>> from xrootdpyfs import XRootDPyFS
>>> fs = XRootDPyFS("root://localhost//tmp/")
>>> fs.listdir("xrootdpyfs")
['test.txt']

Or, alternatively using the PyFilesystem opener (note the first import xrootdpyfs is required to ensure the XRootDPyFS opener is registered):

>>> import xrootdpyfs
>>> from fs.opener import opener
>>> fs, path = opener.parse("root://localhost//tmp/")
>>> fs.listdir("xrootdpyfs")
[u'test.txt']

Reading files:

>>> f = fs.open("xrootdpyfs/test.txt")
>>> f.read()
'Welcome to xrootdpyfs!'
>>> f.close()

Reading files using the getcontents() method:

>>> fs.getcontents("xrootdpyfs/test.txt")
'Welcome to xrootdpyfs!'

Writing files:

>>> f = fs.open("xrootdpyfs/hello.txt", "w+")
>>> f.write("World")
>>> f.close()

Writing files using the setcontents() method:

>>> fs.setcontents("xrootdpyfs/test.txt", "World")

Documentation

Documentation is available at <http://pythonhosted.org/xrootdpyfs/> or can be build using Sphinx:

pip install Sphinx
python setup.py build_sphinx

Testing

Running the tests are most easily done using docker:

$ docker build -t xrootd . && docker run -h xrootdpyfs -it xrootd

Project details


Download files

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

Source Distribution

xrootdpyfs-0.1.3.tar.gz (35.7 kB view details)

Uploaded Source

Built Distribution

xrootdpyfs-0.1.3-py2-none-any.whl (21.0 kB view details)

Uploaded Python 2

File details

Details for the file xrootdpyfs-0.1.3.tar.gz.

File metadata

  • Download URL: xrootdpyfs-0.1.3.tar.gz
  • Upload date:
  • Size: 35.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for xrootdpyfs-0.1.3.tar.gz
Algorithm Hash digest
SHA256 2cfa235217d97af1bbbe52da1a1beb6f020dc4a9b757aa6f309ba19fad0ac87d
MD5 2e70e48704d6d2135b4dda6527147c98
BLAKE2b-256 bd12e2c3a1aad70e3dfd18aeb0b5d17fc74eeea2c060d70b545e4d471349f16f

See more details on using hashes here.

File details

Details for the file xrootdpyfs-0.1.3-py2-none-any.whl.

File metadata

File hashes

Hashes for xrootdpyfs-0.1.3-py2-none-any.whl
Algorithm Hash digest
SHA256 8e3f996b4f517b2c48c0f9ef917a84d19dc863b515a144f8f697c83999e8fe1e
MD5 6b1d37e3fa879580a44b3b6eb1e6673d
BLAKE2b-256 f037786ec948ee7afef6d864fb2eba0bc1b18bce7ab6b58d1f9439768f48fc4a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page