New connector for Plone to local filesystem, S3, WebDAV storage

Some shameless self-promotion for my new add-on xmldirector.connector.

is a complete rewrite (in progress) of my former XML Director add-on.

The rewrite focuses on

  • compatibility with Plone 5.2
  • compatibility with Python 3 (and Python 2.7 for the time being)
  • compatibility with newest PyFilesystem 2 stack

Functionality:

  • mount a local filesystem, a S3 bucket or a storage over WebDAV (BaseX, Seafile, ExistDB, Alfresco) into Plone

  • traverse into the mounted storage using URL traversal

  • view and download content from a mounted storage - either raw or using syntax highlighting

  • upcoming: create/delete/upload operation on a mounted storage

  • a storage can be configured globally or individually as part of a mountpoint configuration

  • no support for indexing content from a mounted storage (never going to happen)

Compatibility:

Screencast:

https://public.zopyx.com/xmldirector.connector.mp4

Code:

Forget the xmldirector namespace of the package name...there is nothing XML related inside the package, I just want to preserve the namespace due to branding issues of my own publishing stack.

2 Likes

Very cool! Any concern about multiple simultaneous connections/downloads?

Please rephrase your question

There is first release which works with Plone 5.1/5.2 (Python and Python 3) with support for WebDAV storage, local FS, S3 (tested).

List of all available drivers:

I was even able to list and access the contents of my media server through Plone using the DLNA driver.

Could there be a potential load or blocking issue related to the number of simultaneous connections versus ZEO clients?

The content is returned as a stream iterator.
So no difference from standard Zope/Plone.
Not sure about the behavior of stream iterators under WSGI.