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!

Simple Python VFS module

Project Description

PyVFS is a simple pure Python VFS library. It consists of several layers, allowing to use different low-level protocol implementations. Now you can choose between 9p (9p2000.u) and FUSE (you should have python-py9p or python-fuse installed).

The library has several options to control access to the filesystem, from FUSE restrictions to PKI client authentication in 9p2000 protocol. You can mount your FS with TCP/IP or UNIX sockets, or simply browse it with 9p clients without mounting.

The simplest example. Environment variables:

export PYVFS_PROTO=9p
export PYVFS_ADDRESS=/tmp/socket

Your script:

# import server
from pyvfs.utils import Server
# create it
srv = Server()
# start it in foreground
srv.run()

Client side, 9p + UNIX socket:

$ sudo mount -t 9p -o trans=unix /tmp/socket /mnt

ObjectFS

ObjectFS (pyvfs.objectfs) is a library that allows you to export your Python objects on a dynamic filesystem. ObjectFS integration is extremely simple and engages only the decorator import and usage. The developer should not care about almost any of fs-related issues. Objects of the decorated classes will automatically appear as file trees on a dynamic filesystem with read/write access.

Example. Environment variables:

export PYVFS_PROTO=fuse
export PYVFS_MOUNTPOINT=~/mnt

Your script:

# simply import the library in your code
from pyvfs.objectfs import export
# decorate a class
@export
class MyClass(object):
    some code

Client side (already mounted!):

# ls -l ~/mnt

PyVFS

Also you can write your own applications with PyVFS. E.g., one can utilize file I/O as an RPC interface, or use a dynamic filesystem for runtime service configuration.

More details in the documentation and examples.

Changes

0.2.9 – Mesoarchean

  • unicode literals fixed

0.2.8 – Paleoarchean

  • directory listing fixes

0.2.7 – Eoarchaean

  • support authentication options
  • support setuid, setgid, sticky bits

0.2.6 – Hadean

  • initial pypi release
Release History

Release History

This version
History Node

0.2.9

History Node

0.2.8

History Node

0.2.7

History Node

0.2.6

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
objectfs-0.2.9.tar.gz (28.6 kB) Copy SHA256 Checksum SHA256 Source Jan 3, 2013

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