xmldirector.connector supports mounting storages like S3, Webdav backend or local filesystem into Plone
Project description
xmldirector.connector
xmldirector.connector integrates Plone 5 with
local filesystem
WebDAV-backed backend
AWS S3
remote servers over SFTP/SSH
xmldirector.connector provides a Connector content-type that mounts a particular storage into Plone.
No support for indexing and search mounted content.
Requirements
Plone 5.2 with Python 3.6 or higher (tested)
Supported backends:
eXist-db
Base-X
OwnCloud
Alfresco
Marklogic Server
AWS S3
Cloud federation services
Otixo.com
Storagemadeeasy.com
Configuration
Goto the Plone control panel and click on the XML-Director Connector configlet and configure the your service
ExistDB
webdav://localhost:6080/existdb/webdav/db
username and password required to access your XML database over WebDAV
BaseX
webdav://localhost:8984/webdav
username and password required to access your XML database over WebDAV
Owncloud
webdav://hostname:port/remote.php/webdav
username and password required to access your Owncloud instance over WebDAV
Alfresco
webdav://hostname:port/webdav
username and password required to access your Alfresco instance over WebDAV
Local filesystem
file:///path/to/some/directory
no support for credentials, the referenced filesystem must be readable (and writable)
AWS S3
s3://bucketname
enter your AWS access key as username and the AWS secret key as password (You need to install the Python package fs-s3fs through buildout).
SSH/SFTP
ssh://hostname.com or sftp://hostname.com (You need to install the Python package fs.sshfs through buildout).
API notes
The implementation of xmldirector.connector is heavily backed by the PyFilesystem 2 API. Every Connector instance in Plone gives you access to the mounted storage through the handle = connector.get_handle() call which is instance of fs.base.FS. Check https://docs.pyfilesystem.org for details.
Security
The mounted storage gives you access to all contents inside the mounted subtree. The mounted filesystem is sandboxed (https://docs.pyfilesystem.org/en/latest/concepts.html#sandboxing). So you can not escape and access content outside the mounted storage.
Available drivers
Connectivity with other backend is accomplished through dedicated driverse that implementation the API layer between PyFilesystem 2 and the related backend. See https://www.pyfilesystem.org/page/index-of-filesystems/ for all available drivers.
License
This package is published under the GNU Public License V2 (GPL 2)
Source code
Bugtracker
Changelog
0.3.1 (2020-11-24)
uninstall profile added
fix for mod_dav issue when sorting entries (issue #64)
0.3.0 (2020-11-04)
minor cleanup
removed Python 2 support
removed defusedxml dependency
0.2.9 (2020-05-04)
added @@connector-zip-export functionality
0.2.8 (2020-03-01)
fix for content-disposition header
0.2.5 (2020-02-05)
removed Python 3 support
0.2.4 (2019-07-24)
Python 3 fix
0.2.3 (2019-07-20)
fixed redirection upon remove
0.2.2 (2019-07-20)
import fix for nested zip files
updated to fs 2.4.8
0.2.1 (2019-03-04)
restored Python 2.7 compatibility
Travis tests for Python 2.7
0.2 (2019-02-20)
various fixes
various XML related backports
0.1 (2018-12-14)
initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.