FUSE File System for accessing remote servers
A FUSE file system for mounting remote file servers as local directories. Currently, we support Microsoft SharePoint sites.
Installation
pip install remote-fuse
Configuration
The following environment variables need to be set:
TENANT_ID: Azure AD tenant IDCLIENT_ID: Azure AD client/application IDCLIENT_SECRET: Azure AD client secretSITE_ID: SharePoint site ID
Running
# Mount remote cloud storage
remote-fuse <mounting-point>
# Optionally, you can add `--site-id <site-id` as an argument to the command.
# Unomunt when finished
fusermount -uqz <mount-point>
Development
# Install dependencies
python -m venv .venv
source .venv/bin/activate
# Install dependencies
pip install -e .
# For development/testing
pip install -e ".[test]"
Requirements
- FUSE implementation (libfuse2 on Ubuntu, macFUSE on macOS)
Usage
# Mount SharePoint site as local directory
python src/commands/fuse_sharepoint.py <mount-point> [--site-id optional]
# Unomunt SharePoint site when finished
fusermount -uqz <mount-point>
# Run tests
pytest
Overview of the project
src/remote_fuse/core.py: Implements Fuse interface and by invoking API calls to remote servicesrc/remote_fuse/sharepoint.py: Implements the interface to present SharePoint as a local filesystemsrc/commands/fuse_sharepoint.py: Mounts SharePoint site as local directory
python-fuse documentation
Currently, python-fuse only supports Linux. There is no easy way to stop the process once started, it doesn't react to signals, however, it will stop if you unmount it. https://github.com/libfuse/python-fuse/blob/master/README.new_fusepy_api.rst
Metadata
Release files for remote-fuse 0.1.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| remote_fuse-0.1.6.tar.gz | 17.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| remote_fuse-0.1.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 33.5 kB
Release files / remote_fuse-0.1.6.tar.gz
| Download URL | remote_fuse-0.1.6.tar.gz |
|---|---|
| Size | 17.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0e5e21df0eda9b2cbe5e96514a87097fb8d910b39e1f3583d3266975b7f2e983
|
|
BLAKE2b-256 checksum How to use checksums |
8dd0bf92f09bcd62d47bffcbf2c4b26b08c765e3a951f4d1e374e40e891e15f3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.0
|
Release files / remote_fuse-0.1.6-py3-none-any.whl
| Download URL | remote_fuse-0.1.6-py3-none-any.whl |
|---|---|
| Size | 16.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1789f172bd6181073fe1a2b468bd124aac86d8c7d2ffbe64946a325cf558dadf
|
|
BLAKE2b-256 checksum How to use checksums |
9ca98f18319d151ec110ff56128fd606afc37d7a4418b637651789ec704e15e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.9.0
|