Skip to main content

A pathlib-derived interface to Openstack Swift

Project description

🐉 Installation

Install from PyPI:

$ pip install swiftpath

🐉 About

Swift Connection

swiftpath will automatically read environment variables to determine how to connect to a swift instance.

Currently, swiftpath looks for the following environment variables when connecting to swift:

  • OS_USER_ID or OS_USERNAME

  • OS_PASSWORD

  • OS_PROJECT_NAME or OS_TENANT_NAME

  • OS_AUTH_URL or OS_AUTHENTICATION_URL

  • OS_STORAGE_URL

  • OS_REGION_NAME

  • OS_PROJECT_ID

Caveats

Note that the following methods are not provided as they are not available on swift:

  • SwiftPath.cwd()

  • SwiftPath.home()

  • SwiftPath.chmod()

  • SwiftPath.expanduser()

  • SwiftPath.lchmod()

  • SwiftPath.group()

  • SwiftPath.is_block_device()

  • SwiftPath.is_char_device()

  • SwiftPath.lstat()

  • SwiftPath.resolve()

🐉 Usage

To construct a path to a swift instance, simply use the syntax /containername/path/to/key when referencing the object. All pathlib.Path methods that are not explicitly excluded are available on the subsequently created object.

>>> from swiftpath import SwiftPath
>>> path = SwiftPath("/mycontainer/my-file.txt")
>>> path.write_text("hello\n")
>>> path.read_text()
hello

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

swiftpath-0.0.1.dev0.tar.gz (38.8 kB view details)

Uploaded Source

Built Distribution

swiftpath-0.0.1.dev0-py2.py3-none-any.whl (17.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file swiftpath-0.0.1.dev0.tar.gz.

File metadata

  • Download URL: swiftpath-0.0.1.dev0.tar.gz
  • Upload date:
  • Size: 38.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.3.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

File hashes

Hashes for swiftpath-0.0.1.dev0.tar.gz
Algorithm Hash digest
SHA256 9980dbb50684ae6bdda19b304b02cd6a3f860809817105710914c91a90917bbf
MD5 ca1e70ca98d3e3b4065d2c1f4cb18958
BLAKE2b-256 2d09fbb6b77ebca5cef8afcbb42f20eda0b0c1ba07bc38a7ed8794d3bf92ac52

See more details on using hashes here.

File details

Details for the file swiftpath-0.0.1.dev0-py2.py3-none-any.whl.

File metadata

  • Download URL: swiftpath-0.0.1.dev0-py2.py3-none-any.whl
  • Upload date:
  • Size: 17.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/47.3.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.3

File hashes

Hashes for swiftpath-0.0.1.dev0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 ae7366e2cda95784c8ace70467060c8c04f614a7eb743ec6742f8cc4d5b3ba81
MD5 65ce452ab366056807f6c67f69ff3bf7
BLAKE2b-256 6605083c7c4336188fba5957d01f97afb2193142c8ec45f34abe273a3818efda

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